matplotlib documentation详细解释如何规范化 pcolormesh 的颜色图,但如何正确地对散点图进行规范化?
normalize = mcolors.Normalize(vmin=-1, vmax=1)
plt.scatter(x,y,z,cmap=colormap(normalize),marker='*',s=5)
不起作用(TypeError:无法根据规则“安全”将数组数据从 dtype('O') 转换为 dtype('int64')
)
只是 z 数据并不完全从 -1 到 1,我正在绘制多个数据集,这些数据集的限制在 +/- 0.93 - 98 左右,但我希望颜色以零为中心并从 -1 开始到 1,这样我对所有不同的数据集都有相同的引用。
哦,当我不尝试规范化时,我得到 TypeError: scatter() got multiple values for keyword argument 's'
。显然我不知道如何在散点图中使用颜色图。
最佳答案
您使用的语法与链接文档中的语法完全不同。标准化散点图或 pcolor(网格)或任何其他标量可映射对象之间基本上没有区别。
一直都是
colormap = plt.cm.bwr #or any other colormap
normalize = matplotlib.colors.Normalize(vmin=-1, vmax=1)
plt.scatter(x, y, c=z, s=5, cmap=colormap, norm=normalize, marker='*')
关于python - 如何在 matplotlib 散点图中标准化颜色图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43132300/