# GeoGebra 繪圖技巧:反比函數 > 作者:王一哲 日期:2018/11/20 我們在〈[Matplotlib 繪圖技巧:在同一張圖上繪製兩個函數、兩張圖並列](https://hackmd.io/s/Bkd0EMyCm)〉中使用 Matplotlib 繪製反比及平方反比的函數圖形,但如果想要在函數的曲線上,沿著 x 軸方向每隔一段固定的距離畫一個點,再標示出對應的 y 軸數值,使用 Matplotlib 會有一點複雜。如果改用 GeoGebra 會比較簡單一點,成果如下圖,這個檔案的 GeoGebra 網頁版連結為 https://ggbm.at/p4hzbuza <img height="80%" width="80%" src="https://i.imgur.com/43vvAbC.png" style="display: block; margin-left: auto; margin-right: auto;"/> <div style="text-align:center">反比函數圖形</div> <br></br> ## 繪圖步驟 請在 GeoGebra 軟體下方的輸入框中依序輸入以下的指令,輸入一行指令後要記得按 Enter 執行指令,全部執行完畢之後再隱藏不需要顯示的物件。 1. 建立函數 $f(x) = 1 / x,~x \geq 0.01$。 ```cpp f(x) = If(x >= 0.01, 1 / x) ``` 2. 畫10個點 (1, 1/1)、(2, 1/2)、(3, 1/3)、……、(10, 1/10),再將這些點指定給 points。 ```cpp points = Sequence(Point({i, f(i)}), i, 1, 10) ``` 3. 將 points 當中的每個點對 x 軸畫一條垂直線,再將這些線指定給 vers。 ```cpp vers = Sequence(PerpendicularLine(Element(points, i), xAxis), i, 1, 10) ``` 4. 畫出 vers 當中的每條線和 x 軸的交點,再將這些點指定給 xs。 ```cpp xs = Sequence(Intersect(Element(vers, i), xAxis), i, 1, 10) ``` 5. 將 points 和 xs 當中的點依序取出,畫兩點間的線段,再將這些線段指定給 ver。 ```cpp ver = Sequence(Segment(Element(points, i), Element(xs, i)), i, 1, 10) ``` 6. 將 points 當中的每個點對 y 軸畫一條垂直線,再將這些線指定給 hors。 ```cpp hors = Sequence(PerpendicularLine(Element(points, i), yAxis), i, 1, 10) ``` 7. 畫出 hors 當中的每條線和 y 軸的交點,再將這些點指定給 ys。 ```cpp ys = Sequence(Intersect(Element(hors, i), yAxis), i, 1, 10) ``` 8. 將 points 和 ys 當中的點依序取出,畫兩點間的線段,再將這些線段指定給 hor。 ```cpp hor = Sequence(Segment(Element(points, i), Element(ys, i)), i, 1, 10) ``` <br></br> ## 應用 我們可以用同樣的方法畫出其它的函數圖形,只要修改 f(x) 的定義即可。下圖為平方反比的函數圖形,我們可以看到當 x 的數值越大時,應的 y 軸數值很下降很快。但如果只看到這條曲線時,我們很難判斷它是反比還是平方反比的圖形,我們將兩種函數圖形畫在同一張圖上,同學們可以比較看看。 <img height="80%" width="80%" src="https://i.imgur.com/eiIEUkM.png" style="display: block; margin-left: auto; margin-right: auto;"/> <div style="text-align:center">平方反比函數圖形</div> <br></br> <img height="80%" width="80%" src="https://i.imgur.com/jSy2IoG.png" style="display: block; margin-left: auto; margin-right: auto;"/> <div style="text-align:center">反比(藍色線條)與平方反比(綠色線條)函數圖形比較</div> <br></br> ## GeoGebra 官方說明書 1. 條件判斷 If: https://wiki.geogebra.org/en/If 2. 迴圈 Sequence: https://wiki.geogebra.org/en/Sequence_Command 3. 點 Point: https://wiki.geogebra.org/en/Point 4. 垂直線 PerpendicularLine: https://wiki.geogebra.org/en/PerpendicularLine 5. 元素 Element: https://wiki.geogebra.org/en/Element 6. 交點 Intersect: https://wiki.geogebra.org/en/Intersect_Command 7. 線段 Segment: https://wiki.geogebra.org/en/Segment_Command <br></br> --- ###### tags:`GeoGebra`