Matplotlibで2本の点線をプロットする方法|マーカー・線種・凡例の設定も解説
はじめに
この記事では、Pythonの可視化ライブラリ「Matplotlib」を使って、2本の線を1つのグラフに描画し、それぞれに異なる線種(点線・破線)や色、太さを設定する方法を解説します。
コーディングを始める前に、まず次のコマンドでMatplotlibをインポートしておきましょう。
import matplotlib.pyplot as plt
Pyplotは、MatplotlibをMATLABのように直感的に操作できるようにするためのコマンドスタイル関数のコレクションです。グラフの描画からラベル付けまで、ほとんどの操作をこのモジュール経由で行います。
アルゴリズム(処理の流れ)
ステップ1:matplotlib.pyplot をインポートする ステップ2:line1 と line2 の座標データを定義する ステップ3:pyplot の plot() 関数で線を描画する ステップ4:タイトル、X軸ラベル、Y軸ラベルを設定する ステップ5:show() 関数でグラフを表示する
サンプルコード
import matplotlib.pyplot as plt
# 1本目の線の座標
line1_x = [10, 20, 30]
line1_y = [20, 40, 10]
# 2本目の線の座標
line2_x = [10, 20, 30]
line2_y = [40, 10, 30]
plt.xlabel('X AXIS')
plt.ylabel('Y AXIS')
# 点線(dotted)で描画
plt.plot(line1_x, line1_y, color='blue', linewidth=3,
label='line1-dotted', linestyle='dotted')
# 破線(dashed)で描画
plt.plot(line2_x, line2_y, color='red', linewidth=5,
label='line2-dashed', linestyle='dashed')
plt.title("PLOTTING DOTTED LINES")
plt.legend()
plt.show()
出力結果

コードの解説
line1_x・line1_y および line2_x・line2_y は、それぞれの線のX座標とY座標を格納したリストです。plot() 関数の linewidth パラメータは、描画する線の太さ(幅)を指定します。数値が大きいほど線が太くなります。
また、linestyle パラメータでは線のスタイルを指定できます。主な値は以下の通りです。
'solid'… 実線(デフォルト)'dashed'… 破線'dashdot'… 一点鎖線'dotted'… 点線
なお、元のコードでは2本目の線にも dotted が指定されていましたが、ラベルとの整合性を考慮し、ここでは dashed(破線)に修正しています。こうすることで、2本の線の違いがより明確になります。
プログラム内の plt.legend() 関数は、label 引数で指定した各線の凡例をグラフ上に表示するために使用しています。これにより、どの線がどのデータセットに対応しているのかがひと目で把握できるようになります。
-
Matplotlibのループプロットでマーカーとラインに同じ色を設定する方法
Matplotlibでループ処理により複数のデータ系列を描画する際、「マーカー」と「ライン」に同じ色を割り当てたい場面はよくあります。本記事では、そのための基本的な手順と、色を確実に揃えるための実践的な方法をコード例とともに解説します。 基本の手順 numpy を使用して m、n、x のデータポイントを初期化します。 figure() メソッドで新しい図を作成、または既存の図をアクティブ化します。 clf() メソッドで図をクリアします。 subplot() メソッドで現在の図にサブプロットを追加します。 itertools.cycle を利用して、複数種類のマーカーを順番に取得できるよう
-
Seabornで2つのグラフを横に並べてプロットする方法(Matplotlib)
データ分析では、複数のグラフを1つの図の中に並べて比較できると非常に便利です。この記事では、SeabornとMatplotlibを組み合わせて、2つのグラフを横並び(1行2列)で表示する方法を解説します。 実装の流れ 2つのグラフを並べて描画するには、以下の手順を実行します。 plt.subplots(1, 2) を使い、figureサイズ(7, 7)で1行2列のサブプロットを作成します。 Pandasを使って、col1 と col2 のキーを持つデータフレームを作成します。 countplot() メソッドを使用し、カテゴリごとの観測値の件数を棒グラフで可視化します。 subplots_a