Python
 Computer >> コンピューター >  >> プログラミング >> Python

matplotlibの折れ線グラフのデータインデックスで線の色を変える方法は?


matplotlibの折れ線グラフのデータインデックスによって線の色を変えるには、次の手順を実行します-

ステップ

  • 図のサイズを設定し、サブプロット間およびサブプロットの周囲のパディングを調整します。

  • numpyを使用してxおよびyデータポイントを作成します。

  • 制限を小さくする、 dydx

  • ポイントを取得する およびセグメント numpyを使用したデータポイント。

  • 図とサブプロットのセットを作成します。

  • 呼び出されたときに、データをある範囲に線形に正規化するクラスを作成します。

  • numpy配列から画像配列を設定します*A *

  • コレクションの線幅を設定します。

  • 軸1のカラーバーを設定します。

  • 色のリスト(r、g、b)からColormapオブジェクトを生成します。

  • 手順6、7、8、9、および10を繰り返します。

  • X軸とY軸の制限を設定します。

  • 図を表示するには、 show()を使用します メソッド。

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.collections import LineCollection
from matplotlib.colors import ListedColormap, BoundaryNorm

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

x = np.linspace(0, 3 * np.pi, 500)
y = np.sin(x)

dydx = np.cos(0.5 * (x[:-1] + x[1:]))
points = np.array([x, y]).T.reshape(-1, 1, 2)
segments = np.concatenate([points[:-1], points[1:]], axis=1)

fig, axs = plt.subplots(2, 1, sharex=True, sharey=True)
norm = plt.Normalize(dydx.min(), dydx.max())

lc = LineCollection(segments, cmap='viridis', norm=norm)
lc.set_array(dydx)
lc.set_linewidth(2)

line = axs[0].add_collection(lc)
fig.colorbar(line, ax=axs[0])
cmap = ListedColormap(['r', 'g', 'b'])
norm = BoundaryNorm([-1, -0.5, 0.5, 1], cmap.N)

lc = LineCollection(segments, cmap=cmap, norm=norm)
lc.set_array(dydx)
lc.set_linewidth(2)

line = axs[1].add_collection(lc)
fig.colorbar(line, ax=axs[1])

axs[0].set_xlim(x.min(), x.max())
axs[0].set_ylim(-1.1, 1.1)

plt.show()

出力

次の出力が生成されます-

matplotlibの折れ線グラフのデータインデックスで線の色を変える方法は?


  1. Matplotlibを使用した離散値のヒストグラム

    matplotlibを使用して離散値のヒストグラムをプロットするには、 hist()を使用できます。 メソッド。 ステップ 図のサイズを設定し、サブプロット間およびサブプロットの周囲のパディングを調整します。 離散値のリストを作成します。 hist()を使用する bins=データの長さでデータをプロットする方法 およびedgecolor=black 。 図を表示するには、 show()を使用します メソッド。 例 from matplotlib import pyplot as plt plt.rcParams["figure.figsize&quo

  2. Matplotlibのヒストグラムデータから折れ線グラフをプロットするにはどうすればよいですか?

    matplotlibのヒストグラムデータから折れ線グラフをプロットするには、numpyヒストグラム法を使用して一連のデータのヒストグラムを計算します。 ステップ 現在の図にサブプロットを追加します。nrows=2、ncols =1 およびインデックス=1 。 numpyヒストグラム法を使用して、一連のデータのヒストグラムを取得します。 hist()を使用してヒストグラムをプロットします edgecolor =blackを使用するメソッド 。 インデックス2では、計算されたデータを使用します(numpyヒストグラムから)。それらをプロットするには、 plot()を使