中身がどんなのかをすぐに確かめたい2次元データが手元にあるとき、pythonで予め以下のような関数を作成しておけば、そのデータを一瞬で図に起こすことができる。
図の細かい設定は気にしない、とにかく手軽さを求めたい人向け。
quick.py
def draw(data,cb_min,cb_max): #cb_min,cb_max:カラーバーの下端と上端の値
import numpy as np
import matplotlib.pyplot as plt
X,Y=np.meshgrid(np.arange(data.shape[1]),np.arange(data.shape[0]))
plt.figure(figsize=(10,4)) #図の縦横比を指定する
div=20.0 #図を描くのに何色用いるか
delta=(cb_max-cb_min)/div
interval=np.arange(cb_min,abs(cb_max)*2+delta,delta)[0:int(div)+1]
plt.contourf(X,Y,data,interval)
plt.show()
これで、
In[10]: import quick
In[11]: quick.draw(data,-2,32)
と実行すると、numpyで作成された2次元配列の中身を、カラーコンターの図で出力してくれる。
(例:1月の全球の海面水温分布)
図の向きを調整したいとき
図を左右反転させたいとき
In[12]: quick.draw(data[:,::-1],-2,32)
図を上下反転させたいとき
In[12]: quick.draw(data[::-1,:],-2,32)
図を90度回転させたいとき
In[12]: quick.draw(data[:,::-1].transpose(),-2,32)
左右反転させてから転置する
図を180度回転させたいとき
In[12]: quick.draw(data[::-1,:][:,::-1],-2,32)
上下反転させてから左右反転させる