我正在拟合一组数据numpy.lstsq():
numpy.linalg.lstsq(a,b)[0]
Run Code Online (Sandbox Code Playgroud)
返回类似于:
array([ -0.02179386, 0.08898451, -0.17298247, 0.89314904])
Run Code Online (Sandbox Code Playgroud)
请注意,拟合解决方案是正浮子和负浮子的混合.
不幸的是,在我的物理模型中,拟合解决方案代表质量:因此我想强制lstsq()返回一组正值作为拟合的解.是否有可能做到这一点?
即
solution = {a_1, ... a_i, ... a_N} with a_i > 0 for i = {1, ..., N}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用matplotlib绘制干净的图形。这是我的代码:
fig = plt.figure(figsize = (6,6))
plt.grid(True)
plt.xlabel('time (s)',fontweight='bold')
plt.ylabel('density',fontweight='bold')
plt.plot(data1, data2, color = 'y', linewidth = 2)
plt.show()
Run Code Online (Sandbox Code Playgroud)
data2中的浮点数介于0.0001和0.001之间,所以当我执行此操作时,y轴具有类似'0.0001''0.0002'等的刻度。如何强制将刻度设为科学计数法('1e-3','1e -4'等)?谢谢 :)