如果使用“by”参数,如何在Series上使用pandas hist函数创建的直方图中添加标题?
对于简单的直方图,不存在问题。因此,以下工作完美:
In [115]: runELMLearning.utime.hist()
Out[115]: <matplotlib.axes.AxesSubplot at 0x20aaa590>
In [116]: plt.title("fooo")
Out[116]: <matplotlib.text.Text at 0x228b8550>
然而,当使用by子句时,这不再起作用了:
In [117]: runELMLearning.utime.hist(by=runELMLearning.state)
Out[117]:
array([[Axes(0.1,0.763636;0.222222x0.136364),
Axes(0.388889,0.763636;0.222222x0.136364),
Axes(0.677778,0.763636;0.222222x0.136364)],
[Axes(0.1,0.559091;0.222222x0.136364),
Axes(0.388889,0.559091;0.222222x0.136364),
Axes(0.677778,0.559091;0.222222x0.136364)],
[Axes(0.1,0.354545;0.222222x0.136364),
Axes(0.388889,0.354545;0.222222x0.136364),
Axes(0.677778,0.354545;0.222222x0.136364)],
[Axes(0.1,0.15;0.222222x0.136364),
Axes(0.388889,0.15;0.222222x0.136364),
Axes(0.677778,0.15;0.222222x0.136364)]], dtype=object)
In [118]: plt.title("fooo")
Out[118]: <matplotlib.text.Text at 0x13612b10>
即使它没有表示任何错误,也会默默忽略标题。
我做的另一个奇怪的观察是,当我首先创建一个图形,然后使用hist函数时,在by参数的情况下,第一个图被忽略,hist函数创建一个新的,我找不到matplotlib的gca。对于简单的直方图,再没问题。
答案 0 :(得分:0)
好的,我自己发现了这个:我需要使用来自pyplot的suptitle来为整个图形添加标题而不是单个轴,这是子图中不同直方图的情况。
http://matplotlib.1069221.n5.nabble.com/title-when-using-subplot-td22151.html