我想提取matplotlib用于生成蓝色拟合曲线的点(我不是在谈论已生成的数据点)。我说的是matplotlib曲线的基础点。
# First generate some data
import numpy as np
# Seed the random number generator for reproducibility
np.random.seed(0)
x_data = np.linspace(-5, 5, num=50)
y_data = 2.9 * np.sin(1.5 * x_data) + np.random.normal(size=50)
# And plot it
import matplotlib.pyplot as plt
plt.figure(figsize=(6, 4))
plt.scatter(x_data, y_data)
# Now fit a simple sine function to the data
from scipy import optimize
def test_func(x, a, b):
return a * np.sin(b * x)
params, params_covariance = optimize.curve_fit(test_func, x_data, y_data,
p0=[2, 2])
print(params)
# And plot the resulting curve on the data
plt.figure(figsize=(6, 4))
plt.scatter(x_data, y_data, label='Data')
plt.plot(x_data, test_func(x_data, params[0], params[1]),
label='Fitted function')
plt.legend(loc='best')
plt.show()
Expected result (circles: blue data points; curve: blue colored curve)
可以提取这一系列点(我只是不知道如何),并使用另一个绘图程序单独绘制出拟合曲线/直线(蓝色曲线)。
答案 0 :(得分:0)
@Bazingaa提供了一个有用的答案。我对他的评论中的问题已由另一篇帖子回答。该帖子是: Python Seaborn Distplot Y value corresponding to a given X value