python - 如何使用 matplotlib 绘制这张图片?
问题描述
我想使用网格来实现这一点。但是,我在颜色填充和坐标轴方面遇到了很多问题。我参考了matplotlib官方文档中与此图像非常接近的示例 (<a href="https://matplotlib.org/gallery/api/image_zcoord. html#sphx-glr-gallery-api-image-zcoord-py" rel="nofollow noreferrer">链接),但还是有点不同。
是我的错,图片太大,很难快速实现。所以我选择了原图的一部分,这里:</p>
解决方案
尝试绘制自定义热图。例如
from matplotlib import colors
import matplotlib.pyplot as plt
import numpy as np
cmap = colors.ListedColormap(['cyan','gray','white','yellow'])
bounds=[0, 10, 20, 30, 40]
norm = colors.BoundaryNorm(bounds, cmap.N)
data=np.array([[5,15,5],[25,32,6],[15,31,25]])
heatmap = plt.pcolor(data, cmap=cmap, norm=norm)
plt.show()
0-10之间的值将给出青色,10-20将给出灰色,依此类推。因此,使您的数据数组符合要求。
结果 :
推荐阅读
- list - Prolog中类似于Transpose的谓词的实现
- python - 何时在 Python 中使用线程本地内存?
- android - 拦截 ConnectivityManger requestNetwork 新对话框上的取消按钮按下,API 29
- html - div 如何在网格布局中保持其最小高度?
- sftp - pscp 可以传输到临时文件并在完成后重命名吗?
- javascript - 如何从反应的下拉列表中获取价值?
- mysql - 带有secure_file_priv问题的MySQL数据导入
- javascript - 在 React JS 中显示 Firebase 数组对象的问题
- php - 使用 OpenSSL 的 EC 公钥加密
- reactjs - AgGrid 未填充所有列