在Pandas图中仅隐藏轴标签,而不是整个轴

时间:2016-11-20 15:08:27

标签: python python-2.7 python-3.x pandas

我可以使用以下内容清除Pandas图中的xlabel文本:

plt.xlabel("")

相反,是否可以隐藏标签?

可能类似于.xaxis.label.set_visible(False)

1 个答案:

答案 0 :(得分:23)

From the Pandas docs -

  

Series和DataFrame上的绘图方法只是plt.plot()的简单包装:

这意味着您可以使用matplolib执行任何操作,您可以使用Pandas DataFrame绘图。

pyplot has an axis()方法,可让您设置轴属性。在致电plt.axis('off')之前致电plt.show()将关闭两个轴。

df.plot()
plt.axis('off')
plt.show()
plt.close()

要控制单个轴,您需要通过图Axes设置其属性。对于x轴 - (pyplot.axes().get_xaxis().....

df.plot()
ax1 = plt.axes()
x_axis = ax1.axes.get_xaxis()
x_axis.set_visible(False)
plt.show()
plt.close()

与控制轴标签类似,获取标签并将其关闭。

df.plot()
ax1 = plt.axes()
x_axis = ax1.axes.get_xaxis()
x_axis.set_label_text('foo')
x_label = x_axis.get_label()
##print isinstance(x_label, matplotlib.artist.Artist)
x_label.set_visible(False)
plt.show()
plt.close()

您也可以像这样进入x轴

ax1 = plt.axes()
x_axis = ax1.xaxis
x_axis.set_label_text('foo')
x_axis.label.set_visible(False)

或者这个

ax1 = plt.axes()
ax1.xaxis.set_label_text('foo')
ax1.xaxis.label.set_visible(False)

.set_visible()是一种Artist方法。轴及其标签是艺术家,因此他们有Artist methods/attributes以及their own。有很多方法可以自定义您的图表。有时,您可以找到要浏览GalleryExamples

的功能