python学习之路 - pyecharts快速入门

一、pyecharts入门

1、pyecharts模块介绍

a、概况

Echarts是百度开源的数据可视化,由于python的出现,数据可视化pyecharts也就诞生了
pyecharts官网
pyecharts画廊:画廊中提供了一些图标的源码, 直接复制代码即可使用

2、pyecharts基础入门(以折线图为例)

a、安装依赖

pyCharm需要提前安装pyecharts第三方包,具体操作方法可以看 此文章第六点

b、创建折线图
  1. 创建.py文件
from pyecharts.charts import Line
#得到折线图对象
line = Line()
#添加x轴数据
line.add_xaxis(["衬衫","羊毛衫","雪纺衫"])
#添加y轴数据
line.add_yaxis("商家A",[5,20,36])
#生成图表
line.render()
  1. 在.py文件中右键运行
  2. 在项目根目录中会生成一个render.html文件
    在这里插入图片描述
  3. 浏览器中打开此页面,就能得到对应的折线图
    在这里插入图片描述
c、常用配置项

pyecharts配置项分为:全局配置选项和系列配置选项

  • 全局配置选项
    • 基本介绍:针对整个图像进行设置,比如图像的标题,图像的图例,工具箱
    • 设置方法:使用set_global_opts方法进行设置,具体有那些配置项可以去官网查看
from pyecharts.charts import Line
from pyecharts import options as opts
#得到折线图对象
line = Line()
#添加x轴数据
line.add_xaxis(["衬衫","羊毛衫","雪纺衫"])
#添加y轴数据
line.add_yaxis("商家A",[5,20,36])
#设置全局配置项
line.set_global_opts(
    #设置标题,设置居中展示,设置距离底部0%的距离
    title_opts=opts.TitleOpts(title="这是主标题", subtitle="这是副标题",pos_left="center",pos_bottom="0%"),
    #控制图例,图例是默认显示的
    legend_opts=opts.LegendOpts(is_show=True),
    #设置工具箱
    toolbox_opts=opts.ToolboxOpts(is_show=True),
    #设置视觉映射
    visualmap_opts=opts.VisualMapOpts(is_show=True)
)
#生成图表
line.render()

在这里插入图片描述

  • 系列配置选项
    • 基本介绍:针对具体的轴数据进行配置,比如y轴的某个数据
    • 设置方法:在设置y轴数据时,后面添加各种配置项
from pyecharts.charts import Line
from pyecharts import options as opts
#得到折线图对象
line = Line()
#添加x轴数据
line.add_xaxis(["衬衫","羊毛衫","雪纺衫"])
#添加y轴数据,配置不显示y轴每个具体数据值的展示
line.add_yaxis("商家A",[5,20,36], label_opts=opts.LabelOpts(is_show=False))
#生成图表
line.render()

在这里插入图片描述

3、pyecharts创建柱状图

a、创建基本柱状图

在创建柱状图前,需要了解第二步中的基础入门介绍,以便更好理解代码内容和执行流程

from pyecharts.charts import Bar
from pyecharts import options as opts
#得到柱状图对象
bar = Bar()
#添加x轴数据
bar.add_xaxis(["衬衫","羊毛衫","雪纺衫"])
#添加y轴数据
bar.add_yaxis("商家A",[5,20,36], label_opts=opts.LabelOpts(is_show=False))
#生成图表
bar.render()

在这里插入图片描述

b、创建反转柱状图

基本柱状图是以x轴为底座,y轴为数据展示,想要将x轴和y轴的功能反转可以如下操作

from pyecharts.charts import Bar
from pyecharts import options as opts
#得到折线图对象
bar = Bar()
#添加x轴数据
bar.add_xaxis(["衬衫","羊毛衫","雪纺衫"])
#添加y轴数据,并设置系列配置选项(数字默认是在柱状图中间显示的,这是设置数字居右显示)
bar.add_yaxis("商家A",[5,20,36],label_opts=opts.LabelOpts(position="right"))
#反转x轴和y轴
bar.reversal_axis()
#生成图表
bar.render()

在这里插入图片描述

c、创建含有时间线的柱状图
  • 想要创建一个根据不同的时间动态显示柱状图,从而能动态查看到柱状图不同类别的数据变化,其原理就是创建一个时间线对象,再创建多个柱状图,将柱状图分别添加到时间线对象中,设置时间线对象的自动播放
from pyecharts.charts import Bar, Timeline
from pyecharts import options as opts
from pyecharts.globals import ThemeType

# 第一步:创建柱状图对象
bar1 = Bar()
bar1.add_xaxis(["衬衫", "羊毛衫", "雪纺衫"])
bar1.add_yaxis("商家A", [5, 20, 30], label_opts=opts.LabelOpts(position="right"))
bar1.reversal_axis()

bar2 = Bar()
bar2.add_xaxis(["衬衫", "羊毛衫", "雪纺衫"])
bar2.add_yaxis("商家A", [10, 15, 25], label_opts=opts.LabelOpts(position="right"))
bar2.reversal_axis()

bar3 = Bar()
bar3.add_xaxis(["羊毛衫","衬衫", "雪纺衫"])			#这里想要在图表中将数据大的放上面,则需要按从小到大的顺序排序
bar3.add_yaxis("商家A", [10, 15, 20], label_opts=opts.LabelOpts(position="right"))
bar3.reversal_axis()

