JSON格式数据转化
json数据和python字典的相互转换:
通过json.dumps(data)方法把python数据转化为了json数据
data=json.dumps(data)
如果有中文可以带上:ensure_ascii=False参数来确保中午跟正常转换
import json
data=[{"name":"aaa","age":11},{"name":"lll","age":13},{"name":"zzz","age":12}]
json_str=json.dumps(data)
print(type(json_str))
print(json_str)
#准备字典,将自动转换为json
d=[{"name":"aaa","age":11},{"name":"lll","age":13},{"name":"zzz","age":12}]
json_str=json.dumps(d,ensure_ascii=False)
print(type(json_str))
print(json_str)
结果;
<class 'str'>
[{"name": "aaa", "age": 11}, {"name": "lll", "age": 13}, {"name": "zzz", "age": 12}]
<class 'str'>
[{"name": "aaa", "age": 11}, {"name": "lll", "age": 13}, {"name": "zzz", "age": 12}]
pyecharts模块
基础折线图:
#导包,导入line功能构建折线图对象
from pyecharts.charts import Line
from pyecharts.options import TitleOpts,LegendOpts,ToolboxOpts,VisualMapOpts
#得到折线图对象
line=Line()
#添加x轴数据
line.add_xaxis(["中国","美国","英国"])
line.add_yaxis("GDP",[30,20,10])
#设置全局配置set_global_opts
line.set_global_opts(
title_opts=TitleOpts(title="GDP展示",pos_left="center",pos_bottom="1%"),
legend_opts=LegendOpts(is_show=True),
toolbox_opts=ToolboxOpts(is_show=True),
visualmap_opts=VisualMapOpts(is_show=True),
)
#生成图表
line.render()
结果:
set_global_opts方法
这里全局配置选项可以通过set_global_opts方法来进行配置,相应的选项和选项的功能
import json
from pyecharts.chats import line
#处理数据
f_us= open("op.txt",encoding="utf-8")
us_data=f_us.read()
#去掉不合JSON规范的开头
us_data = us_data.replace("asjbxdasdij","")
#去掉不合JSON规范的开头
us_data = us_data[:-2]
#JSON转python字典
us_dict=json.loads(us_data)
#获取trend_key
us_trend_data=us_dict['data'][0]['trend']
#获取日期数据,用于x轴,取2020年(到314下标结束)
us_x_data = us_trend_data['updataDate'][:314]
#获取日期数据,用于y轴,取2020年(到314下标结束)
us_y_data = us_trend_data['updataDate'][:314]
#生成图表
line =line()
#添加x,y轴数据
line.add_xaxis(us_x_data)
line.add_yaxis(us_y_data)
#调用render方法生成图表
line.render()
#关闭文件对象
f_us.close()