Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matplotlib:如何将标题与y标签精确对齐?_Matplotlib - Fatal编程技术网

Matplotlib:如何将标题与y标签精确对齐?

Matplotlib:如何将标题与y标签精确对齐?,matplotlib,Matplotlib,在matplotlib中,我可以使用以下命令轻松地将标题向左对齐: ax.set_title(f"Title", ha='left', x=-0) 我得到: 但有时我想将标题与左标签的起始位置对齐,以获得如下结果: 我通常通过反复试验来做这件事。最后,我得到一个任意的x偏移量,如: ax.set_title(f"Title", ha='left', x=-.12) 如何自动计算此.12偏移量?使用变换(请参见),您可以找到标签边界框左侧的位置,并将

在matplotlib中,我可以使用以下命令轻松地将标题向左对齐:

ax.set_title(f"Title", ha='left', x=-0)
我得到:

但有时我想将标题与左标签的起始位置对齐,以获得如下结果:

我通常通过反复试验来做这件事。最后,我得到一个任意的x偏移量,如:

ax.set_title(f"Title", ha='left', x=-.12)
如何自动计算此
.12
偏移量?

使用变换(请参见),您可以找到标签边界框左侧的位置,并将其变换为轴坐标,以传递到
设置标题()

fig, ax = plt.subplots()
fig.canvas.draw()
bbox = ax.get_yticklabels()[-1].get_window_extent()
x,_ = ax.transAxes.inverted().transform([bbox.x0, bbox.y0])
ax.set_title('A title aligned with the y-axis labels', ha='left', x=x)