我正在 MatPlotLib 中创建一个散点图,我试图使点的颜色依赖于第三个参数(独立于 X 和 Y)。但是,设置 c=third_variable 会使所有点的颜色相同。
我的绘图数据在一个字典中,以 x 和 y 数据元组作为键,第三个参数(频率,范围从 1 到大约 1000)作为其值。示例项目:{[2 10]: 50}
我想要与频率相关的点的颜色。作为起点,我想使高频点更暗,低频点更亮。
for key in pairs_hash:
plt.scatter(key[0], key[1], c=pairs_hash[key], cmap=plt.cm.coolwarm)
plt.show()
谢谢您的帮助!
我猜你的主要错误设计选择是一次绘制循环中的点。为什么不一次绘制它们呢?
xy, z = zip(*pairs_hash.items())
x, y = zip(*xy)
plt.scatter(x, y, c=z, cmap=plt.cm.coolwarm)
plt.show()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句