python绘制qq图_Python如何绘制可视化图?给你一段代码,你能自己做出来吗

本文介绍了如何使用Python从CSV文件中读取数据并绘制时间序列趋势图,包括实际值和95%VaR线,同时展示了代码实现过程。
摘要由CSDN通过智能技术生成

ce9ec58896b814938a621a1312f9021c.png

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

喜欢的朋友欢迎关注小编,除了分享技术文章之外还有很多福利

没有数据生成的图像:

b09b6b5a6906508f9c736d0035b64b55.png

载入数据之后:

408963d690be58992a7466c17e8528d1.png

#时间序列趋势图

import csv

import matplotlib

import numpy as np

import pandas as pd

from datetime import datetime

from matplotlib import pyplot as plt

#读取CSV文件数据

file1='D:\\数据.csv'

for file2 in file1:

print('读取文件: %s ' % file2)

try:

with open(file1) as f: #打开这个文件,并将结果文件对象存储在f中

reader=csv.reader(f) #创建一个阅读器reader

header_row=next(reader) #返回文件中的下一行

date,r,VaR=[],[],[] #声明存储日期,最值的列表

for row in reader:

date1=datetime.strptime(row[0],'%Y/%m/%d') #将日期数据转换为datetime对象

date.append(date1) #存储日期

r1=float(row[3]) #将字符串转换为数字

r.append(r1) #存储温度最大值

VaR1=float(row[2])

VaR.append(VaR1) #存储温度最小值

except Exception as e:

print('读取错误 ', file2, ':', e)

zhfont1 = matplotlib.font_manager.FontProperties\

(fname="D:\\simhei.ttf")

#定义字体

matplotlib.rcParams['axes.unicode_minus']=False #解决负号'-'显示为方块的问题

#绘制图像

fig=plt.figure(dpi=128,figsize=(8,5))

plt.plot(date,r,label='r',linewidth=2,c='blue',alpha=1)#实参alpha指定颜色的透明度,0表示完全透明,1(默认值)完全不透明

plt.plot(date,VaR,'--',label='95%VaR',c='m',linewidth=2,alpha=1)

plt.fill_between(date,r,VaR,facecolor='blue',alpha=0.1) #给图表区域填充颜色

plt.title("差分收益率及其风险值时间序列趋势图",fontproperties=zhfont1,fontsize=12) #图坐标设置

plt.xlabel("时间 ",fontproperties=zhfont1,fontsize=10)

plt.ylabel("数值",fontproperties=zhfont1,fontsize=10)

plt.tick_params(axis='both',which='major',labelsize=10)

plt.legend() #图例显示

fig.autofmt_xdate() #绘制斜的日期标签

plt.grid(True) # 添加网格,true 首字母大写

plt.show() #显示图像

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值