用matplotlib进行数据可视化并储存图片,附提高图片分辨率方法

20201118初稿
昂,这算是个摘要好了,具体内容得往下看。
每一次画图前,记得调用plt.cla()清除一下画布。。。不然会很难看的。。。
让保存的图片更清晰,可以在保存的时候修改dpi参数还有另外一个bbox_inches="tight"这样子
过段时间贴代码好了!

20201126贴代码

背景

这其实是两个实验。第一个实验是要基于我前好几个博客提到的那个制作停留点用于可视化的输出的数据文件来画出停留时长在10/20/30/。。。等时间段的停留车数目。第二个是要画一下停留的图。

在这之前,我把stop.txt转换成了json文件,不细讲了,用c++嗯转json,就嗯转……

代码

尝试了一下英文做注释,毕竟pycharm是英文的,感觉比较协调,也不容易出现换个编辑器就乱码的情况比如注释乱码
呜呜呜,就试试用英文注释吧。

这个里面,用到了python里的json库,math,numpy,matplotlib库。用json库里的方法导入json、处理json、导出json都是很方便的,而且有许多前辈已经讲过了使用方法,在这里就不细说了。

#lab1

# The unit of stopTime is seconds.
import json
import math
import numpy as np
from matplotlib import pyplot as plt

#input json file
data = json.load(open("stopJson.json"))

#stopTime storage
array_stopTime=[]

#calculate all stopTime
#I think I can do a lot in this loop
#but I can't because subsequent operations are done by results from previous steps
for i in data["points"]:
    array_stopTime.append(i["stopTime"])

#calculate final stopTime array
array_stopTimeInNumpy = np.array(array_stopTime)

#calculate max index of stopTime
maxIndexOfStopTime = np.argmax(array_stopTimeInNumpy)

#final draw-used array which stored the quantity of cars in a specific range of stopTime
stopMinutesNumCars = []
endTime= math.floor(data["points"][np.argmax(array_stopTimeInNumpy)]["stopTime"] / 60) + 1

for i in range(0,endTime):
    stopMinutesNumCars.append(0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值