如何在 python 条形图中添加 x 轴刻度标签

How to add x-axis tick labels in python bar chart

我正在尝试绘制 python 条形图。这是我的代码和我的条形图的图像。我面临的问题是:

  1. 我想在 x 轴上将条形图的每个类别的名称写为 CAT1、CAT2、CAT3、CAT4。现在它在 x 轴上打印 0、1、2。

  2. 我想更改条形图的紫色。

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
df = pd.DataFrame([['CAT1',9,3,24,46,76], ['CAT2', 48,90,42,56,68], ['CAT3', 31,24,28,11,90],
                   ['CAT4', 76,85,16,65,91]],
                  columns=['metric', 'A', 'B', 'C', 'D', 'E'])
                  
df.plot(
        kind='bar',
        stacked=False
        )

plt.legend(labels=['A', 'B', 'C', 'D', 'E'], ncol=4, loc='center', fontsize=15, bbox_to_anchor=(0.5, 1.06))

plt.show()

默认情况下,matplotlib 将数据帧的索引识别为 x-labels。 我建议您添加以下内容以将列 metric 作为索引,这样 matplotlib 可以自动为您添加标签。

df = df.set_index('metric')