【问题标题】:Hiding Axis Labels隐藏轴标签
【发布时间】:2011-05-04 01:09:22
【问题描述】:

我试图在 211 处隐藏第一个子图上的轴标签。 我想标记这个数字,而不仅仅是一个子图(参考:“Isub 事件特征”)。 如何控制字体属性,如大小、字体、颜色?

f = Figure()

vdsvgsPlot = f.add_subplot(211)
vdsvgsPlot.plot(theLister()[3],theLister()[0])
vdsvgsPlot.plot(theLister()[3],theLister()[1])

isubPlot = f.add_subplot(212)
isubPlot.plot(theLister()[3],theLister()[2])

plotCanvas = FigureCanvasTkAgg(f, master)
toolbar = NavigationToolbar2TkAgg(plotCanvas, master)

plotCanvas.get_tk_widget().pack()

提前谢谢你。

【问题讨论】:

    标签: python matplotlib tkinter


    【解决方案1】:

    你在这里有几个不同的问题......让我把它们分解一下......

    “隐藏第一个子图上的轴标签”是指实际的轴标签(除非您指定它们,否则它们不存在)、刻度标签(即沿轴的数字)、轴刻度或以上都是?

    如果您的意思是“以上所有”,只需执行 ax.xaxis.set_visible(False) 即可,对 y 轴也是如此。 (ax 在上面的示例代码中将是 vdsvgsPlot

    如果您指的是轴刻度标签,只需将它们设置为 [],即:ax.set_xticklabels([])。 (以及 y 轴的 set_yticklabels

    如果您指的是轴刻度,您可以执行类似的操作:ax.set_xticks([])ax.set_yticks([]) 这将关闭刻度和刻度标签。

    至于第二个问题,用suptitle为整个图命名。即:fig.suptitle('whatever')(在上面的示例代码中为f.suptitle...)。

    至于如何control the font properties,您可以将various keyword arguments 传递给suptitle(或在绘图上创建文本的任何其他内容)或在创建文本后设置它们。例如fig.suptitle('This is a title', size=20, horizontalalignment='left', font='Times', color='red')

    一般情况下,我建议您查看各种user's guidegallery of examples(所有这些都包含源代码)、pyplot api docs 和 detailed api docs

    希望有帮助!

    【讨论】:

    • @Joe 隐藏轴刻度但同时显示轴标签和刻度标签的命令是什么?
    【解决方案2】:

    尝试使用.xaxis.label.set_visible(False)

    【讨论】:

    • 此解决方案符合我的需求,我需要在仅隐藏标签时出现刻度。
    • 这是一个令人难以置信的解决方案。不得不在其他帖子中浏览这么多愚蠢和愚蠢的答案。非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-02
    • 2015-12-26
    • 2016-08-30
    • 2020-01-09
    • 1970-01-01
    相关资源
    最近更新 更多