如何在Python matplotlib中使用分类变量更改x轴和y轴刻度?

如何在Python matplotlib中使用分类变量更改x轴和y轴刻度?,python,pandas,matplotlib,Python,Pandas,Matplotlib,我想根据两个分类变量,车身尺寸(“convertibe”、“硬顶”、“掀背车”、“轿车”、“货车”)和驱动轮(“四轮驱动”、“前轮驱动”、“后轮驱动”)在热图中绘制汽车的平均价格(数字变量) 数据帧: drive-wheels body-style price 0 4wd hatchback 7603.000000 1 4wd sedan 12647.333333 2 4wd

我想根据两个分类变量,车身尺寸(“convertibe”、“硬顶”、“掀背车”、“轿车”、“货车”)和驱动轮(“四轮驱动”、“前轮驱动”、“后轮驱动”)在热图中绘制汽车的平均价格(数字变量)

数据帧:

   drive-wheels   body-style         price
0           4wd    hatchback   7603.000000
1           4wd        sedan  12647.333333
2           4wd        wagon   9095.750000
3           fwd  convertible  11595.000000
4           fwd      hardtop   8249.000000
5           fwd    hatchback   8396.387755
6           fwd        sedan   9811.800000
7           fwd        wagon   9997.333333
8           rwd  convertible  23949.600000
9           rwd      hardtop  24202.714286
10          rwd    hatchback  14337.777778
11          rwd        sedan  21711.833333
12          rwd        wagon  16994.222222
使用此代码:

df_test = df[["drive-wheels", "body-style", "price"]]
df_grp = df_test.groupby(["drive-wheels", "body-style"], as_index=False).mean()
print(df_grp)
df_pivot = df_grp.pivot(index="drive-wheels", columns="body-style")
print(df_pivot)
plt.pcolor(df_pivot, cmap="RdBu")
plt.colorbar()
plt.xlabel("body-style")
plt.ylabel("drive-wheels")
plt.show()
我得到以下结果:

但是,我希望在两个轴上都勾选它们的分类值,如下所示:


如何在分类值中标记记号?

这可以使用库轻松完成:

删除代码的plt部分并插入此代码:

import seaborn as sns

df_pivot = df_pivot.fillna(0)
sns.heatmap(df_pivot, cmap="RdBu")

我看不到代码中创建这些图的部分。你确定这就是产生这个的代码吗?@MattR对不起,你是对的。我在中编辑了它。你能发布你的df吗?@ImportanceOfBeingErnest评论中的链接显示了它,并且欢迎你。如果这解决了您的问题,请随意单击我的答案旁边的复选标记。:)一侧注意:为了保持轴不旋转,请使用:plt.yticks(旋转=0):)