R语言 底层架构 CANopen postgresql null vue router 传智播客python access教学视频 jquery遍历对象 jquery延时 matlab跳出for循环 matlab插值函数 matlab网页版 excel加减混合求和 mysql时间戳转时间 后台管理网站模板 python正则提取字符串 python3删除文件 python配置环境 python对象 python入门指南 python获取字典的值 python模块下载 python获取输入 java使用mysql java获取月份 java学习基础 运行时错误1004 战地2单机地图 gtx1030 日历制作模板 pr滤镜插件 cmd代码 groupy 整站系统 linux多线程编程 彩虹岛小草黑暗之矛 安卓adb ps怎么画漫画 看图软件cad
当前位置: 首页 > 学习教程  > 编程学习

如何用pyecharts绘制柱状图,条形图,折线图,饼图,环形图,散点图

2021/1/9 2:16:59 文章标签: 复合条饼图

简介 pyecharts是一个由百度开源的数据可视化,凭借着良好的互交性,精巧的图表设计,得到了众多开发者的认可,而python是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts诞…

简介

pyecharts是一个由百度开源的数据可视化,凭借着良好的互交性,精巧的图表设计,得到了众多开发者的认可,而python是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts诞生了。

安装

pip3 install pyecharts
  • 版本检查
import pyecharts
pyecharts.__version__
>>>'1.5.1'

柱状图、条形图

import pyecharts.charts as pyec
x = ['甲','乙','丙']
y = [300,800,600]
bar = pyec.Bar()
bar.add_xaxis(x)
bar.add_yaxis(series_name='公司A',yaxis_data=y)
bar.render_notebook()

在这里插入图片描述

画出来的图为动态图
  • 把鼠标放在柱状区域会出现相关信息
    在这里插入图片描述
  • 点击图正上的小方框,公司A的信息会隐藏起来
    在这里插入图片描述
可以把图生成html文件
bar.render("F:\\pyec.html")
>>>'F:\\pyec.html'
  • 在这个路径下就会有这个文件

在这里插入图片描述

添加标题
import pyecharts.options as opts
bar.set_global_opts(title_opts=opts.TitleOpts(title='比较图'))
bar.render_notebook()

在这里插入图片描述

加另一组数据
y1 = [1200,500,200]
bar.add_yaxis(series_name='公司B',yaxis_data=y1)
bar.render_notebook()

在这里插入图片描述

  • 可以只看公司A的对比图
    在这里插入图片描述
  • 可以只看公司B的对比图
    在这里插入图片描述
转成条形图
bar.reversal_axis()
bar.render_notebook()

在这里插入图片描述

折线图

x = ['甲','乙','丙']
y = [300,800,600]
line = pyec.Line()
line.add_xaxis(x)
line.add_yaxis(series_name='A',y_axis=y)
line.render_notebook()

在这里插入图片描述

再加一条折线
y2 = [1300,400,700]
line.add_yaxis(series_name='B',y_axis=y2)
line.render_notebook()

在这里插入图片描述

同样的,也可以只显示一条折现

在这里插入图片描述

在图中增加提示项

数据提示
bar.set_global_opts(
        tooltip_opts=opts.TooltipOpts(trigger='axis',axis_pointer_type='cross')
                                     )
bar.render_notebook()

在这里插入图片描述

工具箱
bar.set_global_opts(
        tooltip_opts=opts.TooltipOpts(trigger='axis',axis_pointer_type='cross'),
        toolbox_opts=opts.ToolboxOpts(is_show=True,orient='horizontal'),
        )
bar.render_notebook() 

在这里插入图片描述

工具箱竖置
bar.set_global_opts(
        tooltip_opts=opts.TooltipOpts(trigger='axis',axis_pointer_type='cross'),
        toolbox_opts=opts.ToolboxOpts(is_show=True,orient='vertical'),
        )
bar.render_notebook() 

在这里插入图片描述

增加缩放功能
bar.set_global_opts(
        tooltip_opts=opts.TooltipOpts(trigger='axis',axis_pointer_type='cross'),
        toolbox_opts=opts.ToolboxOpts(is_show=True,orient='vertical'),
        datazoom_opts=opts.DataZoomOpts(type_='slider',range_start=0,range_end=2500),
        )
