首页 > 解决方案 > Matplotlib:将 x 轴标签拟合到图中以进行条形图

问题描述

我有一个分类数据的条形图;其中包含 173 个不同的类别。我想将整个数据放入一个数字中。代码如下:

        series = self.mainDataFrame[cat_col].value_counts()
        columns = series.index.to_list()
        values = series.values
        y_pos = np.arange(len(columns))
        plt.bar(y_pos, values, align='center', alpha=0.5)
        plt.xticks(y_pos, columns, fontsize='xx-small')
        plt.ylabel('Frequency')
        plt.title("Categorical Column:{0}".format(cat_col))

这是我得到的结果:

在此处输入图像描述

我主要想要两件事;我希望 x 轴标签是可读的(每个标签都由三个字母组成),并且条形图不要那么杂乱,这样它们中的一些会被呈现为粘在一起。我试图在保持条形宽度相同的同时扩大图形宽度,但我失败了。对于标签字体大小,这就是我得到的plt.xticks(y_pos, columns, fontsize='xx-small')。我怎样才能使这个数字更具可读性?

标签: pythonmatplotlib

解决方案


推荐阅读