Matplotlib条形图的视觉输出 - Python

时间:2018-06-08 17:53:17

标签: python matplotlib

我正在努力为4列生成一些图表,其中COLUMN_NM是主要索引。

我面临的问题是列名显示在底部。这有两个原因是有问题的,首先可能有几十个这样的列,因此图形看起来很混乱,可能会向右延伸太远。其次是他们被切断了(虽然我确信可以修复)

我希望在框中垂直列出列名,其中' MAX_COL_LENGTH'当前居住,并且每列的条形图有不同的颜色。

我有什么想法可以调整这个或建议让它变得更好?

for col in ['DISTINCT_COUNT', 'MAX_COL_LENGTH', 'MIN_COL_LENGTH', 'NULL_COUNT']:
    grid[['COLUMN_NM', col]].set_index('COLUMN_NM').plot.bar(title=col)
    plt.show()

Graph Example

1 个答案:

答案 0 :(得分:1)

在这种情况下,您可以逐个绘制点并为每个点设置标签名称:

gs = gridspec.GridSpec(1,1)
fig = plt.figure(figsize=(5, 5))
ax = fig.add_subplot(gs[:, :])
data = [1,2,3,4,5]
label = ['l1','l2','l3','l4','l5']
for n,(p,l) in enumerate(zip(data,label)):
    ax.bar(n,p,label=l)
ax.set_xticklabels([])
ax.legend()

这是上面代码的输出:

enter image description here