2次元グラフィックス


まず簡単なグラフを書かせてみましょう. sin x^2 のグラフを x が -π から π の範囲でプロットします.

In[21]:=
Plot[ Sin[x^2], {x,-Pi,Pi} ]
Out[21]=
-Graphics-
Plotにはさまざまなオプションを指定できます. たとえば図の縦横比を1対1にするには,AspectRatioオプションを Automaticと指定します.

In[22]:=
Plot[ Sin[x^2], {x,-Pi,Pi}, AspectRatio->Automatic ]
Out[22]=
-Graphics-
どのようなオプションが指定できるかは,??Plot により表示されます. ためしに色々なオプションを指定してみましょう.

In[23]:=
Plot[ Sin[x^2], {x,-Pi,Pi},
		Axes->None,                      (* 軸を消す *)
		Frame->True,                     (* 枠を付ける *)
		FrameLabel->{"x","sin(x^2)"},    (* ラベルを付ける *)
		GridLines->Automatic,            (* グリッドを付ける *)
		PlotStyle->{{Thickness[0.03]}}   (* 線の太さの指定 *)
]
Out[23]=
-Graphics-
その他,以下のようなプロットが利用できます.
離散データのプロット
ListPlot, MultipleListPlot (Graphics`MultipleListPlot`パッケージ)
パラメータ表示の関数のプロット
ParametricPlot
極座標表示の関数のプロット
PolarPlot (Graphics`Graphics`パッケージ)
陰関数のプロット
ImplicitPlot (Graphics`ImplicitPlot`パッケージ)
棒グラフやパイチャート
BarChart, PieChart (Graphics`Graphics`パッケージ)
実は Mathematica では,任意の2次元図形を表示することが簡単にできます. 例えば,なつかしいスマイル・バッジ(でしたっけ?)を書いてみましょう.

In[24]:=
Show[Graphics[{
		Circle[{0,0}, 1],
		Disk[{0.2,0.1}, {0.05,0.1}],
		Disk[{-0.2,0.1}, {0.05,0.1}],
		Circle[{0,0}, 0.7, {-0.85Pi,-0.15Pi}] }],
	 AspectRatio->Automatic ]
Out[24]=
-Graphics-
Circle[{x, y}, r] は,中心が(x,y),直径rの円を描きます. Circle[{x, y}, {rx, ry}] ならば楕円を, Circle[{x, y}, r, {θ1, θ2}] ならば 角θ1からθ2の間の弧を描きます. DiskCircleと同様ですが,中を塗りつぶします. CircleDiskのほかには,直線を描くLine,点を描くPoint, 多角形を描くPolygon,塗りつぶされた矩形を描くRectangle, テキストを描くTextなどがあります. また,直線の太さを指定するThickness,点線を指定するDashing, 点の大きさを指定するPointSize, グレーレベルを指定するGrayLevelなども利用できます.

スマイル・バッジをたくさん書いてみましょう. スマイル・バッジの中心座標と大きさを指定できる関数を定義して, それを使って大きさの異なる三つのスマイルを並べます.

In[25]:=
smiley[xy_:{0,0}, r_:1] := {
	Circle[xy, r],
	Disk[xy+{ 0.2,0.1}r, {0.05,0.1}r],
	Disk[xy+{-0.2,0.1}r, {0.05,0.1}r],
	Circle[xy, 0.7r, {-0.85Pi,-0.15Pi}]
};
In[26]:=
Show[ Graphics[
	Table[smiley[{i^2,0},i], {i,3}] ],
	AspectRatio->Automatic ]
Out[26]=
-Graphics-

最初に戻る 前へ 次へ
Dept. CS / Faculty of Eng. / Kobe Univ. / Naoyuki Tamura / tamura@kobe-u.ac.jp