2 回答
TA贡献1862条经验 获得超6个赞
这是一个使用的示例seaborn:
生成样本数据:
pip install seaborn # for those who have not yet installed seaborn
---
AND
---
import seaborn as sns
def func(x, y):
return np.exp(-x**2-y**2)
xaxis = np.linspace(-1, 1, 100)
yaxis = np.linspace(-1, 1, 200)
result = func(xaxis[:,None], yaxis[None,:])
绘图:
sns.heatmap(result, cmap=sns.color_palette("Spectral_r", as_cmap=True))
plt.yticks([],[])
plt.xticks([],[])
结果:
TA贡献1804条经验 获得超8个赞
类似的事情吗?
from matplotlib.pylab import plt
a = [[1,7,13,3,4],
[6,21,32,11,2]]
plt.matshow(a, cmap=plt.cm.viridis)
plt.colorbar()
您可以传递大型数组,例如图像。在这里,我使用 matplotlib 中的示例图像,剪切颜色以获得 (120, 560) 而不是 (120, 560, 3) 数组,然后显示它:
from matplotlib.pylab import plt
from matplotlib.cbook import get_sample_data
fn = get_sample_data("logo2.png", asfileobj=False)
img = plt.imread(fn, format='png')[...,0] #get single color channel
plt.matshow(img,cmap=plt.cm.jet,interpolation='bicubic')#see imshow for more arguments
plt.colorbar()
如果我没记错的话 plt.matshow 是 plt.imshow 的子类
添加回答
举报