Python 拟合太阳数据的多项式作图法
我花了大约2.5个小时坐在这里,试图让一件非常简单的事情开始工作,但我已经到了无法用新的眼睛看到它的地步。所以,尽管这很简单,但我真的可以得到一些帮助,因为我感到沮丧 问题是用python绘制多项式,很简单吧? 所以我从excel中得到了一个多项式拟合,它看起来非常像高斯函数,但这并不重要。然而,我的绘图代码似乎无法处理它。尽管我的项目中的代码以完全相同的方式运行,但没有问题 忽略随机导入,因为它只是我主文档中的一个复制粘贴jobby 它应该看起来像我附上的照片。但现在它在我脸上爆炸了。这可能是一个非常简单的问题,但我已经盯着它太久了,所以我对它视而不见 非常感谢那些花时间帮助我的人。我真的很感激!Python 拟合太阳数据的多项式作图法,python,matplotlib,Python,Matplotlib,我花了大约2.5个小时坐在这里,试图让一件非常简单的事情开始工作,但我已经到了无法用新的眼睛看到它的地步。所以,尽管这很简单,但我真的可以得到一些帮助,因为我感到沮丧 问题是用python绘制多项式,很简单吧? 所以我从excel中得到了一个多项式拟合,它看起来非常像高斯函数,但这并不重要。然而,我的绘图代码似乎无法处理它。尽管我的项目中的代码以完全相同的方式运行,但没有问题 忽略随机导入,因为它只是我主文档中的一个复制粘贴jobby 它应该看起来像我附上的照片。但现在它在我脸上爆炸了。这可能是
将numpy导入为np
随机输入
将matplotlib.pyplot导入为pyplot
时基=1440
t0=0
ts=np.arange(t0,时基,1)#以1分钟的间隔创建介于0和最大值之间的范围
def solar():
数值=np.数组(范围(时基),数据类型=浮点)#辐照度ie//功率/m^2
#太阳辐照度参数:
对于范围内的t(时基):
如果0如果你通过wolframalpha.com绘制你的函数,对于t=0到3000,你会看到一条与照片上完全不同的曲线。公式一定是错误的,或者t和x之间一定存在某种奇怪的转换。很可能,您需要比显示的有效数字多得多的有效数字。你能从照片上的方程式中得到更多的数字吗?约翰,你解出来了!有效数字把事情搞砸了。我从来没想到会有这么大的不同。不管怎样,非常感谢您如果您通过wolframalpha.com绘制函数,对于t=0到3000,您会看到与照片上完全不同的曲线。公式一定是错误的,或者t和x之间一定存在某种奇怪的转换。很可能,您需要比显示的有效数字多得多的有效数字。你能从照片上的方程式中得到更多的数字吗?约翰,你解出来了!有效数字把事情搞砸了。我从来没想到会有这么大的不同。不管怎样,谢谢你
import numpy as np
import random
import matplotlib.pyplot as pyplot
timebase = 1440
t0 = 0
ts = np.arange(t0, timebase, 1) # Create range between 0 and Max with 1 min spacing
def solar():
values = np.array( range(timebase), dtype = float) # Irradiance ie// Power / m^2
# Solar Irradiance Parameters:
for t in range(timebase):
if 0 <= t < 210:
values[t] = 0.00
if 210 <= t < 1290:
values[t] = ( (-2.00E-16)*(t**6) ) + ( (9.00E-13)*(t**5) ) - ( (1.00E-9)*(t**4) ) + ( (1.00E-6)*(t**3) ) - ( (0.0004)*(t**2) ) + ( (0.0795)*(t) ) - 5.4647
if t >= 1290:
values[t] = 0.00
# Irradiance Efficiency Parameters
return values
Test_sol = solar()
pyplot.plot(ts, Test_sol, color = 'b', linewidth = 0.5)
pyplot.ylabel("Solar Power, kW")
pyplot.xlabel("Time (Minutes)")
pyplot.legend()
pyplot.ylim(0,)
pyplot.show()