[英]Color 2D Grid with values from separate 2D array
我有兩個數據數組,x和y。 我想在散點圖y與x上作圖。 x的范圍是[0,3],y的范圍是[-3,3]。 然后,我想將此區域網格化為n×m的網格,並基於單獨的2D numpy數組的值(與網格相同的形狀,n×m)對每個區域中的點着色。 因此,應該根據colorarr [0] [0]的值對圖的左上角的網格單元進行着色。 有人對此有任何建議嗎? 我到目前為止發現的最接近的是:
不幸的是,這只是顯示了色差,而不是我想可視化的2D區域。
謝謝!
我認為您想要的是二維直方圖。 Matplotlib.pyplot使此操作非常容易。
import numpy as np
import matplotlib.pyplot as plt
# Make some points
npoints = 500
x = np.random.uniform(low=0, high=3, size=npoints)
y = np.random.uniform(low=-3, high=3, size=npoints)
# Make the plot
plt.hist2d(x, y)
plt.colorbar()
plt.show()
您可以從剛才的顏色陣列通過設置做到這一點extent
和aspect
的關鍵字imshow
import matplotlib as plt
import numpy as np
zval = np.random.rand(100, 100)
plt.imshow(zvals, extent=[0,3,-3,3], aspect="auto")
plt.show()
您得到的是zval
數組,僅“壓縮”在[0:3, -3:3]
范圍內。 只需在imshow
繪制zval
數組即可說服自己。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.