import numpy as np, matplotlib.pyplot as plt, seaborn as sns
sns.set(style="whitegrid", color_codes=True)
titanic = sns.load_dataset("titanic")
data = titanic.groupby("deck").size() # data underlying bar plot in question
pal = sns.color_palette("Greens_d", len(data))
rank = data.argsort().argsort() # http://stackoverflow.com/a/6266510/1628638
sns.barplot(x=data.index, y=data, palette=np.array(pal[::-1])[rank])
plt.show()
这里有一个解决方案:
这里是输出:![bar plot](https://i.stack.imgur.com/v9TrE.png)
注意:代码当前为相同高度的条指定不同(相邻)颜色。(在示例图中没有问题)虽然对相同的高度条使用相同的颜色会更好,但是生成的代码可能会使基本思想不那么清晰。
相关问题 更多 >
编程相关推荐