当前位置: 首页 > news >正文

6JSON格式转python并实现数据可视化

JSON数据格式

    json:是一种轻量级的数据交互格式,采用完全独立于编程语言的文本格式来存储和表示数(就是字符串)
Python语言使用JSON有很大优势,因为:JSON无非就是一个单独的字典或一个内部元素都是字典的列表,所以JSON可以直接和Python的字典或列表进行无缝转换。

JSON数据格式转换

json数据格式为str字符串,转换成python数据类型为dict或者list

转换语法:

首先要导入json模块

json转pyhon使用json.load函数

python转josn使用json.dumps函数,如果有中文使用ensure_ascii=False

#演示JSON数据和Python字典的相互转换
import json#准备列表,列表内每一个元素都是字典,将其转换为JSON
l=[{"name":"张大山","age":16},{"name":"赵子龙","age":26}]
j=json.dumps(l,ensure_ascii=False)
print(type(j))
print(j)#准备字典,将字典转换为JSON
distinct01={"name":"张大山","age":16},{"name":"赵子龙","age":26}
j2=json.dumps(distinct01,ensure_ascii=False)
print(type(j2))
print(j2)#将JSON字符串转换为Python数据类型[{k: v, k: v},{k: v, k: v}]
js1='[{"name":"张大山","age":16},{"name":"赵子龙","age":26}]'
py=json.loads(js1)
print(type(py))
print(py)#将JSON字符串转换为Python数据类型{k: v, k: v}
js2='{"name":"张大山","age":16}'
py2=json.loads(js2)
print(type(py2))
print(py2)

pyecharts包安装

pyecharts 是一个基于百度 ECharts 的 Python 可视化库,能够生成交互式、高质量的图表,支持折线图、柱状图、地图、饼图等多种图表类型,且代码简洁易上手。

安装方法:

1cmd命令行中输入pip install pyecharts

2pycharm中手动搜索安装

如果遇到安装后,无法导入包的情况,可以按照以下步骤排错

1cmd查看python基础解释器

2pycharm更改解释器为基础解释器

3可以正常导入了

pyechart如何绘制折线图

在 pyecharts 中,图表配置主要分为 全局全局参数和系列参数,分别用于控制图表的整体样式和单个数据系列的特性。

#导包
from pyecharts.charts import Line#创建一个折线图对象
line =Line()#添加x轴数据
line.add_xaxis(xaxis_data=["中国","美国"])#添加y轴数据,必须包括series参数和数据,gdp为series参数
line.add_yaxis('gdp',[10,20])#生成图像
line.render()

综合案例:美国疫情数据可视化

准备一份json格式的数据,将其制成折线图

import json
from pyecharts.charts import Line#处理数据
f_us=open("C:\\Users\y\Desktop\美国.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轴,取2020年(到314下标结束)
x_data=trend_data["updateDate"][:314]#获取确认数据,用于y轴,取2020年(到314下标结束)
y_data=trend_data["list"][0]["data"][:314]#生成图表
line =Line()
line.add_xaxis(x_data)
line.add_yaxis(series_name="确诊病例数",y_axis=y_data)
line.render()#关闭文件对象
f_us.close()

http://www.dtcms.com/a/334147.html

相关文章:

  • RJ45 网口集成万兆(10Gbps)以太网的核心是通过物理层技术革新和信号处理优化,在传统铜缆(双绞线)介质上突破速率限制,其原理可从以下几个关键维度解析
  • Express开发快速学习
  • 探秘gRPC——gRPC原理详解
  • B3924 [GESP202312 二级] 小杨的H字矩阵
  • Flink Stream API 源码走读 - window 和 sum
  • Kubernetes Service
  • Google C++ 风格指南
  • 大模型教机器人叠衣服:2025年”语言理解+多模态融合“的智能新篇
  • Cmake学习笔记
  • 小白学习《PCI Express体系结构导读》——第Ⅰ篇第1章PCI总线的基本知识
  • 如何使用 Git 修改已推送 Commit 的用户名和邮箱
  • FFmpeg QoS 处理
  • 正点原子【第四期】Linux之驱动开发篇学习笔记-1.1 Linux驱动开发与裸机开发的区别
  • C语言(11)—— 数组(超绝详细总结)
  • [论文阅读] 人工智能 | 对话中的属性与情感:LLM如何通过多代理反思实现细粒度理解
  • 利用爬虫按图搜索淘宝商品(拍立淘)实战指南
  • 教材采购管理系统(java)
  • OpenEuler 等 Linux 系统中运行 Vue 项目的方法
  • 【P14 3-6 】OpenCV Python——视频加载、摄像头调用、视频基本信息获取(宽、高、帧率、总帧数)
  • C++ string类操作全解析(含模拟实现)
  • 高等数学 8.4 空间直线及其方程
  • [Linux] Linux硬盘分区管理
  • AI 搜索时代:引领变革,重塑您的 SEO 战略
  • MySQL异步连接池的学习(五)
  • PHP反序列化的CTF题目环境和做题复现第2集_POP链构造
  • 生产环境Redis缓存穿透与雪崩防护性能优化实战指南
  • 马拉松|基于SSM的马拉松报名系统微信小程序的系统设计与实现(源码+数据库+文档)
  • 【数据分享】大清河(大庆河)流域上游土地利用
  • Java设计模式详细解读
  • 双向SSL认证之Apache实战配置