Matplotlibで累積分布関数(CDF)の対数プロットを表示する方法
Matplotlibで累積分布関数(CDF)の対数プロットを表示するには、以下の手順に従います。両軸を対数スケールにすることで、正規分布から大きく外れたデータや桁違いの値を持つデータも見やすく可視化できます。
手順
- 図のサイズを設定し、サブプロット間およびその周囲のパディングを調整します。
- サンプルデータの個数を表す変数 N を初期化します。
- NumPy を使ってデータ X2 と F2 を作成します。
- plot() メソッドで X2 と F2 をプロットします。
- x 軸と y 軸を対数スケールに設定します。
- show() メソッドで図を表示します。
コード例
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
N = 100
data = np.random.randn(N)
X2 = np.sort(data)
F2 = np.array(range(N))/float(N)
plt.plot(X2, F2)
plt.xscale('log')
plt.yscale('log')
plt.show()
コードの解説
このコードでは、まず np.random.randn(N) によって平均0・分散1の正規分布に従う乱数を100個生成し、np.sort() で昇順に並べ替えて経験的累積分布の x 値としています。y 値の F2 は、0〜1 の範囲に均等に配置された累積確率です。続いて plt.xscale('log') と plt.yscale('log') を呼び出すことで、両軸が対数スケールに切り替わり、裾の重い分布や広いダイナミックレンジを持つデータの挙動を直感的に把握できるようになります。
出力結果


-
Matplotlibで複数のカラーバーを表示する方法【初心者向け解説】
Matplotlibでは、複数のカラーバー(カラースケール)を1つの図の中に同時に表示することができます。これにより、異なるデータセットをそれぞれ独立した色スケールで視覚的に比較できるようになります。 この記事では、imshow()を使って複数の画像データを描画し、それぞれに対応するカラーバーを追加する具体的な手順を紹介します。 複数のカラーバーを表示する手順 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。 図(figure)とサブプロット(axes)のセットを作成します。 サンプルデータの個数を表す変数 N を初期化します。 NumPyを使ってランダムなデ
-
Matplotlibで複数のX軸・Y軸をプロットする方法(twinx / twinyの使い方)
データ分析や可視化では、スケールの異なる2つのデータ系列を同じグラフ上に重ねて表示したいケースがよくあります。Matplotlibでは、twinx() メソッドや twiny() メソッドを使うことで、X軸またはY軸を共有しながら独立したもう一方の軸を持つグラフを簡単に作成できます。 この記事では、左右に異なるY軸を持つグラフを作成する手順を、具体的なコード例とともに解説します。 複数のY軸を持つグラフの作成手順 以下の手順で、左と右に別々のY軸スケールを持つプロットを作成できます。 subplots() メソッドを使用して、図(figure)とサブプロット(axes)を作成します。 最初の