ホームページ >バックエンド開発 >Python チュートリアル >読みやすさを向上させるために Matplotlib で日時軸をフォーマットする方法

読みやすさを向上させるために Matplotlib で日時軸をフォーマットする方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-26 15:39:30687ブラウズ

How to Format a Datetime Axis in Matplotlib for Better Readability?

日時軸の書式設定

日時インデックスを使用してシリーズをプロットする場合、X 軸には時間、分、秒が表示されることがあります。年と月と一緒です。グラフを読みやすくするために、この過剰な時間情報を削除することができます。

サンプル系列を考えてみましょう:

2014-01-01     7
2014-02-01     8
2014-03-01     9
2014-04-01     8

この系列をプロットすると、最初は混雑した X 軸を持つグラフが表示されます。 .

import matplotlib.pyplot as plt
import pandas as pd

series = pd.Series([7, 8, 9, 8], index=pd.date_range('2014-01', periods=4, freq='MS'))
plt.plot(series.index, series.values)
plt.show()

この問題を解決するには、Matplotlib のフォーマッタを利用して X 軸の目盛りの表示形式を制御できます。

import numpy as np
import matplotlib.dates as mdates

# generate data
N = 30
drange = pd.date_range("2014-01", periods=N, freq="MS")
np.random.seed(365)  # for reproducible values
values = {'values':np.random.randint(1,20,size=N)}
df = pd.DataFrame(values, index=drange)

# plot
fig, ax = plt.subplots()
ax.plot(df.index, df.values)

# set tick formatters
ax.xaxis.set_major_formatter(mdates.DateFormatter("%Y-%m"))
ax.xaxis.set_minor_formatter(mdates.DateFormatter("%Y-%m"))
plt.xticks(rotation=90)
plt.show()

「%Y-%m」を指定することで、 " 形式文字列を使用すると、X 軸のラベルに年と月が簡略化された形式で表示されるようになりました。

以上が読みやすさを向上させるために Matplotlib で日時軸をフォーマットする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。