在 mplstyle 檔案中是否有強制水平標簽的引數?和/或使用 rcParams?
我目前ax.xaxis.set_tick_params(rotation=0)在地塊建設中使用。我想要一個永久的樣式或設定。謝謝!
默認外觀(x_compat=True在熊貓資料框中):

想要的樣子:

import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({'Date': {0: '1950-01-01', 1: '1960-01-02', 2: '1970-01-03', 3: '1980-01-04', 4: '1990-01-05'}, 'Value': {0 : 0, 1: 1, 2: 0, 3: 1, 4: 0}})
df['Date'] = pd.to_datetime(df['Date'], format='%Y-%m-%d')
df = df.set_index('Date', drop=False)
f, ax = plt.subplots()
df.plot(ax=ax, x='Date', x_compat=True)
#ax.xaxis.set_tick_params(rotation=0)
plt.show()
我看了看那里,但可能錯過了:
使用 matplotlibrc 檔案進行定制
matplotlib_configuration_api.html
uj5u.com熱心網友回復:
使用引數rot來自df.plot
df.plot(ax=ax, x='Date', x_compat=True, rot=0)
uj5u.com熱心網友回復:
我會回答我自己的問題來解決這個問題。
不,沒有。
[截至 2022 年 1 月] 無法通過樣式控制刻度標簽旋轉。這是因為pandas繪圖包裝器重置了旋轉引數。參考自 pandas/doc/source/user_guide/visualization.rst,
pandas 包括對常規頻率時間序列資料的自動刻度解析度調整。對于 pandas 無法推斷頻率資訊的有限情況(例如,在外部創建的 twinx 中),您可以選擇抑制此行為以進行對齊。[...] 使用 x_compat 引數,您可以抑制這種行為
盡管這里的措辭 --- 即“對齊目的”---,設定x_compat=True不會將旋轉引數重置為matplotlib默認值 0,正如我錯誤地預期的那樣。
似乎主要有兩種解決方法:
- 直接使用
matplotlib,無需pandas. pandas重置繪圖呼叫內的旋轉。這可以通過pandas[See Vishnudev's answer]df.plot(... rot=0...)或matplotlib[See my OP] with a axis object setting的方式來完成ax.xaxis.set_tick_params(rotation=0)。
來源和感謝:Jody Klymak的評論和Github的Marco Gorelli。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/415791.html
標籤:
下一篇:生成器模型在訓練期間不生成圖片
