matplotlib Hide axis label only, not entire axis, in Pandas plot

lg40wkob  于 2023-02-23  发布在  其他
关注(0)|答案(2)|浏览(203)

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

plt.xlabel("")

相反,是否可以隐藏标签?
可能是类似.xaxis.label.set_visible(False)的东西。

xiozqbni

xiozqbni1#

从Pandas的档案里-
Series和DataFrame上的plot方法只是plt. plot()的一个简单 Package 器:
这意味着你可以用matplolib做的任何事情,你都可以用Pandas DataFrame绘图来做。
pyplot有一个axis()方法,可以设置轴属性。在调用plt.show()之前调用plt.axis('off')将关闭两个轴。

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

要控制单个轴,需要通过图的轴设置其属性。对于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)

DataFrame.plot
返回它们的matplotlib.axes.Axes或numpy.ndarray
这样你就可以在你叫它时候得到它/他们。

axs = df.plot()

.set_visible()是艺术家方法。轴及其标签是艺术家,因此它们具有艺术家方法/属性以及它们自己的方法/属性。有许多方法可以自定义您的图。有时您可以通过浏览Gallery和示例找到您想要的功能

mkh04yzy

mkh04yzy2#

可以在plot()调用中使用xlabel=ylabel=参数删除轴标签和刻度。例如,要删除xlabel,请使用xlabel=''

df.plot(xlabel='');

要删除x轴刻度,请使用xticks=[](对于y轴刻度,请使用yticks=):

df.plot(xticks=[]);

要删除两者:

df.plot(xticks=[], xlabel='');

相关问题