import matplotlib.pyplot as plt
x = [1,2,3,4,5,6]
y = [1,3,6,8,14,20]
plt.plot(x,y)
plt.show()
上面的情节有不同的斜率,我想从图中得到100个点,任何人都可以帮我找点吗?
答案 0 :(得分:2)
为了在曲线上找到100个点,您必须插入数据。一种方法是使用scipy.interpolate.interp1d
,可以找到文档here。
import matplotlib.pyplot as plt
import numpy as np
from scipy import interpolate
x =[1,2,3,4,5,6]
y = [1,3,6,8,14,20]
f = interpolate.interp1d(x,y)
xnew = np.linspace(x[0],x[-1],100)
plt.plot(x,y,'o')
plt.plot(xnew, f(xnew))
plt.show()
为了检查你有100分:
print (xnew.shape)
print (f(xnew).shape)
#(100,)
#(100,)