# 第二步:创建时间线对象
#timeline = Timeline()          #此为创建空的时间线对象
timeline = Timeline({           #创建带主题的时间线对象
    "theme": ThemeType.LIGHT,  #设置主题
})
# 第三步:在时间线内添加柱状图对象
timeline.add(bar1, "点1")
timeline.add(bar2, "点2")
timeline.add(bar3, "点3")

# 第四步:设置自动播放
timeline.add_schema(
    play_interval=1000,     # 自动播放的时间间隔,单位毫秒
    is_timeline_show=True,  # 在自动播放时,是否显示时间线
    is_auto_play=True,      # 是否自动播放
    is_loop_play=True,      # 是否循环播放
)
# 第五步:生成图表,这里是用时间线对象生成图标,而不是柱状图对象
timeline.render()

在这里插入图片描述

4、pyecharts地图可视化

a、生成中国各省份的数据图
  • 根据代码中的各个步骤来操作,地图对象默认生成的就是中国地图
  • 当不设置全局参数时,视觉映射范围默认是0-100,数字过大或者过小可能无法精准显示颜色差别
  • 想要自行设置新的视觉映射,需要同时设置 is_piecewise 和 pieces 的内容
  • 生成的地图默认可放大缩小
from pyecharts.charts import Map
from pyecharts import options as opts
#第一步:准备地图对象
map = Map()
#第二步:准备地图数据
data = [
    ("北京市", 99),
    ("上海市", 199),
    ("湖南省", 299),
    ("台湾省", 399)
]
#第三步:设置地图参数,第一个为名字,第二个为数据,第三个为地图国家(默认就是china)
map.add("测试地图",data,"china")
#第四步:设置全局参数,地图根据数据展示具体颜色
map.set_global_opts(
    visualmap_opts=opts.VisualMapOpts(
        is_show=True,                #是否显示颜色
        is_piecewise=True,           #开启手动校准视觉映射范围  视觉映射默认是0-100,数字过大或者过小无法精准显示颜色差别
        pieces=[                     #设置新的视觉映射范围,这里设置总范围是0-500
            {"min": 0, "max": 100, "label": "0-100", "color": "#FF0000"},       #min:最小值  max:最大值  label:显示标签  color:地图展示颜色
            {"min": 101, "max": 200, "label": "101-200", "color": "#00FF00"},
            {"min": 201, "max": 300, "label": "201-300", "color": "#0000FF"},
            {"min": 301, "max": 400, "label": "301-400", "color": "#FFFF00"},

        ]
    )


)
#第五步:生成地图,并配置输出文件名
map.render("测试地图.html")

在这里插入图片描述

b、生成某个省份的数据图
  • 生成某省份的地图,步骤和前面生成国家地图一致,只是更改地图位置名即可
  • 比如下面是生成湖南省的地图
from pyecharts.charts import Map
from pyecharts import options as opts
#第一步:准备地图对象
map = Map()
#第二步:准备地图数据
data = [
    ("长沙市", 99),
    ("株洲市", 199),
    ("湘潭市", 299)
]
#第三步:设置地图参数,第一个为名字,第二个为数据,第三个为地图名(默认就是china,也可设置省份名)
map.add("测试地图",data,"湖南")
#第四步:设置全局参数,地图根据数据展示具体颜色
map.set_global_opts(
    visualmap_opts=opts.VisualMapOpts(
        is_show=True,                #是否显示颜色
        is_piecewise=True,           #开启手动校准视觉映射范围  视觉映射默认是0-100,数字过大或者过小无法精准显示颜色差别
        pieces=[                     #设置新的视觉映射范围,这里设置总范围是0-500
            {"min": 0, "max": 100, "label": "0-100", "color": "#FF0000"},       #min:最小值  max:最大值  label:显示标签  color:地图展示颜色
            {"min": 101, "max": 200, "label": "101-200", "color": "#00FF00"},
            {"min": 201, "max": 300, "label": "201-300", "color": "#0000FF"},
            {"min": 301, "max": 400, "label": "301-400", "color": "#FFFF00"},

        ]
    )


)
#第五步:生成地图,并配置输出文件名
map.render("测试地图.html")

在这里插入图片描述

c、生成某个市的数据图
  • 当然,我们还能生成某个市的地图数据,步骤和上面的一致,更改地图位置名即可
from pyecharts.charts import Map
from pyecharts import options as opts
#第一步:准备地图对象
map = Map()
#第二步:准备地图数据
data = [
    ("岳麓区", 99),
    ("望城区", 199),
    ("开福区", 299)
]
#第三步:设置地图参数,第一个为名字,第二个为数据,第三个为地图名(默认就是china,也可设置省份名,市区名)
map.add("测试地图",data,"长沙")
#第四步:设置全局参数,地图根据数据展示具体颜色
map.set_global_opts(
    visualmap_opts=opts.VisualMapOpts(
        is_show=True,                #是否显示颜色
        is_piecewise=True,           #开启手动校准视觉映射范围  视觉映射默认是0-100,数字过大或者过小无法精准显示颜色差别
        pieces=[                     #设置新的视觉映射范围,这里设置总范围是0-500
            {"min": 0, "max": 100, "label": "0-100", "color": "#FF0000"},       #min:最小值  max:最大值  label:显示标签  color:地图展示颜色
            {"min": 101, "max": 200, "label": "101-200", "color": "#00FF00"},
            {"min": 201, "max": 300, "label": "201-300", "color": "#0000FF"},
            {"min": 301, "max": 400, "label": "301-400", "color": "#FFFF00"},

        ]
    )


)
#第五步:生成地图,并配置输出文件名
map.render("测试地图.html")

在这里插入图片描述

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值