python时间序列如何拟合曲线_以“datetime”格式拟合时间序列的曲线?

本文探讨了在Python中如何处理datetime时间序列数据并进行曲线拟合。遇到的问题是polyfit函数不接受datetime类型,因此通过mktime转换为数值。然后在绘图时,希望轴上显示的是日期时间而非数值。示例代码展示了如何使用matplotlib库进行数据可视化,包括数据点、拟合曲线和误差条的绘制,但未解决日期时间轴的显示问题。
摘要由CSDN通过智能技术生成

这里是我的问题:polyfit不接受datetime值,因此我使用mktime生成多项式拟合函数来转换datetimez4 = polyfit(d, y, 3)

p4 = poly1d(z4)

但是,对于情节,我想要轴上的日期时间描述,却不知道该怎么做。你能帮助我吗?fig = plt.figure(1)

cx= fig.add_subplot(111)

xx = linspace(0, d[3], 100)

pylab.plot(d, y, '+', xx, p4(xx),'-g')

cx.plot(d, y,'+', color= 'b', label='blub')

plt.errorbar(d, y,

yerr,

marker='.',

color='k',

ecolor='b',

markerfacecolor='b',

label="series 1",

capsize=0,

linestyle='')

cx.grid()

cx.set_ylim(0,0.03)

plt.show()

其余代码:import numpy as np

import matplotlib.pyplot as plt

from matplotlib import axis

from datetime import datetime

from numpy import *

import pylab

import time

我的前4个时间数据点x = [datetime(1978, 7, 7),

datetime(1980, 9, 26),

datetime(1983, 8, 1),

datetime(1985,8,8)]

d=[]

for i in x:

d.append(time.mktime(i.timetuple()))

我的前4个数据值y = [0.00134328779552718,

0.00155187668863844,

0.0039431374327427,

0.00780037563783297]

误差条的计算标准差yerr = [0.0000137547160254577,

0.0000225670232594083,

0.000105623642510075,

0.00011343121508]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值