bar.render_notebook() 

在这里插入图片描述
在这里插入图片描述

饼图

Pie需要的数据格式:

[[x1,y1],[x2,y2],[x3,y3]]或[(x1,y1),(x2,y2)]

x_data = ['直接访问','营销推广','博客推广','搜索引擎']
y_data = [830,214,300,1100]
data_pair = list(zip(x_data,y_data))
print(data_pair)
>>>[('直接访问', 830), ('营销推广', 214), ('博客推广', 300), ('搜索引擎', 1100)]
pie = pyec.Pie()
pie.add(series_name="推广渠道",data_pair=data_pair)
pie.render_notebook()

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

环形图

pie = pyec.Pie()
pie.add(series_name="推广渠道",data_pair=data_pair,radius=['50%','75%'])
pie.render_notebook()

在这里插入图片描述

散点图

准备工作
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
import numpy as np
import pandas as pd
plt.rcParams['font.sans-serif']  = ['SimHei']#用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False#用来正常显示负号
sns.set_style('darkgrid',{'font.sans-serif':['SimHei','Arial']})

import warnings#去除部分警告信息
warnings.filterwarnings('ignore')
import numpy as np
x = np.linspace(0,10,30)
y1 = np.sin(x)
y2 = np.cos(x)
用其他包画散点图
plt.scatter(x,y1)

在这里插入图片描述

sns.scatterplot(x,y1)

在这里插入图片描述

用pyecharts 画散点图
scatter = pyec.Scatter()
scatter.add_xaxis(xaxis_data=x)
scatter.add_yaxis(series_name='y=sin(x) 散点图',y_axis=y1)
scatter.render_notebook()

在这里插入图片描述

设置数据点不显示
scatter = pyec.Scatter()
scatter.add_xaxis(xaxis_data=x)
scatter.add_yaxis(series_name='y=sin(x) 散点图',
                  y_axis=y1,
                 label_opts=opts.LabelOpts(is_show=False))
scatter.render_notebook()

在这里插入图片描述

加数据(点的大小设置)
scatter.add_yaxis(
        series_name='y=cos(x)',
        y_axis = y2,
        label_opts=opts.LabelOpts(is_show=False),
        symbol_size=20#点大小设置
)
scatter.render_notebook()

在这里插入图片描述

scatter.add_yaxis(series_name='y=sin(x) 散点图',
                  y_axis=y1,
                 label_opts=opts.LabelOpts(is_show=False),
                 symbol_size=15)
scatter.add_yaxis(
        series_name='y=cos(x)',
        y_axis = y2,
        label_opts=opts.LabelOpts(is_show=False),
        symbol_size=20
)
scatter.render_notebook()

在这里插入图片描述

控制散点形状

  • circle
scatter = pyec.Scatter()
scatter.add_xaxis(xaxis_data=x)
scatter.add_yaxis(series_name='y=sin(x) 散点图',
                  y_axis=y1,
                 label_opts=opts.LabelOpts(is_show=False),
                 symbol='circle')
scatter.render_notebook()

在这里插入图片描述

  • rect
scatter = pyec.Scatter()
scatter.add_xaxis(xaxis_data=x)
scatter.add_yaxis(series_name='y=sin(x) 散点图',
                  y_axis=y1,
                 label_opts=opts.LabelOpts(is_show=False),
                 symbol='rect')
scatter.render_notebook()

在这里插入图片描述

  • roundRect(圆角)
scatter = pyec.Scatter()
scatter.add_xaxis(xaxis_data=x)
scatter.add_yaxis(series_name='y=sin(x) 散点图',
                  y_axis=y1,
                 label_opts=opts.LabelOpts(is_show=False),
                 symbol='roundRect')
scatter.render_notebook()

在这里插入图片描述

  • triangle
    在这里插入图片描述
  • diamond
    在这里插入图片描述
  • pin
    在这里插入图片描述
  • arrow
    在这里插入图片描述
  • none
    在这里插入图片描述

本文链接: http://www.dtmao.cc/news_show_1100419.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?