Python 3.x 如何将颜色附加到pandas barh绘图中的特定值?
我目前正在使用colormap为pandas数据框中的堆叠条形图着色。问题是,我想绘制多个图。(见图) 现在,colormap使用每个数据集的最小值和最大值来指定颜色。我想通过以下方式改变这一点:Python 3.x 如何将颜色附加到pandas barh绘图中的特定值?,python-3.x,pandas,plot,colors,colormap,Python 3.x,Pandas,Plot,Colors,Colormap,我目前正在使用colormap为pandas数据框中的堆叠条形图着色。问题是,我想绘制多个图。(见图) 现在,colormap使用每个数据集的最小值和最大值来指定颜色。我想通过以下方式改变这一点: 相同的颜色应始终表示相同的值(即使最小值不同) 理想情况下,我希望只指定一次,而不是每次创建新绘图时都指定它们 有没有办法从颜色贴图中获取颜色并将其附加到特定值 前面的几个问题涉及一个非常类似的主题,例如: 然而,我发现的问题中没有一个是关于barplots的 这是我的密码: import p
- 相同的颜色应始终表示相同的值(即使最小值不同)
- 理想情况下,我希望只指定一次,而不是每次创建新绘图时都指定它们
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({'DN': [20, 25, 32, 40, 50],
'Fall 1': [200, 300, 450, 200, 80],
'Fall 2': [250, 250, 450, 210, 70],
'Fall 3': [300, 200, 350, 310, 70]})
gesamtlaenge = 200 + 300 + 450 + 200 + 80
df = df.set_index('DN')
df = df.transpose()
# Skalierung auf Maximum:
df = df.divide(gesamtlaenge, axis=0)
df = df.multiply(100, axis=0)
f, b = plt.subplots(figsize=(9, 6))
ax = df.plot(ax=f.gca(),
title='titel',
kind='barh', stacked=True,
colormap='summer_r',
edgecolor='black',
fontsize=14)
ax.legend(loc='center left', bbox_to_anchor=(1, 0.5), fontsize=14)
ax.set_xlabel('Anteil in %', fontsize=14)
ax.set_title('title', fontsize=14)
f.tight_layout()
f.subplots_adjust(right=0.8)
plt.show()
我使用的第二个数据帧:
df = pd.DataFrame({'DN': [25, 32, 40, 50],
'Fall 1': [300, 450, 200, 80],
'Fall 2': [250, 500, 210, 70],
'Fall 3': [200, 350, 310, 170]})