참고링크 : http://webspace.ship.edu/msrenault/tutorial/Tutorial%207%20-%20Incorporating%20JavaScript.html

 

적분을 사용하여 특정 함수에 따른 면적을 표현 할 때 막대 그래프를 사용하느데요

 

오늘은 지오지브라를 사용하여 막대그래프를 표현하는 방법에 대해 설명하려 합니다.

 

지오지브라에서는 막대그래프[] 라는 명령어를 사용하기도 하고 BarChart[] 라는 명령어를 사용하기도 합니다.

 

매뉴얼의 한글화가 완벽하지 않아서 매뉴얼을 참조할때는 영어로 참조하는게 더 편리하더군요. 아래 매뉴얼 참조바랍니다.

 

http://wiki.geogebra.org/en/BarChart_Command

 

위 매뉴얼에 나와 있듯이 BarChart 는 다양한 형태로 사용할 수 있습니다.

 

  1. List 데이터와 list 빈도를 사용할 수 있습니다. 제일 마지막에 막대그래프의 폭을 설정 할 수가 있는데 이는 옵션 입니다.

Ex ) BarChart[{10, 11, 12, 13, 14}, {5, 8, 12, 0, 1},1]

  1. Raw 데이터와 막대그래프의 폭을 설정 할 수 있습니다. 아래 예에서는 막대그래프의 폭을 1로 설정했습니다.

Ex ) BarChart[ {1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 5, 5, 5, 5}, 1]

  1. 막대그래프의 시작 끝 지점과 각 높이의 list 를 사용하여 막대 그래프를 그릴 수 있습니다.

 

막대그래프의 결과는 막대그래프의 면적이 나오게 됩니다.

 

제일 위에 적은 참고링크의 예를 사용하여 막대그래프를 그려보고 함수의 면적을 한번 구해 보도록 합니다.

 

단계는 다음과 같습니다.

 

f(x) = sin(2 x) - (1/10) x² + 3


a = 1


b = 7


n 값은 편의를 위해 슬라이더로 만듭니다.


 

dx = (b - a)/n


rightpoints = Sequence[ f(a + i dx), i, 1, n ] OR rightpoints = 수열[f(a + i dx), i, 1, n]


rightsum = BarChart[ a, b, rightpoints ] OR rightsum = 막대그래프[a, b, rightpoints]


 

위 과정을 거쳐 나온 그래프는 다음과 같습니다.

 

위에서 만든 슬라이더를 에니메이션을 해보면~ 막대그래프의 폭이 좁아지면서 적분의 원리를 이해 할 수 있을 겁니다.



 


오늘은 지오지브라를 사용하여 정삼각형 두 개로 외접원 그리기에 대해 소개하려 합니다

 

1. 일단 정삼각형 두 개를 그립니다.

 

2. 작은 정삼각형의 E 지점과 큰 정삼각형의 B 지점의 연장선을 그리고 선분 AD 와의 교점을 G 라 합니다.

 

3. 작은 정삼각형의 크기를 JC 축을 기준으로 작거나 크게 해 보시면 큰 삼각형 ABC 의 외접하는 호를 그리는 것을 확인 할 수 있습니다.

 

4. 같은 방법으로 다른 두개의 모서리에 대해 작은 삼각형을 위치시키고 위 과정을 반복하면 아래 그림에서 점선으로 표시한 원이 완성 됩니다.


파일 첨부합니다. 

정삼각형두개로외접원그리기.ggb

 

정삼각형 두개를 사용한 원 작도에서 중요한 점은 바로 각 AGC 가 항상 60 도가 된다는 겁니다. 즉 원주각이 된다는 겁니다.

 


 


오늘은 우리가 흔히 알고 있는 정삼각형을 지오지브라를 이용해 작도 해 보겠습니다.


아래 포스팅에 소개해 드렸듯이 현재 저는 지오지브라 3D 버전을 사용하고 있습니다.


2013/11/09 - [유틸] - Geogebra 3D 버전 설치 방법

 

정 삼각형을 작도하는 순서는 다음과 같습니다.

 

1 두 개의 중점을 잡는다.

2 두 개의 중점을 기준으로 원을 그린다.

3 두 원의 교점을 찍는다.

4 세개의 점을 선분으로 이어서 삼각형을 그리면 정삼각형이 된다.

 

 

지오지브라 파일도 올려 봅니다.


정삼각형.ggb

 

사실 정삼각형은 그냥 3변의 길이가 같은 세 각의 크기가 60도로 같은 삼각형이다 라고 알고 있으면 되긴 하지만 아래 그림의 EFGH로 구성되는 부분의 면적을 구하는 문제 같은 경우 위에 설명한 정삼각형의 작도법을 알고 있다면 적분을 사용하지 않고도 좀 더 쉽게 면적을 구할 수 있습니다.


