如何在 Matplotlib 中将旋转的 xticklabel 与相应的 xticks 对齐?

DDD
发布: 2024-10-28 18:37:02
原创
589 人浏览过

How to Align Rotated xticklabels with Corresponding xticks in Matplotlib?

将旋转的 xticklabel 与相应的 xticks 对齐

在绘图中,旋转 x 轴刻度标签时可能会遇到未对齐的问题。旋转默认将标签围绕其中心对齐,从而导致偏离相应的刻度。

要解决此问题,可以使用 set_xticklabels 中的 ha 参数来控制水平对齐。此参数指定旋转标签周围的边界框应与刻度线对齐的一侧。

考虑以下代码:

<code class="python">import numpy as np
import matplotlib.pyplot as plt

n = 5

x = np.arange(n)
y = np.sin(np.linspace(-3,3,n))
xlabels = ['Ticklabel %i' % i for i in range(n)]

fig, axs = plt.subplots(1,3, figsize=(12,3))

alignments = ['right', 'center', 'left']

for n, ax in enumerate(axs):
    ax.plot(x,y, 'o-')
    ax.set_title(alignments[n])
    ax.set_xticks(x)
    ax.set_xticklabels(xlabels, rotation=40, ha=alignments[n])</code>
登录后复制

输出图说明了不同 ha 的效果值:

  • ha='right' 将标签框的右侧与刻度线对齐。
  • ha='center' 将标签框的中心与刻度线对齐。
  • ha='left' 将标签框的左侧与刻度对齐。

通过选择适当的 ha 值,刻度标签可以与其相应的刻度精确对齐,即使在旋转。

以上是如何在 Matplotlib 中将旋转的 xticklabel 与相应的 xticks 对齐?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板