Pythonのデータ解析支援ライブラリPandas 〜その19 Pandasの.plot()で出力されたグラフをいじってみる2〜

目次

データ解析支援ライブラリPandas

前回はデータ解析支援ライブラリPandasで出力できるグラフを色々といじる方法を解説しました。

あわせて読みたい
Pythonのデータ解析支援ライブラリPandas 〜その18 Pandasの.plot()で出力されたグラフをいじってみる1〜
Pythonのデータ解析支援ライブラリPandas 〜その18 Pandasの.plot()で出力されたグラフをいじってみる1〜【データ解析支援ライブラリPandas】前回はデータ解析支援ライブラリPandasで出力できるグラフを紹介しました。https://3pysci.com/python-pandas-19/その際、「.plot()...

前回はPandasの.plot()の機能を使って、グラフの体裁を整えてみました。

今回はPandasの.plot()の機能ではなく、matplotlibでグラフの体裁を整えられるか試してみましょう。

ということでまずは準備をしていきましょう。

データはランダムデータ作成プログラムで作成して、前回用いたこちらのデータを使っていきます。

あわせて読みたい
Pythonでファイル数、行数、列数を指定してダミーデータのファイルを生成するプログラムを作ってみた ...
Pythonでファイル数、行数、列数を指定してダミーデータのファイルを生成するプログラムを作ってみた ...【nanとは?】今回は前に作成したダミーデータのファイルを生成するプログラムをアップデートしていきます。https://3pysci.com/python-matplotlib-26/アップデートする...

データの読み込みと、基準となるグラフの出力のプログラムはこんな感じ。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

実行結果

ということで始めていきましょう。

タイトルを表示する:plt.title(“タイトル”, fontsize=X)

タイトルを表示するには、.plot()より後の行に「plt.title(“タイトル”)」を追加することでタイトルを表示することができます。

また「fontsize=X」を追加することで、タイトルのフォントの大きさを変えることができます。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

plt.title("title", fontsize=15)

実行結果

軸名を表示:plt.xlabel(“X軸名”)、plt.ylabel(“Y軸名”)

次はX軸名、Y軸名を追加する方法です。

X軸名を追加するにはplt.xlabel(“X軸名”)、Y軸名を追加するにはplt.ylabel(“Y軸名”)で追加できます。

またオプションに「fontsize=X」を追加することで、それぞれの軸名のフォントサイズを変更することができます。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

plt.xlabel("xlabel", fontsize=15)
plt.ylabel("ylabel", fontsize=15)

実行結果

軸の数値のフォントサイズ変更:plt.xticks(fontsize=X)、plt.yticks(fontsize=X)

軸の数値のフォントサイズを変更するには、X軸の場合はplt.xticks(fontsize=X)、Y軸の場合はplt.yticks(fontsize=X)を追加します。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

plt.xticks(fontsize=15)
plt.yticks(fontsize=15)

実行結果

軸の数値の角度を変更:.plt.xticks(rotation=X)、plt.yticks(rotation=X)

軸の数値の角度を変更するには、X軸の場合はplt.xticks(rotation=X)、Y軸の場合はplt.yticks(rotation=Y)とします。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

plt.xticks(rotation=45)
plt.yticks(rotation=45)

実行結果

また先ほどの軸のフォントサイズの変更と一緒に使うことも可能です。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

plt.xticks(fontsize=15, rotation=45)
plt.yticks(fontsize=15, rotation=45)

実行結果

グリッドを表示:plt.grid()

グラフにグリッドを表示するには、plt.grid()を追加します。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

plt.grid()

実行結果

表示範囲を変更:plt.xlim(値1, 値2)、plt.ylim(値1, 値2)

X軸方向の表示範囲を変更するにはplt.xlim(値1, 値2)、Y軸方向の表示範囲を変更するにはplt.ylim(値1, 値2)とします。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

plt.xlim(2,8)
plt.ylim(20, 80)

実行結果

番外編:グラフサイズは変更できない?

前回、Pandasの.plot(figsize=(X, Y))でグラフのサイズを変更できると解説しました。

同じようにグラフサイズを.plot()のオプションではない形でグラフサイズを変更できないか検討してみました。

まずはグラフサイズを設定しない場合のサイズはこちら。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")

実行結果

グラフサイズを設定した場合のサイズはこちら。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line", figsize=(8,6))

実行結果

これが違う形で再現できるのか、色々試してみた結果はこんな感じです。

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")
plt.figure(figsize=(8,6))

実行結果
import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

df.plot(kind="line")
plt.figsize=(8,6)

実行結果
import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

plt.figure(figsize=(8,6))
df.plot(kind="line")

実行結果
import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_csv("python-pandas-19_data1.txt", index_col=0)

plt.figsize=(8,6)
df.plot(kind="line")

実行結果

とまぁこんな感じでグラフサイズを規定するコマンドを場所とか、書き方とか変えてみたのですが、どうしてもグラフサイズが変わらなかったわけです。

できないことをずっとやっていても仕方ないので、ここら辺にしておきましょう。

ということでグラフサイズを変えるなら「.plot(figsize=(X, Y))」とPandasの.plot()のオプションとして規定するのが間違いがないということでした。

今回のことでPandasの.plot()のオプションとして規定するほうが良い値、別途matplotlibのコマンドとして規定するほうが良い値色々とあることが分かりました。

ここら辺は使う個人が使いやすようにやればいいのかなと思います。

次回はPandasでデータの概要や統計情報を表示する方法を解説していきます。

あわせて読みたい
Pythonのデータ解析支援ライブラリPandas 〜その20 データの概要を表示してみる:head, tail, describe,...
Pythonのデータ解析支援ライブラリPandas 〜その20 データの概要を表示してみる:head, tail, describe,...【データ解析支援ライブラリPandas】前回はPandasの.plot()で出力されるグラフを、matplotlibの機能を使っていじってみました。https://3pysci.com/python-pandas-21/今...

ではでは今回はこんな感じで。

よかったらシェアしてね!

コメント

コメントする

目次
閉じる