【python】数据可视化开发

数据可视化开发

折线图

json数据格式

  • 一种轻量级的数据交互模式,可以按照JSON指定的格式去组织和封装数据
  • JSON本质上是一种带有特定格式的字符串
  • 负责不同编程语言中的数据传递和交互

python数据和json数据的相互转换

python 复制代码
# 导入json模块

# 准备符合json格式要求的python数据
data=[{"name":"张三","age":16},{"name":"李四","age":20}]
# 通过json.dumps(data)方法把python数据转化为json数据
data=json.dumps(data,ensure_ascii=False)	# 不使用ASCII码确保中文可以正常转换
# 通过json.loads(data)方法把json数据转化为python数据
data=json.loads(data)

pyecharts模块

python 复制代码
pip install pyecharts

构建基础折线图

python 复制代码
# 导包,导入Line功能构建折线图对象
from pyecharts.chart import Line

# 得到折线图对象
line=Line()
# 添加x轴数据
line.add_xaxis(["中国","美国","英国"])
# 添加y轴数据
line.add_yaxis("GDP",[30, 20, 10])
# 生成图表
line.render()

全局配置选项

set_global_opts方法

全局配置选项可以通过set_global_opts方法来进行配置(标题、图例、工具箱)。

python 复制代码
line.set_global_opts(
	title_opts=TitleOpts("测试",pos_left="center",pos_bottom="1%"),	# 标题
	legend_opts=LegendOpts(is_show=True),	# 图例
	toolbox_opts=ToolboxOpts(is_show=True),	# 工具箱
	visualmap_opts=VisualMapOpts(is_show=True),	# 视觉映射
	tooltip_opts=TooltipOpts(is_show=True),
)

数据处理

通过json模块对数据进行处理

python 复制代码
# 处理数据
f_us=open("D:/美国.txt","r",encoding="UTF-8")
us_data=f_us.read()
# 去掉不符合JSON规范的开头
us_data=us_data.replace("jsonp_1629344292311_69436(","")
# 去掉不符合JSON规范的结尾
us_data=us_data[:-2]
# JSON转python字典
us_dict=json.loads(us_data)
# 获取trend key
trend_data=us+dict['data'][0]['trend']
# 获取日期数据,用于x轴
x_data=trend_data['updateDate'][:314]
# 获取确诊数据,用于y轴
y_data=trend_data['list'][0]['data'][:314]
# 生成图表

完成折线图

python 复制代码
from pyecharts.charts import Line
# 生成图表
line=Line()	#构建折线图对象
# 添加x轴数据
line.add_xaxis(us_x_data)
# 添加y轴数据
line.add_yaxis("美国确诊人数",us_y_data)
line.add_yaxis("日本确诊人数",jp_y_data)
line.add_yaxis("印度确诊人数",in_y_data)
line.render()
# 关闭文件
f_us.close()
f_jp.close()
f_in.close()

地图

python 复制代码
# 地图可视化的基本使用
from pyecharts.chaarts import Map
# 准备地图对象
map=Map()
# 准备数据
data

动态柱状图

二级目录

三级目录

相关推荐
阿蒙Amon18 分钟前
【Python小工具】使用 OpenCV 获取视频时长的详细指南
python·opencv·音视频
m0_6873998419 分钟前
写一个Ununtu C++ 程序,调用ffmpeg API, 来判断一个数字电影的视频文件mxf 是不是Jpeg2000?
开发语言·c++·ffmpeg
爱上语文29 分钟前
Redis基础(5):Redis的Java客户端
java·开发语言·数据库·redis·后端
A~taoker35 分钟前
taoker的项目维护(ng服务器)
java·开发语言
萧曵 丶38 分钟前
Rust 中的返回类型
开发语言·后端·rust
hi星尘1 小时前
深度解析:Java内部类与外部类的交互机制
java·开发语言·交互
看到我,请让我去学习1 小时前
Qt编程-qml操作(js,c++,canvas)
开发语言·qt
橘子编程1 小时前
Python-Word文档、PPT、PDF以及Pillow处理图像详解
开发语言·python
杨超越luckly1 小时前
ArcGISPro应用指南:ArcGISPro制图全流程详解
arcgis·信息可视化·gis·制图·arcgispro
蓝婷儿1 小时前
Python 机器学习核心入门与实战进阶 Day 2 - KNN(K-近邻算法)分类实战与调参
python·机器学习·近邻算法