- 複数のグラフのプロット
fig, figInds = plt.subplots(nrows=2, ncols=2) figInds[0,0].plot(xxx) figInds[0,0].set_title('xxx') figInds[0,1].plot(yyy) figInds[0,1].set_title('yyy') figInds[1,0].plot(zzz) figInds[1,0].set_title('zzz') figInds[1,1].plot(www) figInds[1,1].set_title('www') plt.savefig('path') plt.show()
- ファイル一覧の取得
>>> import os >>> files = os.listdir('label_2') >>> for file in files: >>> print(file) 000000.txt 000001.txt ... 007478.txt 007480.txt
- パスの結合
>>> import os >>> filePath = os.path.join('label_2',files[0]) >>> print(filePath) 'label_2\\000000.txt'
- csvファイルの読み込み(区切り文字がスペースで、ヘッダーが無い場合)
>>> df = pd.read_csv(filePath,header=None, sep=' ') >>> df >>> df 0 1 2 3 4 5 6 7 8 9 \ 0 Truck 0.0 0 -1.57 599.41 156.40 629.75 189.25 2.85 2.63 1 Car 0.0 0 1.85 387.63 181.54 423.81 203.12 1.67 1.87 2 Cyclist 0.0 3 -1.65 676.60 163.95 688.98 193.93 1.86 0.60 3 DontCare -1.0 -1 -10.00 503.89 169.71 590.61 190.13 -1.00 -1.00 4 DontCare -1.0 -1 -10.00 511.35 174.96 527.81 187.45 -1.00 -1.00 5 DontCare -1.0 -1 -10.00 532.37 176.35 542.68 185.27 -1.00 -1.00 6 DontCare -1.0 -1 -10.00 559.62 175.83 575.40 183.15 -1.00 -1.00 10 11 12 13 14 0 12.34 0.47 1.49 69.44 -1.56 1 3.69 -16.53 2.39 58.49 1.57 2 2.02 4.59 1.32 45.84 -1.55 3 -1.00 -1000.00 -1000.00 -1000.00 -10.00 4 -1.00 -1000.00 -1000.00 -1000.00 -10.00 5 -1.00 -1000.00 -1000.00 -1000.00 -10.00 6 -1.00 -1000.00 -1000.00 -1000.00 -10.00 >>>
# -*- coding: utf-8 -*-
- Python2系でdumpしたファイルを3系でloadする
「UnicodeDecodeError: 'ascii' codec can't decode byte 0xc0 in position 7: ordinal not in range(128)」
のようなエラーがでる場合は、encodingを指定する
>>> import pickle >>> with open("anchors.pkl","rb") as fp: anchors_ = pickle.load(fp,encoding='latin1') anchors2_ = pickle.load(fp,encoding='latin1')
- 長方形のプロット
import matplotlib.pyplot as plt import matplotlib.patches as patches fig = plt.figure() ax = plt.axes() r = patches.Rectangle(xy=(3,4), width=30, height=40, ec='#ff0000', fill=False) ax.add_patch(r) plt.axis('scaled') ax.set_aspect('equal') plt.show()