EFGH면적.ggb

 

 


아래 포스팅에서도 지오지브라에 대해 소개해 드린적이 있는데요.

 

지오지브라는 설치형 뿐만 아니라 구글 크롬과 같은 브라우져에서도 동작 가능하더군요.

 

크롬에 설치하는 방법은 도구 → 확장 프로그램 → 더 많은 확장 프로그램 다운로드(페이지 맨 아래) 에 들어가서 아래 그림과 같이 지오지브라로 검색을 합니다. 현재는 4.2 버전인데, 아래를 보니 4.4 beta 버전도 있더군요. 일단 저는 현재 버전인 4.2 버전을 설치했습니다. 아래 그림에서는 설치를 한 후의 모습인데 설치를 안하면 아래 beta 버전에서 처럼 + 무료라고 표시가 됩니다. + 무료라는 버튼을 클릭하면 설치가 됩니다.

 

설치 후에는 다음 그림과 같이 애플리케이션에 들어있게 됩니다. Geogebra 를 클릭해서 실행 합니다.

 

 

첨에 들어가면 다음 그림과 같이 영어로 나올텐데, Options → Language → Korean을 선택하면 한글로 바뀝니다. 그리고 구글 드라이브를 사용하시는 분들은 아래 네모 칸 친 부분의 구글 드라이브에 로긴하면 구글 드라이브에 저장하거나 구글 드라이브에 있는 파일을 불러 올 수도 있습니다.

 

설치를 했으니 간단하게 그래프 하나 그리고 끝내야죠~

 

지난 포스팅에 이어 예쁜 Cardioids 그래프 하나 그려 볼까요~ 


2013/11/05 - [수학] - 지오지브라 극좌표 그래프 그리기 Rose Curves


Cardioids 식은 다음과 같습니다.

r(x) = a (1 - cos(x)), vary a by using a slider  

지오지브라는 직교 좌표계이니깐, 극좌표를 직교좌표계로 변환하는 방법만 알면 비교적 쉽게 그릴수가 있더군요.

 

r(x) 를 그리는 방법은 다음과 같습니다.

 

  • 변수 a 를 슬라이더로 정의 한다.
  • 극좌표계 식 r(x)를 정의 한다. r(x) 그래프를 보이지 않게 한다.
  • 극좌표계를 직교 좌표계로 변환하기 위해 x 축은 cos(t)*r(t), y 축은 sin(t)*r(t) 로 하여 curve 를 그려준다. 여기서 변수 t 는 각도를 의미함 

Curve[r(t)*cos(t), r(t)*sin(t), t, 0, 2 pi]  

위 수식에서 세번째 인자 t 는 변화하는 각도를 의미 0, 2 pi 는 각도가 2 pi 까지 변화하는 것을 의미

 

그려 보니 다음과 같은 결과가 나오더군요. 하트같기도 하고~ 옆으로 보면 토마토를 그려놓은 것 같기고 하고 암튼 예쁘네요~

Cardioids

 

구글 드라이브에 로긴이 된 상태라면 파일→ 다른 이름으로 저장을 누르고~ 구글 드라이브에 저장 할 수도 있고, .ggb(지오지브라) 파일로 컴퓨터에 저장도 가능하고~ 지오지브라튜브에도 올릴 수 있습니다.



지오지브라에서 극좌표 그래프 그리는 방법에 대해 설명 드리려 합니다.

 

지오지브라에서 극좌표 그리는 방법은 아래 주소글을 참조했습니다.

 

http://web.psjaisd.us/auston.cron/ABCronPortal/GeoGebraMenu/GeogebraFiles/studentConstructions/polarGraphs/constructPolarGraph04.html


위 주소에 있는 예제 함수들 중에 아래 주식의 Rose Curves를 하나 그려 볼까 합니다.

r(x) = a sin(b x), vary a and b by using a sliders, x is angle

 

지오지브라는 직교 좌표계이니깐, 극좌표를 직교좌표계로 변환하는 방법만 알면 비교적 쉽게 그릴수가 있더군요.

  

r(x) 를 그리는 방법은 다음과 같습니다.


1. 변수 a, b 를 슬라이더로 정의 한다.


2. 극좌표계 식 r(x)를 정의 한다. r(x) 그래프를 보이지 않게 한다.


3. 극좌표계를 직교 좌표계로 변환하기 위해 x 축은 cos(t)*r(t), y 축은 sin(t)*r(t) 로 하여 curve 를 그려준다. 여기서 변수 t 는 각도를 의미함


 

Curve[r(t)*cos(t), r(t)*sin(t), t, 0, 16 pi]


