tkinterのcanvasを使って図形(四角、丸、線、三角)を描く
■はじめに
前回はmatplotlibでグラフを書く方法を紹介しました。
ところでこのブログでも何度も紹介しているTkinterにもcanvasという図形を描ける機能があります。part2~3くらいで紹介する予定ですが、canvasを使うと簡単なアニメーションも作ることができます、非常に便利な機能です。
そこで今回、第1回目としてcanvasの概要と簡単な書き方を紹介します。
■コード
実行すると以下の画像が表示されます。
■買って良かったもの紹介
今回紹介したmatplotlib以外にもpandasやBokehなどのモジュールの使い方が書かれている本です。
公式リファレンス等もありますし、ネットで探せばいくらでもモジュールの使い方・書き方は見つかりますが、一冊くらいこのような本を手元に持っておくと便利です。
■説明
まず図形を描くには、図形を描くキャンバスを作らないといけません。
それが次になります。
次にcanvasの上に図形を描いていきます。
1行目のsquareですが、create_rectangle(5,5,30,30,fill='red')の5,5は四角形の左上の角の座標、30,30は四角形の右下の角の座標になります。
2行目のcircleは、左上の角の座標(40,5)から右下の角の座標(65,30)で描かれる四角形に内接する円を書きます。
例えば確認のために、次のように座標情報が同じ四角と円を描くと以下の画面が現れます。
以上より、円が四角の内接円であることが分かります。
3行目のlineは同様に、始点と終点の座標を表しています。
4行目のpolygon=canvas.create_polygon(125,5,110,35,140,35)#三角
については三角形の各頂点の座標「(125,5)(110,35)(140,35)」を表しています。ここで座標を5つ、6つなど設定すれば、5角形や6角形などの多角形も描くことができます。
■おわりに
いかがだったでしょうか。次回は図形を動かす方法を紹介します。