B站python入门学习---第一阶段第十章 数据可视化
*JSON数据格式
JSON是一种轻量级的数据交互格式,需要按照JSON指定的规则去组织和封装数据,其本质就是带有特定格式的字符串。
主要功能,负责不同编程语言中的数据传递和交换。JSON作为其中的“中转”。

JSON格式:一般是形如python中的字典格式,或者是元素内容为字典类型的列表格式

json模块的dumps()和loads()方法负责JSON格式数据和python数据类型的转换
""" 演示JSON数据和python字典的转换 """ import json #准备一个元素为字典格式的列表,将其转换为JSON data = [{"name" : "Tom", "age" : 18}, {"name" : "Jackie", "age" : 22}, {"name" : "Micky", "age" : 16}, {"name" : "Hanson", "age" : 19}] json_data = json.dumps(data) #如果涉及中文,要加第二个参数ensure_ascii = False print(type(json_data)) #转换后json数据格式为字符串 print(json_data) #将字典转换为JSON info_d = {"name" : "周杰林", "addr" : "台北", "age" : 45} json_info_d = json.dumps(info_d, ensure_ascii=False) print(type(json_info_d)) print(json_info_d) #把JSON格式字符串转换为python里的数据格式 json_str = '[{"name" : "Tom", "age" : 18}, {"name" : "Jackie", "age" : 22}, {"name" : "Micky", "age" : 16}, {"name" : "Hanson", "age" : 19}]' json_data1 = json.loads(json_str) print(type(json_data1)) print(json_data1) info_s = '{"name" : "周杰林", "addr" : "台北", "age" : 45}' json_data2 = json.loads(info_s) print(type(json_data2)) print(json_data2)
*pyecharts模块介绍
Echarts是百度提供的数据可视化的开源框架,Pyecharts是其python版本。
一个基础折线图构建的代码:
#导入pyecharts中charts模块中的Line功能 from pyecharts.charts import Line #创建一个折线图对象 line = Line() #添加x轴数据 line.add_xaxis(["中国", "美国", "英国", "日本", "德国", "俄罗斯", "法国", "印度"]) #添加y轴数据 line.add_yaxis("全球影响力指数", [80, 120, 70, 62, 68, 82, 72, 65]) #将line对象生成为图像 line.render()
pyecharts模块中有很多配置选项,常用的有两种类别选项:
1、全局配置选项:一般是对整体图像的配置选项,如标题,图例,工具箱等;通过set_global_options方法设置。TitleOpts为标题配置项,LegendOpts为图例配置项,ToolboxOpts为工具箱配置项,VisualMapOpts为视觉映射配置项,TooltipOpt为提示框配置项等;
2、系列配置选项:一般是针对具体的轴数据进行配置。
全局配置选项的示例:
#导入pyecharts中charts模块中的Line功能 from pyecharts.charts import Line from pyecharts.options import TitleOpts, LegendOpts, ToolboxOpts, VisualMapOpts #创建一个折线图对象 line = Line() #添加x轴数据 line.add_xaxis(["中国", "美国", "英国", "日本", "德国", "俄罗斯", "法国", "印度"]) #添加y轴数据 line.add_yaxis("全球影响力指数", [80, 120, 70, 62, 68, 82, 72, 65]) #设置全局配置项 line.set_global_opts( #设置标题名称及位置,需要导入TitleOpts模块 title_opts = TitleOpts(title="全球影响力指数数据", pos_left="center", pos_bottom="2%"), #设置图例,需要导入LegendOpts模块 legend_opts = LegendOpts(is_show=True), #设置工具箱,需要导入ToolboxOpts模块 toolbox_opts = ToolboxOpts(is_show=True), #设置视觉映射,需要导入VisualMapOpts模块 visualmap_opts = VisualMapOpts(is_show=True) ) #将line对象生成为图像 line.render()
浙公网安备 33010602011771号