【问题标题】:In Jupyter-notebook align label on Y axis [duplicate]在 Jupyter-notebook 中,在 Y 轴上对齐标签 [重复]
【发布时间】:2019-07-21 06:39:35
【问题描述】:

我已经绘制了 9 个图的堆栈并标记了 y 轴。这些图很好,但 y 轴上的标签没有正确对齐。当我尝试以下代码时

plt.set_ylabel('CF (E-14 )',size=15)
plt.yaxis.get_label().set_verticalalignment("baseline")

这是我得到的错误

AttributeError                            Traceback (most recent call last)
<ipython-input-140-87dca852bea2> in <module>()
    100 
    101 
--> 102 fit_data()

<ipython-input-140-87dca852bea2> in fit_data()
     86 
     87     plt.xlabel('M0',size=15)
---> 88     plt.set_ylabel('CF (E-14 )',size=15)
     89     plt.yaxis.get_label().set_verticalalignment("baseline")
     90 

AttributeError: module 'matplotlib.pyplot' has no attribute 'set_ylabel'

我想在 y 轴上对齐标签。所有堆叠图都有一个共同的 x 轴。这是我需要绘制sample 的示例绘图图像。 这是由其他人在另一个软件上完成的。我在 jupyter-notebook 上绘制它。我不确定如何在 y 轴上对齐标签

如果不使用设置标签,则图下方的 y 轴标签。 我已经修改了代码,这就是它的显示方式。

plt.xlabel('M0',size=15)
plt.ylabel('label for y axisCF(E-14)',size=15,va='center', rotation='vertical')

plt.xlabel('M0',size=15)
plt.ylabel('label for y axisCF(E-14)',size=15,va='center', rotation='vertical')
plt.text(0.04, 0.5, 'common Y', va='center', rotation='vertical')

两个代码给出相同的输出。

【问题讨论】:

    标签: python matplotlib plot jupyter-notebook


    【解决方案1】:

    首先,您应该使用plt.ylabel 而不是plt.set_ylabel。这样,您将修复报告的错误。

    要对齐 y 标签,您应该使用类似

    fig.text(0.04, 0.5, 'common Y', va='center', rotation='vertical')

    而不是经典的 y 标签,如 here 所述。

    【讨论】:

    • 我使用了代码,但结果是一样的。我已经编辑了问题。
    • 我认为您还应该添加部分代码。您是否使用plt.subplots() 创建多个图表?您是否尝试将0.04, 0.5 更改为fig.text()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    相关资源
    最近更新 更多