gpt4 book ai didi

python - 在 pandas df.plot 中设置颜色图限制

转载 作者:行者123 更新时间:2023-11-28 16:37:37 27 4
gpt4 key购买 nike

我有一个绘制线条和表格的数据框。颜色图设置为 Purples_r,从紫色变为白色。您如何限制颜色图,使出现的最亮颜色不是白色,而是更浅的紫色?

fig, ax = plt.subplots(1, 1)
ax.get_xaxis().set_visible(False)
df.plot(marker='o', colormap='Purples_r', table=np.round(df.T, 2), ax=ax)

我试着关注 Setting matplotlib colorbar range ,但是没有成功。

请注意,我使用的是 pandas 0.14。

最佳答案

这可以通过获取颜色图的 segmentdata 并将自定义颜色图限制在较窄的颜色范围内来完成:

In [30]:

from matplotlib import colors
from matplotlib import cm
D={item: cm.Purples_r._segmentdata[item][3:-3] for item in ['blue', 'green', 'red']}
#only use the middle range of color
for item in ['blue', 'green', 'red']:
seg=np.linspace(0,1,len(D[item]))
for i in range(len(D[item])):
D[item][i]=(seg[i],D[item][i][1],D[item][i][2])
In [31]:

New_cm = colors.LinearSegmentedColormap('New_cm', D)
df=pd.DataFrame(np.random.random((5,5)))
In [32]:

fig, ax = plt.subplots(1, 1)
ax.get_xaxis().set_visible(False)
df.plot(marker='o', colormap=cm.Purples_r, ax=ax)
plt.title('Original Purples_r')
plt.savefig('1.png')

enter image description here

In [33]:

fig, ax = plt.subplots(1, 1)
ax.get_xaxis().set_visible(False)
df.plot(marker='o', colormap=New_cm, ax=ax)
plt.title('Limited Purples_r')
plt.savefig('2.png')

enter image description here

关于python - 在 pandas df.plot 中设置颜色图限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23764588/

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