数据可视化——用python绘制简单的折线图

慈云数据 2024-03-13 技术支持 43 0

在这里插入图片描述

文章目录

  • 前言
  • JSON
  • 使用 pyecharts 模块绘制折线图
    • 下载 pyecharts 模块
    • 使用 pyecharts 模块绘制简单的折线图
    • 添加配置选项

      前言

      前面我们已经学习了python的基础语法和面向对象,那么接下来我们将学习python编程语言的过人之处——数据的可视化之折线图。

      在这里插入图片描述

      JSON

      说到数据可视化,我们需要先知道什么是JSON。

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

        JSON的主要功能是:

        1. 数据序列化和传输:JSON可以将复杂的数据结构(如对象和数组)转换为字符串形式,以便在网络上进行传输。它跨平台兼容,可以在不同的编程语言中解析和生成。

        2. 人类可读的数据格式:JSON采用了简洁的文本格式,易于阅读和理解。它使用键/值对表示数据,并使用大括号({})表示对象,方括号([])表示数组。

        3. 对象表示:JSON支持对象表示,可以通过键/值对形式表示复杂的数据结构。键是字符串,值可以是字符串、数字、布尔值、对象、数组或null。

        4. 数组表示:JSON支持数组表示,可以在方括号中包含多个值,用逗号分隔。数组可以嵌套,允许存储多层次的数据结构。

        5. 数据交换和存储:JSON广泛用于数据交换和存储。它是许多API和服务的常用数据格式,可以方便地将数据从一个应用程序传输到另一个应用程序。

        6. 跨语言支持:JSON可以在不同的编程语言中解析和生成,因此在不同的平台上可以轻松地共享和处理数据。

          在这里插入图片描述

        因为JSON数据类型使用大括号{ }表示对象,方括号[ ]表示数组,而这样的形式在python中与字典和列表的表现方式相同,所以这就很方便。

        python 数据与 JSON数据的转换

        要进行 python 数据与 JSON 数据的转换,我们需要用到 python 的 json 模块中的 dumps 方法和 loads 方法。

        • json.dumps(data) 将 python 数据转换为 JSON 数据
        • json.loads(data) 将 JSON 数据转换为 python 数据
          import json
          data = [{'name':'张三','age':18},{'name':'李四','age':20}]
          json_str = json.dumps(data)
          print(type(json_str))
          result = json.loads(json_str)
          print(type(result))
          

          在这里插入图片描述

          因为 JSON 是一种带有特定格式的字符串,所以他的类型是 str 类型。

          使用 pyecharts 模块绘制折线图

          下载 pyecharts 模块

          我们需要先下载 pyecharts 模块。

          在 cmd 中使用 pip install pyecharts 命令下载 pyecharts 模块。

          在这里插入图片描述

          并且 pyecharts 还提供了官网 https://pyecharts.org/#/en-us/ 我么可以在官网中了解相关知识。

          在这里插入图片描述

          在 pyecharts-gallery 网站中,我们可以看到许多绘制的数据可视化图形并且附有参考代码。https://gallery.pyecharts.org/#/README_EN

          在这里插入图片描述

          使用 pyecharts 模块绘制简单的折线图

          我们需要用到 pyecharts 包下的 charts 模块下的 Line 方法。

          from pyecharts.charts import Line
          # 得到折线图对象
          line = Line()
          # 添加横坐标数据
          line.add_xaxis(["中国","美国","日本"])
          # 添加纵坐标数据
          line.add_yaxis("GDP",[30,20,10])
          # 生成图标
          line.render()
          

          但我们运行代码之后,会生成一个 render.html 文件。

          在这里插入图片描述

          在这里插入图片描述

          添加配置选项

          这样虽然绘制出了折线图,但是我们可以看到图形比较单调,所以我们可以一些配置选项。

          pyecharts 常用的两个配置选项:

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

            那么我们这篇文章主要添加全局配置选项。

            使用 set_global_opts 来进行全局配置。我们可以在官网中看有哪些可以配置的全局选项。

            在这里插入图片描述

            我们常使用的全局选项有这些。

            在这里插入图片描述

            这些配置方法都在 pyecharts.options 模块中,我们需要导入相应模块下的方法。

            from pyecharts.options import TitleOpts,LegendOpts,ToolboxOpts,VisualMapOpts
            

            我们也可以使用 CTRL + P 来查看参数列表

            在这里插入图片描述

            from pyecharts.charts import Line
            from pyecharts.options import TitleOpts,LegendOpts,ToolboxOpts,VisualMapOpts
            # 得到折线图对象
            line = Line()
            # 添加横坐标数据
            line.add_xaxis(["中国","美国","日本"])
            # 添加纵坐标数据
            line.add_yaxis("GDP",[30,20,10])
            # 添加全局配置选项
            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()
            

            在这里插入图片描述

            在这里插入图片描述

微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon