首頁  >  文章  >  後端開發  >  如何在 Matplotlib 中將旋轉的 xticklabel 與對應的 xticks 對齊?

如何在 Matplotlib 中將旋轉的 xticklabel 與對應的 xticks 對齊?

DDD
DDD原創
2024-10-28 18:37:02519瀏覽

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn