python中的json数据和pyecharts模块入门

news2024/11/19 15:15:39

目录

一·json数据格式

1.什么是json

2.json有什么用

 3.json格式数据转化

4.python数据和json数据的相互转化

 5.json总结

二.pyecharts模块入门

1.基础折线图

全局配置选项——set_global_opts方法


 

一·json数据格式

1.什么是json

  • JSON是一种轻量级的数据交互格式。可以按照.JSON指定的格式去组织和封装数据
  • JSON本质上是一个带有特定格式的字符串

主要功能

json就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互

类似于:·国际通用语言-英语;中国56个民族不同地区的通用语言-普通话

2.json有什么用

各种编程语言存储数据的容器不尽相同,在Python中有字典dict这样的数据类型,而其它语言可能没有对应的字典
为了让不同的语言都能够相互通用的互相传递数据,JSON就是一种非常良好的中转数据格式。如下图,以Python和C语言互传数据为例:

 3.json格式数据转化

 我们发现,json数据的格式就是python中的字典或者列表里面嵌套的是字典

4.python数据和json数据的相互转化

演示

#导入json模块
import json
#准备合格式jsom格式要求的python数据
data=[{"name":"张三","age":12},{"name":"李四","age":22}]
#通过json.dumps(data)方法把python数据转化为json格式
data1=json.dumps(data)
print(f"data1的类型是{type(data1)},内容是{data1}")
#通过json.loads(data)方法把json数据转化为python数据
data2=json.loads(data1)
print(f"data2的类型是{type(data2)},内容是{data2}")

结果是

 我们发现:

json数据格式类型就是字符串
数据转为json格式时,中文出现了错误

解决方法

data1=json.dumps(data,ensure_ascii=False)

后面加上ensure_ascii=False,这里就是说不使用ASCLL来转化它

 

#通过json.loads(data)方法把json数据转化为python数据
a='{"姓名":"周杰伦","地名":"台北"}'
print(f"{type(a)}\n{json.loads(a)}\n{type(json.loads(a))}")

结果是

 5.json总结

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

json格式数据转化
通过json. dumps(data)方法把python数据转化为了json数据
data = json. dumps(data)如果有中文可以带上: ensure_ascii=False参数来确保中文正常转换
通过json.loads(data)方法把josn数据转化为了 python列表或字典

二.pyecharts模块入门

如果想要做出数据可视化效果图,可以借助pyecharts模块来完成
Echarts是个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可.而Python是门富有表达力的语言,很适合用于数据处理.当数据分析遇上数据可视化时pyecharts诞生了。

这里介绍一个网址:gallery.pyecharts.org

这里面包含了pyecharts中的所有图表,如果有需要或者忘记了相关代码就可以进去查看

 

 

 这里我只是简单讲解一下怎么使用pyecharts这个模块,以基本折线图为例

1.基础折线图

演示

#导包,导入line功能构建折线图对象
from pyecharts.charts import Line
line = Line()#得到折线图对象
line.add_xaxis(["中国","美国","欧洲"])#添加x轴数据
line.add_yaxis("GDP",[40,50,30])#添加y轴数据
line.render()#生成图表

点开文件之后

 

 再点击右上角的任一浏览器(拥有的)

最后结果就是这样

 pyecharts模块中有很多的配置选项,常用到2个类别的选项:

  • 全局配置选项
  • 系列配置选项

这次先讲解全局配置选项

全局配置选项——set_global_opts方法

效果如图:

 比如

 我们再以上面那个折线图举例

#导包,导入line功能构建折线图对象
from pyecharts.charts import Line
from pyecharts.options import TitleOpts,ToolboxOpts,VisualMapOpts

line = Line()#得到折线图对象
line.set_global_opts(
    title_opts=TitleOpts(title="GDP展示",pos_left="center",pos_bottom="1%"),
    toolbox_opts=ToolboxOpts(is_show=True),
    visualmap_opts=VisualMapOpts(is_show=True)
)
line.add_xaxis(["中国","美国","欧洲"])#添加x轴数据
line.add_yaxis("GDP",[40,50,30])#添加y轴数据
line.render()#生成图表

结果是

 全局选型有十几个,常用的有

  • 配置图表的标题
  • 配置图例
  • 配置鼠标移动效果
  • 配置工具栏
  • 等整体配置项

还有很多怎么办呢?

可以点击网址:pyecharts.org

 

 在里面就可以找自己需要的部分

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/112465.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RabbitMQ 第一天 基础 3 RabbitMQ 快速入门 3.2 入门程序【消费者】

RabbitMQ 【黑马程序员RabbitMQ全套教程,rabbitmq消息中间件到实战】 文章目录RabbitMQ第一天 基础3 RabbitMQ 快速入门3.2 入门程序3.2.1 消费者3.2.2 小结第一天 基础 3 RabbitMQ 快速入门 3.2 入门程序 3.2.1 消费者 之前我们 已经完成了生产者的基本代码编…

客快物流大数据项目(九十八):ClickHouse的SQL函数

文章目录 ClickHouse的SQL函数 一、​​​​​​​​​​​​​​类型检测函数

Verilog刷题HDLBits——Exams/review2015 fancytimer

Verilog刷题HDLBits——Exams/review2015 fancytimer题目描述代码结果题目描述 This is the fifth component in a series of five exercises that builds a complex counter out of several smaller circuits. You may wish to do the four previous exercises first (counte…

gateway中的限流与熔断

目录 1. 限流的使用场景 2. gateway限流实现 2.1 前提: 2.2 导入依赖包 2.3 在项目配置文件中配置redis 2.4 开发限流需要的Bean 2.5 为服务配置限流参数 2.6 压力测试 3. 熔断 3.1 熔断的使用场景 3.2 熔断配置 1. 限流的使用场景 为什么限流 限流就是限…

【点云检测】OpenPCDet 教程系列 [1] 安装 与 ROS运行

前言 主要是介绍库的使用,做笔记区 首先搜索的时候有个问题 一直在我脑子里 hhh 就是MMlab其实还有一个叫mmdetection3d 的库,然后搜的时候发现 hhh 有网友和我一样的疑惑: OpenPCDet和mmdetection3d有什么区别 ? - 知乎 (zhihu.com) 这…

在无序数组中求第K小的数

在无序数组中求第 KKK 小的数 改写快排的方法 【思路】在该无序数组中 随机 选择一个数 vvv,拿 vvv 去做整个数组的荷兰国旗问题,即将数组分成三个区域 “小于vvv | 等于 vvv | 大于 vvv”,每个区域都不要求有序,不过等于 vvv 的…

学习记录-mybatis+vue+elementUi实现分页查询(后端部分)

这一部分的实现确实让我学到不少东西。不管是后端还是前端部分的实现。 首先需要明确的是,实现分页查询,我们需要从前端获取到几个参数?第一个是当前在第几页,第二个是每一页有多少个值。分别叫做:currentPage和pageSi…

Redis集群之AKF架构原理

当我们搭建集群之前,先要想明白需要解决哪些问题,搞清楚这个之前先回想一下单节点、单实例、单机有哪些问题? 单点故障:只有一台Redis的话,如果出现故障,那么整个服务都不可用缓存容量:单台Red…

【Django项目开发】用户注册模型类、序列化器类、视图类设计(三)

文章目录一、模型类设计1、Django认证系统提供了用户模型类User,为什么还要定义User模型类?2、AbstractUser3、自定义用户模型类的字段有4、User模型类编写好了就可以了吗?二、序列化器类设计1、注意2、单字段进行校验3、用户认证的时候为什么不用create,而用crea…

C++构造函数和析构函数

(一)构造函数 要点 定义:构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 &#xff0…

网络协议知识串讲-第38讲-用双十一的故事串起碎片的网络协议(中)

上一节我们讲到,手机App经过了一个复杂的过程,终于拿到了电商网站的SLB的IP地址,是不是该下单了? 别忙,俗话说的好,买东西要货比三家。大部分客户在购物之前要看很多商品图片,比来比去,最后好不容易才下决心,点了下单按钮。下单按钮一按,就要开始建立连接。建立连接…

Spring Cache(边路缓存)

一、Spring Cache介绍 Spring Cache 是Spring - context-xxx.jar中提供的功能,可以结合EHCache,Redis等缓存工具使用。给用户提供非常方便的缓存处理,缓存基本判断等操作,可以直接使用注解实现。 ​ 在包含了Spring - context-xxx.jar的Spri…

07---vue前端实现增删改查

前端VUE通过请求后端实现增删改查&#xff0c;文末会有前端完整代码 1、实现查询功能 一、实现三个条件一起查询 后台需要实现这三个条件的模糊查询 UserController.java //分页查询GetMapping("/page")public IPage<User> findPage(RequestParam Integer p…

【Jenkins】学习笔记

学习笔记一、Jenkins1.1、Jenkins的作用二、下载安装2.1、安装环境2.2、安装GitLab2.3、安装Jenkins三、Jenkins Git Maven 部署配置3.1、安装maven插件3.2、新建项目3.3、自动发布到测试服务器四、publish over ssh 配置4.1、超时机制4.2、shell的日志输出4.3、运行前清理五…

网络地址转换NAT

目录 IP 地址空间即将面临耗尽的危险 NAT 缓解 IP 地址空间耗尽的问题 NAT 的基本方法 VPN 的要点 IP 地址空间即将面临耗尽的危险 互联网采用了无分类编址方式、动态分配IP地址等措施来减缓IP地址空间耗尽的速度 但由于互联网用户数目的激增&#xff0c;特别是大量小型办公…

Linux搭建DHCP服务

DHCP(Dynamic Host Confifuration Protocol,动态主机配置协议)它可以为客户自动分配IP地址、以及缺省网关、DNS服务器的IP地址等TCP/IP参数。 简单说,就是在DHCP服务器上有一个存放着IP地址、网关、DNS等参数。当客户端请求使用时,服务器则负责将相应的参数分配给客户端,…

win10环境下基于face_recognition搭建自己的人脸识别软件

在win10环境下安装face_recognition&#xff0c;了解face_recognition中api的使用&#xff0c;如人脸截取、人脸矫正、人脸特征提取、人脸关键点提取、人脸mask获取、人脸特征比对等功能。最后构建自己的人脸数据库&#xff0c;使用knn实现人脸识别软件。 1、安装face_recogni…

【圣诞特辑】码一个漂漂亮亮的圣诞树(Single Dog版)

目录 前言 一、C语言版圣诞树 1.代码实现 2.效果图 二、python版圣诞树 1.代码实现 2.效果图​ 三、html5版圣诞树 1.代码实现 2.效果图 总结 前言 圣诞节即将来临&#xff0c;圣诞树也是必不可少的装饰之一。圣诞树是一棵绿叶繁茂的树&#xff0c;上面挂满了彩色的灯…

Nginx学习笔记2【尚硅谷】

host文件修改时&#xff0c;可以更改用户组权限或者复制到某个有权限的位置修改完再复制替换之前的文件。 在server{}中&#xff0c;listenserver_name两个加一起是唯一的。 代理服务器就是一个网关。 配置Nginx反向代理&#xff1a; 注意&#xff1a;在写proxy_pass时&#xf…

java+selenium环境搭建

目录 1.写在前面的话: 2.下载谷歌驱动 3.添加Selenium依赖(我这里添加的是4.0.0版本的) 4.在操作过程中可能出现的问题&解决办法 目录 1.写在前面的话: 2.下载谷歌驱动 3.添加Selenium依赖(我这里添加的是4.0.0版本的) 1.写在前面的话: (1)java版本最低要求为8,Chro…