python - 当 alpha 不是 1 时,Pyplot pcolormesh 感到困惑

标签 python matplotlib

我在使用 pyplot 出色的绘图功能时遇到了一些困难。我选择了我自己的颜色图

n = 6
map = matplotlib.cm.get_cmap('Dark2')
cmap = colors.ListedColormap([(0,0,0,0)] + [[map(i * 1.0 / n)[j] for j in range(3)] + [0.2] for i in range(1, n + 1)])

这基本上只是 Dark2 颜色图,离散化为 n 个(在我的例子中是 6 个)值,零值映射到纯白色。然而,主要区别在于我的自定义颜色图的 alpha 值设置为 0.2,而不是默认的 1

问题是当我用它来绘制一些东西时,比如

plt.pcolormesh(np.random.rand(10,10), cmap = cmapInv)

结果是这样的:

Result

这看起来不错,但您可以清楚地看到每个框周围都有一个与框颜色相同但 alpha 设置为 1.

编辑:正如评论中所建议的,这些边界的原因可能是框之间的重叠。

有没有办法清理它?

最佳答案

同时,作为一个小的变通方法,我发现您可以通过弄乱 edgecolorlinewidth 属性来使图像更接近您想要的图像。例如,对 pcolormesh 使用以下输入:

    plt.pcolormesh(np.random.rand(10,10), cmap = cmapInv, edgecolor=(1.0, 1.0, 1.0, 0.3), linewidth=0.0015625)

输出如下图:

enter image description here

关于python - 当 alpha 不是 1 时,Pyplot pcolormesh 感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20678817/

相关文章:

python - MatPlotlib Seaborn 多图格式化

python - 覆盖seaborn regplot 和 swarmplot

python - `save_count`参数动画matplotlib ``

python - AWS Sagemaker : Which function/code is required in entry_point file for a prediction when you upload your own, 本地训练的 SKlearn 模型 tarball?

降序排列的 Python 日志文件

python - 在Python中的不同条件下匹配具有相同名称的子组

python - 使用Docker执行多个python脚本

python - 如何按列分组,并计算单独列中的值(Pandas)

python - Matplotlib:imshow 中的 set_data 对绘图没有影响

python - 如何关闭所有 pyplot 窗口(包括以前脚本执行的窗口)?