0

np.polyfit を使用していますが、注文 2 を実行すると、次のよじれが見られます。注文 1 を実行すると、すべて問題ないようです。

これがコードです。

import numpy as np
import matplotlib.pyplot as plt

x = [-14.35,  -9.35,   0.65, -14.35  ,-9.35,   0.65] 
y = [ 0.10172312,  0.08831127,  0.07764486,  0.11606595 , 0.10447722,  0.1000171 ]

coeffs = np.polyfit(x, y, 2)
poly = np.poly1d(coeffs)

fig = plt.figure()
xs = np.array([-14.35,  -9.35 ,  0.65])
ys = poly(xs) 
plt.plot(x, y, 'o')
plt.plot(xs, ys)

これは私が注文2で見るものです

これは私が注文1で見るものです

次数 2 (polyfit(x, y, 2)

4

1 に答える 1

3

に問題はありませんがpolyfit、結果の 2 次多項式をプロットするために 3 つの点のみを使用しています。そのように見えるのも不思議ではありません。を使用してさらにいくつかのポイントを生成しlinspaceます。交換するだけ

xs = np.array([-14.35,  -9.35 ,  0.65])

xs = np.linspace(min(x), max(x), 200)

結果:

ここに画像の説明を入力

于 2014-05-17T19:54:03.393 に答える