您现在的位置是:网站首页> 编程资料编程资料

python数据可视化之日期折线图画法_python_

2023-05-26 358人已围观

简介 python数据可视化之日期折线图画法_python_

本文实例为大家分享了python日期折线图画法的具体代码,供大家参考,具体内容如下

引入

什么是折线图:

折线图是排列在工作表的列或行中的数据可以绘制到折线图中。折线图可以显示随时间(根据常用比例设置)而变化的连续数据,因此非常适用于显示在相等时间间隔下数据的趋势。
在折线图中,类别数据沿水平轴均匀分布,所有值数据沿垂直轴均匀分布。

以上引用自 百度百科 ,简单来说一般折线图 是以时间作为 X 轴 数据 作为 Y轴,这当然不是固定的,是可以自行设置的。

话不多说, 进入正题

第一种画法:

import numpy as np import pandas as pd import matplotlib.pyplot as plt import matplotlib.dates as mdate from matplotlib.pyplot import rcParams  %matplotlib inline # 防止中文乱码 rcParams['font.sans-serif'] = 'kaiti' # 生成一个时间序列  time =pd.to_datetime(np.arange(0,11), unit='D',                    origin=pd.Timestamp('2019-01-01')) # 生成数据 data = np.random.randint(10,50,size=11) # 创建一个画布 fig = plt.figure(figsize=(12,9)) # 在画布上添加一个子视图 ax = plt.subplot(111) # 这里很重要  需要 将 x轴的刻度 进行格式化 ax.xaxis.set_major_formatter(mdate.DateFormatter('%Y-%m-%d')) # 为X轴添加刻度 plt.xticks(pd.date_range(time[0],time[-1],freq='D'),rotation=45) # 画折线 ax.plot(time,data,color='r') # 设置标题 ax.set_title('折线图示例') # 设置 x y 轴名称 ax.set_xlabel('日期',fontsize=20) ax.set_ylabel('销售量',fontsize=20)

注解

1、x 轴接收的日期类型 必须是下图:

2、关于 pd.to_time() 中的参数 其中 uint = ‘D’ 表示 0~10 中全天 origin=pd.Timestamp(‘2019-01-01’) 表示起源 也就是 从 1月1号开始算起

3、ax.xaxis.set_major_formatter(mdate.DateFormatter(’%Y-%m-%d’)) 如果想要显示 x轴为日期类型 必须使用 格式化 格式化可以自行设置

4、pd.date_range(time[0],time[-1],freq=‘D’) 不要忘记还需要自己手动添加刻度

第二种画法:

import pyecharts.options as opts from example.commons import  Faker from pyecharts.charts import Line import pandas as pd # 处理一下时间   start = '2019-01-01' end = '2019-01-10' t = pd.date_range(start=start,end=end).tolist() time_ = [] for i in t:     i  = str(i)[:-8]     time_.append(i) def line_base() -> Line:     c = (         Line()         .add_xaxis(time_)         .add_yaxis("商家A", np.random.randint(100,400,size=10).tolist())         .add_yaxis("商家B", np.random.randint(100,400,size=10).tolist())         .set_global_opts(title_opts=opts.TitleOpts(title="Line-基本示例"),         yaxis_opts=opts.AxisOpts(name='商家销售情况'),         xaxis_opts=opts.AxisOpts(name='销售日期')                                  )     )     return c # 在 jupyter notebook 上渲染 line_base().render_notebook()

好啦~先写到这里了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

-六神源码网