Open2

【Python】身についたことをメモしていく

SiganAISiganAI

プログラム実行中にコマンドを自動実行

subprocessモジュールを使う.
例えば,ある処理の実行後,保存したファイルを確認する必要があるときに,保存先のディレクトリをGUIで開いてくれるようにしたい.
以下の例では,save_pathのディレクトリをGUIで開いてくれる.
※デバッグ中は確認後に閉じないとウィンドウが毎回増えていってしまうため,注意が必要.
※繰り返しの内部での実行は危険.

python
import subprocess
save_path = '****/***/'
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
subprocess.run(['xdg-open', save_path])
SiganAISiganAI

matplotlib:円の描き方と図の重ね合わせ方

matplotlibでの円の描画方法と描画した図の重ね合わせ方のまとめ.
円はmatplotlibpatchesを使う.
重ね合わせは,引数zorderを使う.(数字の大きい方が前面に来る)

python
import matplotlib.pyplot as plt
import matplotlib.patches as patches

fig = plt.figure()
ax = fig.axes()
#半径の設定
radius1 = 10
redius2 = 5
#描画する円の定義
c1 =  patches.Circle(xy=(0, 0), radius=radius1, fc='black', zorder=1)
c2 =  patches.Circle(xy=(0, 0), radius=radius2, fc='red', zorder=2)
#円の描画
ax.add_patch(c1)
ax.add_patch(c2)

plt.show()

上のコードは,半径10の黒い円の上に半径5の赤い円を原点中心に描画できる(はず).