위 수식에서 세번째 인자 t 는 변화하는 각도를 의미 0, 16 pi 는 각도가 16 pi 까지 변화하는 것을 의미

 

그려 보니 다음과 같은 결과가 나오더군요.


 

그럼 한번 그려볼까요~




  1. dedd 2014.07.19 18:50

    r(x) a'sin(bx)라고 하면 알수없는 명령:r 이라고 뜨는데......

    • 남성 2014.07.19 20:34 신고

      보시다 시피 r(x)= a*sin(b*x) 라고 정의 한겁니다.

  2. dedd 2014.07.20 23:51

    감사합니다~

아래 포스팅에서 간단하게 지오지브라에 대해 소개 드린적이 있는데요.

 

 

2012/08/13 - [유틸] - 오픈소스 수학 프로그램 지오지브라(GeoGebra)



위 포스팅을 하고 시간이 좀 지나서 그런지 그 동안에 많은 부분이 발전한 것 같네요.

 

사용도 굉장히 편리해 진 것 같구요.

 

오늘 네이버 지식인을 보다가 간단하게 지오지브라 관련 답변을 달면서 이런 내용은 많은 학생들이 보고 배웠으면 좋겠다는 생각이 들더군요.

 

그래서 동영상으로도 만들어 봤는데.. 아직 마이크가 구비가 안되서 설명은 못 넣었습니다.

 

뭐 설명은 안 듣더라도 너무 쉬운 내용이라 동영상만 봐도 알 수 있는 내용이라는 생각이 드네요.

 

일단 지오지브라 설치 방법부터 다시 설명 드리는게 좋을 것 같네요.

 

프로그램 다운로드는 아래 주소에서 가능 하구요~

http://www.geogebra.org/cms/ko/download/

 

 

다음 그림과 같이 자신의 OS 에 맞는 설치 파일을 다운로드 받아서 설치하시면 됩니다.

 

저는 윈도우에서 설치를 진행해 봤는데요~ 이상하게 문제가 있어서 아래 주소에서 포터블 버전을 다운로드 받았습니다.


http://www.geogebra.org/cms/ko/portable

 

 

각자 OS 에 맞게 다운로드 한 후에 압축 해제 하고~ GeoGebra.exe 파일을 실행시켜주면 바로 사용 가능합니다.

 

동영상에서는 아래 수식에 대해 교점을 구해 봤는데요~ 클릭 몇 번에 교점이 척척~~ 구해지니… 참 재미있더군요.

 

x2+y2=2

15x2/ 2 + 4xy=16




학생들이 수학 공부하는데~ 많이 이용되었으면 좋겠네요~

 

저희 때는 정말 모눈 종이에 그려보고 했던 것 같은데…ㅋㅋㅋㅋ 참 좋은 세상이네요!!



 


학생들 중에는 수학에 대해 굉장히 힘들어하는 경우가 많은데요~


어떻게 보면 수학이 굉장히 추상적이어서 그럴지도 모른다는 생각을 많이 합니다. 


수학 기호들만 봐서는 이게 무슨 의미인지 쉽게 상상이 안되거든요.


하지만 그래프를 그려보고 계산 몇번 하다보면 어떤 과목 보다도 헷갈리지 않고 재미있는게 수학이라는 과목입니다. 


제가 어렸을때는 컴퓨터가 그리 보편적이지 않아서 수학 프로그램을 이용한 교육 같은건 생각도 안해봤는데~ 


요즘은 컴퓨터가 워낙 좋아지고 발달해서 수학 프로그램을 이용하면 학생들이 좀더 쉽게 수학을 익힐수 있지 않을까 하는 생각을 많이 합니다. 


수학 관련한 프로그램들은 많지만~ 


그 중에서 오늘 소개하는 지오지브라는 교육용으로 사용하기에도 굉장히 편리하다는 생각이 듭니다. 


프로그램은 아래 주소에서 다운로드 가능합니다. 


http://www.geogebra.org/cms/ko/download



초등학생을 위한 지오지브라 버전인 지오지브라프림도 있으니깐 초등학생 분들이나 관련 교육자 분들은 사용해 보시면 좋을것 같네요~ 


webstart 를 클릭하면 지오지브라가 다운로드 됩니다. 


프로그램은 이렇게 매우 심플하게 생겼습니다. 그런데 생각보다 매우 파워풀 하더군요. 




기초적인 사용법에 대한 동영상이 다음과 같이 유투브에 있더군요. 





위 동영상은 y=mx+b 라는 일차 방정식을 그리는 예제인데요~ 


굉장히 직관적이고 잼나더군요. 


저도 비슷하게 한번 해봤습니다. 





금방 쉽게 따라하실수 있고~ 재미있기도 하네요~ 


이런 툴들이 많이 나왔으면 좋겠네요. 



+ Recent posts