使用matplotlib堆叠轴的标签

时间:2016-09-28 06:33:00

标签: python matplotlib

我正在创建条形图并在x轴上显示多个值。默认情况下,它们以“,”分开显示,如下所示将它们分开。而不是昏迷我怎么能显示堆叠在彼此之上的值如下图所示?这样可以节省x轴上的空间,以便在我想显示多个值时允许更大的图形。

import pandas as pd
import matplotlib as plt

dfex = pd.DataFrame({'City': ['LA', 'SF', 'Dallas'],
 'Lakes': [3, 9, 6],
 'Rivers': [1, 0, 0],
 'State': ['CA', 'CA', 'TX'],
 'Waterfalls': [2, 4, 5]})

myplot = dfex.plot(x=['City','State'],kind='bar',stacked='True')

enter image description here

1 个答案:

答案 0 :(得分:2)

您可以简单地破解x轴刻度标签以达到您想要的效果。

ticks = myplot.xaxis.get_ticklabels()
new_ticks = ['\n'.join(t.get_text()[1:-1].split(', ')) for t in ticks]
myplot.xaxis.set_ticklabels(new_ticks)

enter image description here