【发布时间】:2017-09-27 09:48:05
【问题描述】:
所以我有一个使用 seaborn 创建的热图
revels = rd.pivot("Flavour", "Packet number", "Contents")
ax = sns.heatmap(revels, annot=True, fmt="d", linewidths=0.4, cmap="YlOrRd")
plt.show()
尽管咨询了 seaborn 的帮助文件 (http://seaborn.pydata.org/generated/seaborn.heatmap.html),但有两件事我想做,但我终生无法弄清楚如何去做。
我想做的就是以不同的方式订购口味。尽管在文本文件中输入的顺序为橙色、太妃糖、巧克力、麦芽、葡萄干、咖啡,但在绘图时不会以这种方式生成。我尝试编辑 yticklabs,但这只是编辑标签,而不是随其移动数据。
感谢您的帮助
PS 数据如下所示:
Packet number,Flavour,Contents
1,orange,4
2,orange,3
3,orange,2
...
1,toffee,4
2,toffee,3
3,toffee,3
...
etc.
【问题讨论】:
-
你创建了一个 df "revels",你试过按 Flavour 排序吗?
-
请注意,此问答网站旨在为每个问题提供一个问题。对 pandas 数据进行排序与更改 matplotlib 颜色条完全不同。由于第一个问题已经在这里得到了答案,所以留下那个并删除第二个。如果您不知道如何设置颜色条标签,您可以提出一个新问题。
-
是的,我建议将第二个问题单独分开,因为我确信@ImportanceOfBeingErnest 有答案!他的 matplotlib 技能远胜于我。
-
关于如何在颜色条中产生离散刻度的问题有一个good answer here。因此,我从问题中删除了该部分。 (如果您在实施链接答案时遇到问题,您可以提出一个新问题。)
标签: python pandas matplotlib heatmap seaborn