我已使用以下代码绘制了条形图:
dffinal['CI-noCI']='Cognitive Impairement'
nocidffinal['CI-noCI']='Non Cognitive Impairement'
res=pd.concat([dffinal,nocidffinal])
sns.barplot(x='6month',y='final-formula',data=res,hue='CI-noCI')
plt.xticks(fontsize=8, rotation=45)
plt.show()
结果如下:
我想将它们的颜色更改为红色和绿色。 我能怎么做? 就像信息一样,该图正在读取两个不同的数据帧。
我所经历的链接与该数据帧只是一个数据帧的情况有关,因此不适用于我的情况。
谢谢:)
答案 0 :(得分:0)
您可以使用matplotlib覆盖Seaborn的默认颜色循环,以确保其使用的色调是红色和绿色。
import matplotlib.pyplot as plt
plt.rcParams['axes.prop_cycle'] = ("cycler('color', 'rg')")
示例:
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
df = pd.DataFrame({'date': [1,2,3,4,4,5],
'value': [10,15,35,14,18,4],
'hue_v': [1,1,2,1,2,2]})
# The normal seaborn coloring is blue and orange
sns.barplot(x='date', y='value', data=df, hue='hue_v')
# Now change the color cycling and re-make the same plot:
plt.rcParams['axes.prop_cycle'] = ("cycler('color', 'rg')")
sns.barplot(x='date', y='value', data=df, hue='hue_v')
现在这将影响您创建的所有其他图形,因此,如果要恢复所有其他图的默认设置,则需要执行以下操作:
sns.reset_orig()