我遇到了python的问题...
我想要绘制一堆积分;另外我想连续改变点的颜色。例如:
x = range(10)
y = range(10)
plot(x,y,'.')
第一个点是深蓝色,第二个点有点淡,等等...... 作为第一步,我尝试将不同的灰度传递给函数,但是引发了错误“无法将字符串转换为浮点数”......传递了什么样的变量?我该如何避免错误?
for i in range(10):
plot(x,y,'i*0,1')
提前感谢您帮助我。我在网上找不到任何东西,但我觉得这对很多人来说都很方便......
答案 0 :(得分:1)
尝试使用scatter
而不是plot
:
x = range(10)
y = range(10)
plt.scatter(x,y,s=60,c=x,cmap=plt.get_cmap('seismic'))
c
关键字参数指定应将哪些值映射到颜色。我刚刚在这里使用了x值,但你可以使用相同长度的任何数组。 cmap
关键字参数指定如何将值映射到颜色。您可以在此处查看其他一些色彩映射:http://matplotlib.org/examples/color/colormaps_reference.html
您也可以使用不同的色彩映射:
plt.scatter(x,y,s=60,c=x,cmap=plt.get_cmap('spectrum'))