MatplotlibとPythonでPandasデータフレームから面グラフ(エリアチャート)を描画する方法
Matplotlibを使ってPythonでPandasデータフレームのデータを面グラフ(エリアチャート)として可視化したい場合、plot.area()メソッドを使用すると簡単に実現できます。以下に、その具体的な手順を紹介します。
手順
- 図のサイズを設定し、サブプロット間および周囲のパディング(余白)を調整します。
- Pandasデータフレームを作成します。データフレームとは、2次元のサイズ変更可能で、異なる型のデータを格納できる表形式のデータ構造です。
plot.area()メソッドを呼び出して、各系列の下側が塗りつぶされた領域グラフを描画します。- 図を表示するには、show()メソッドを使用します。
サンプルコード
import pandas as pd import numpy as np from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True df = pd.DataFrame(np.random.rand(10, 4), columns=["a", "b", "c", "d"]) df.plot.area() plt.show()
コードの解説
np.random.rand(10, 4)により、0〜1の一様乱数からなる10行4列の配列を生成し、それをもとに「a」「b」「c」「d」という4つの列を持つデータフレームを作成しています。plt.rcParams["figure.figsize"]で図のサイズを7.5×3.5インチに設定し、figure.autolayoutをTrueにすることで、ラベルやタイトルが図の外にはみ出さないよう自動調整されます。df.plot.area()を実行すると、各列の値が積み上げ形式の面グラフとして描画され、系列ごとの領域が色分けされて表示されます。
出力結果

このように、Pandasの組み込みプロット機能を利用すれば、わずか数行のコードで美しい面グラフを作成できます。時系列データの累積傾向や構成比の変化を視覚的に表現したい場合に特に有効です。
-
【Python】Matplotlibでグラフの線にラベルを付ける方法
Matplotlibでグラフの線にラベルを付けるには、plot()メソッドの引数にlabelを指定します。ラベルを付けた線は、legend()メソッドで凡例として図に表示できます。手順図のサイズを設定し、サブプロット間および周囲の余白を調整します。plot()メソッドを使用し、label="line1" を指定して1本目の線をプロットします。同様に、label="line2" を指定して2本目の線をプロットします。図に凡例を配置するには、legend()メソッドを使用します。図を画面に表示するには、show()メソッドを使用します。コード例from ma
-
Python Matplotlibで3Dグラフをプロットする方法を解説
PythonのMatplotlibを使えば、3次元の散布図やグラフを簡単に描画できます。この記事では、mpl_toolkits.mplot3dモジュールを利用して3Dグラフを作成する手順を、サンプルコード付きでわかりやすく解説します。 3Dグラフをプロットする基本手順 Pythonで3Dグラフを描くには、以下のステップに従います。 figure()メソッドを使って、新しい図(フィギュア)を作成するか、既存の図をアクティブにします。 Axes3Dオブジェクトを取得して、3D用の座標軸を準備します。 x、y、zそれぞれのデータポイントをリストとして定義します。 scatter3D()メソッドを使