【发布时间】:2019-04-09 11:35:53
【问题描述】:
这是我现在拥有的代码,我有一些数据,我希望保留不确定性条。我需要的scipy 是什么?
import matplotlib
import numpy as np
import matplotlib.pyplot as plt
import statistics
from statistics import stdev
y1 = [73.64, 76.47, 75.70, 71.71, 73.70, 79.39]
y2 = [219.70, 206.96, 235.31, 189.91, 256.48, 210.25]
y3 = [241.11, 271.70, 255.19, 229.67, 222.30, 200.70]
y4 = [256.59, 263.97, 262.17, 243.14, 245.42, 256.55]
y1_mean = statistics.mean(y1)
y2_mean = statistics.mean(y2)
y3_mean = statistics.mean(y3)
y4_mean = statistics.mean(y4)
y = np.array([y1_mean, y2_mean, y3_mean, y4_mean])
x = np.array([0,0.3,1.5,3])
e = np.array([stdev(y1), stdev(y2), stdev(y3), stdev(y4)])
plt.errorbar(x, y, e, linestyle = 'none', color = 'turquoise' )
plt.scatter(x, y, color = 'green')
plt.xlabel('x-coordinates')
plt.ylabel('y-coordinates')
plt.title('Sample graph')
plt.show()
我希望它是这样的,但适合我的数据:
【问题讨论】:
-
根据 log(x)
a, b = np.polyfit(np.log(x), y, 1)拟合 y,并绘制它plt.plot(x, b+a*np.log(x)) -
请同时显示您的所有导入,以便于复制和粘贴代码。
-
已更新,因此可以根据要求更轻松地@Cleb
标签: python numpy matplotlib scipy curve-fitting