Matplotlibで破線に交互の色を付ける方法を実例付きで解説
Matplotlibで破線(ダッシュライン)に交互の色を表示したい場合、同じデータを2回プロットするのが簡単な方法です。1回目は実線(-)で一方の色を描画し、2回目は破線(--)でもう一方の色を重ねて描くことで、あたかも1本の線に複数の色が交互に現れているように見せることができます。
以下の手順で実装できます。
figure.figsizeで図のサイズを設定し、figure.autolayoutを有効にして余白を自動調整します。plt.gca()で現在の軸(Axes)を取得します。- NumPy を使って x および y のデータ点を作成します。
- 同じデータに対して、線種「
-」(実線)と「--」(破線)を指定して2回プロットします。それぞれ異なる色を指定することで、破線部分だけが上書きされ、交互の色効果が得られます。 plt.show()メソッドで図を表示します。
サンプルコード
from matplotlib import pyplot as plt import numpy as np plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True ax = plt.gca() x = np.linspace(-10, 10, 100) y = np.sin(x) ax.plot(x, y, '-', color='red', linewidth=5) ax.plot(x, y, '--', color='yellow', linewidth=5) plt.show()
出力結果

仕組みの解説
このテクニックでは、まず太い赤い実線を全体に描画し、その上から同じデータを黄色い破線で描いています。破線の「切れ目」の部分では下の赤い実線が透けて見えるため、結果として赤と黄が交互に現れる一本の線のように表示されます。
なお、linewidth=5 のように両方の線を同じ太さに揃えることが重要です。破線側が細いと、下の実線が縁として露出してしまい、意図した見た目になりません。また、dashes パラメータや linestyle=(0, (5, 5)) のようなタプル形式を使えば、ダッシュの長さや間隔を細かくカスタマイズすることも可能です。
-
Matplotlibで折れ線グラフをアニメーション化する方法を徹底解説
Matplotlibでは、FuncAnimationを活用することで、折れ線グラフに動きのあるアニメーション効果を簡単に加えることができます。本記事では、基本的な手順と実際に動作するサンプルコードを交えながら、その方法をわかりやすく解説します。折れ線グラフをアニメーション化する基本手順subplots()メソッドを使用して、図(figure)とサブプロットを作成します。x軸・y軸それぞれの表示範囲(スケール)を設定します。NumPyを使って、xおよびtのデータ点を生成します。座標ベクトルからmeshgrid()で座標行列X2とT2を作成します。plot()メソッドでxとFのデータを使い、折れ線
-
PythonのMatplotlibで3次元ラインプロットを作成する方法【サンプルコード付き解説】
Matplotlibとは Matplotlibは、Pythonで最も広く利用されているデータ可視化ライブラリの一つです。データを可視化することは、大量の数値を直接読んだり複雑な計算を行ったりしなくても、データの中で何が起きているのかを直感的に把握できるようにするための重要なステップです。 また、定量的な洞察を効果的に伝える手段としても非常に役立ちます。Matplotlibは主に2次元プロットの作成に使用されますが、オブジェクト指向APIを備えているため、作成したグラフをPythonアプリケーションへ簡単に組み込むことが可能です。さらに、IPythonシェル、Jupyter Notebook、S