gpt4 book ai didi

python - 如何使用 matplotlib 的 set_cmap()?

转载 作者:太空狗 更新时间:2023-10-30 00:55:33 24 4
gpt4 key购买 nike

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(-np.pi,np.pi,101)
y=np.sin(x)+np.sin(3*x)/3
y1=np.sin(x)+np.sin(2*x)/3
y2=np.sin(x)+np.sin(3*x)/2

plt.set_cmap('hot')

plt.plot(x,y)
plt.plot(x,y1)
plt.plot(x,y2)
plt.show()

我想在我的绘图中尝试不同的颜色图,但命令 plt.set_cmap('hot') 不起作用,即颜色与标准调色板 (http://i.stack.imgur.com/FjXoO.png) 中的颜色相同

我在 Debian Linux 下使用 WXAgg 后端,在 Enthought 的 Canopy 中使用 matplotlib。我尝试了 Qt4Agg 后端,结果是一样的。如何正确改变颜色?

最佳答案

plt.set_cmap将设置 colormap例如,在图像图中使用。由于您只是在绘制线条,因此不会影响您的绘图。

使用 plt.plot 绘图时你可以提供一个color将选择线条颜色的关键字参数,如下所示。

# ... 
plt.plot(x,y, color='black')
plt.plot(x,y1, color='pink')
plt.plot(x,y2, color='green')
plt.show()

或者,您可以使用 ax.set_color_cycle() 设置新的颜色循环,它允许您选择在添加新图时颜色将如何变化,并有效地创建与以前相同的图形。参见 here用于演示。

# ...    
plt.gca().set_color_cycle(['black', 'pink', 'green'])

plt.plot(x,y)
plt.plot(x,y1)
plt.plot(x,y2)
plt.show()

最后,如果您想从现有颜色图中获取颜色列表,则可以使用以下代码使它们线性间隔开。颜色图本身由 matplotlib.pyplot.cm.<your_colormap_here> 给出。 .通过传递 0 和 1 之间的 10 个等距数字作为参数,您将获得 10 种等距颜色。

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(-np.pi,np.pi,101)
y=np.sin(x)+np.sin(3*x)/3
y1=np.sin(x)+np.sin(2*x)/3
y2=np.sin(x)+np.sin(3*x)/2

colors = plt.cm.hot(np.linspace(0,1,10))
plt.gca().set_color_cycle(colors)

plt.plot(x,y)
plt.plot(x,y1)
plt.plot(x,y2)
plt.show()

Example plot

关于python - 如何使用 matplotlib 的 set_cmap()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27299577/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com