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

Python – scipy.interpolate.interp1d


interp1d() scipy.interpolateの機能 パッケージは、1-D関数を補間するために使用されます。関数y=f(x)を近似するには、xやyなどの値の配列が必要です。 次に、補間を使用して新しいポイントの値を見つけます。

構文

scipy.interpolate.interp1d(x, y)

ここで、xは実数値の1次元配列であり、yは実数値のN次元配列です。補間軸に沿ったyの長さは、xの長さと等しくなければなりません。

例1

次の例を考えてみましょう-

# Import the required libraries
import matplotlib.pyplot as plt
import numpy as np
from scipy import interpolate

# Set the figure size
plt.rcParams["figure.figsize"]=[7.00, 3.50]
plt.rcParams["figure.autolayout"]=True

# Define the values
x = np.arange(0, 10)
y = np.exp(-x/5.0)

# Input Data
plt.subplot(1,2,1)
plt.title("Input X and Y")
plt.plot(x,y)

# Interpolated Data
plt.subplot(1,2,2)
plt.title("Interpolated")
f = interpolate.interp1d(x, y)
x_new = np.arange(0, 7, 0.7)
y_new = f(x_new)
plt.plot(x_new, y_new, 's')

plt.show()

出力

上記のプログラムは、次の出力を生成します-

Python – scipy.interpolate.interp1d

例2

別の例を見てみましょう-

# Import the required libraries
import matplotlib.pyplot as plt
import numpy as np
from scipy import interpolate

# Set the figure size
plt.rcParams["figure.figsize"]=[7.00, 3.50]
plt.rcParams["figure.autolayout"]=True

# Define the values
x = np.arange(0, 10)
y = np.exp(-x **2/9.0)

# interpolate function
f = interpolate.interp1d(x, y)
xnew = np.arange(0, 9, 1.2)
plt.plot(x, y, 'o', xnew)

plt.show()

出力

上記のプログラムは、次の出力を生成します-

Python – scipy.interpolate.interp1d


  1. サブプロットのPythonxticks

    サブプロットは図をnrow*ncolsの部分に分割でき、plt.xticksはサブプロットのxticksをプロットするのに役立ちます。 ステップ 1行目と2行目の2つのリストを作成します。 現在の図にサブプロットを追加します。nrow=1、ncols =2、index=1です。 破線のスタイルで線1を描画します。 自動スケーリングマージン(0.2)を設定または取得します。 xticksを均等な場所に配置します。 X軸のタイトルを設定します。 現在の図にサブプロットを追加します。nrow=1、ncols =2、index=2です。 2行目をプロット

  2. Pythonで複数のグラフを組み合わせる方法

    はじめに Matplotlibを使用すると、同じグラフに複数のプロットを追加できます。このチュートリアルでは、2つの異なる軸で同じプロットにデータを表示する方法を示します。 その方法.. 1. pythonコマンドプロンプトを開き、pip install matplotlibを起動して、matplotlibをインストールします。 import matplotlib.pyplot as plt 2.表示するデータを準備します。 import matplotlib.pyplot as plt # data prep (I made up data no accuracy in these