Pyecharts是由Echarts而来,Echarts是百度开源的数据可视化的库,适合用来做图表设计开发,当使用Python与Echarts结合时就产生了Pyecharts。可使用pip安装,默认是最新版本的Pyecharts,查看安装的版本号可以使用pycharts.__version__查看。

安装###

现在安装的v1版本与以前的0.5版本是不兼容的,使用方法上存在较大的差异,并且v0.5版本对Python的支持在Python2.7和3.4+的版本上,v1版本支持最新的Python版本。所以网上的很多关于Pyecharts的代码在新版本上并不适用,安装命令:pin install pyecharts

链式调用###

可以使用链式调用的方法来创建一个图表

from pyecharts.charts import Bar
from pyecharts import options as opts
bar= (
Bar()
.add_xaxis(["裤子", "高跟鞋", "袜子"])
.add_yaxis(["销售额"],[300,509,300])
.set_global_opts(title_opts=opts.TitleOpts(title="主标题", subtitle="副标题")) )
bar.render()

上述代码中我们可以加入主题:

from pyecharts.globals import ThemeType

Bar(init_opts.IninOpts(theme=ThemeType.LTGHT))

图形绘制###

日历图####

Calendar可以用来显示日历图,timedelta用来设置日期间的间隔。具体代码如下

import datetime
import random
from pyecharts import options as opts
from pyecharts.charts import Calendar
def calendar_base() -> Calendar:
begin = datetime.date(2018, 1, 1) #设置起始日期
end = datetime.date(2019, 12, 31) #设置终止日期
data =[
[str(begin + datetime.timedelta(days=i)), random.randint(1000, 25000)] #设置日期间隔,步数范围
for i in range((end - begin).days + 1)
]
c = (
Calendar()
.add('', data, calendar_opts=opts.CalendarOpts(range_='2019')) #添加到日历图,指定显示2019年数据 .set_global_opts( #设置底部显示条,解释数据
title_opts=opts.TitleOpts(title='2019年微信步数的情况',subtitle='From Weix'),
visualmap_opts=opts.VisualMapOpts(
max_=20000,
min_=500,
orient='vertical', #设置垂直显示
pos_top='230px',
pos_left='100px',
is_piecewise=True #是否连续
) )
)
return c.render('charts1.html')
calendar_base()

运行结果:

漏斗图####

使用Funnel创建一个漏斗图

from pyecharts.faker import Faker
from pyecharts import options as opts
from pyecharts.charts import Funnel, Page def funnel_base() -> Funnel:
c = (
Funnel()
.add("商品", [list(z) for z in zip(Faker.choose(), Faker.values())], label_opts=opts.LabelOpts(position="inside"))
.set_global_opts(title_opts=opts.TitleOpts(title="Funnel-基本示例"))
)
return c.render('charts2.html')
funnel_base()

运行结果:

这里使用的Faker,它是python的一个第三方模块,主要用来创建一些测试用的随机数据。

Faken使用文档地址:https://faker.readthedocs.io/en/master/index.html

轮盘####

from pyecharts import options as opts
from pyecharts.charts import Gauge, Page def gauge_label_title_setting() -> Gauge:
c = (
Gauge()
.add(
"",
[("完成率", 66.6)],
title_label_opts=opts.LabelOpts(
font_size=30, color="blue", font_family="Microsoft YaHei"
),
)
.set_global_opts(title_opts=opts.TitleOpts(title="轮盘显示"))
)
return c.render('charts3.html')
gauge_label_title_setting()

运行结果:

节点图####

import json
import os
from pyecharts import options as opts
from pyecharts.charts import Graph, Page def graph_base() -> Graph:
nodes = [
{'name': '天王星', 'symbolSize': 30},
{'name': '金星', 'symbolSize': 20},
{'name': '木星', 'symbolSize': 60},
{'name': '水星', 'symbolSize': 40},
{'name': '月球', 'symbolSize': 10},
{'name': '地球', 'symbolSize': 20} ]
links = []
for i in nodes:
for j in nodes:
links.append({'source': i.get('name'), 'target': j.get('name')}) c = (
Graph()
.add('', nodes, links, repulsion=8000)
.set_global_opts(title_opts=opts.TitleOpts(title='节点图'))
)
return c.render('charts4.html')
graph_base()

运行结果:



其中也可以设置固定点的连接,修改代码如下:

        opts.GraphLink(source="结点1", target="结点2"),
opts.GraphLink(source="结点2", target="结点3"),
opts.GraphLink(source="结点3", target="结点4"),
opts.GraphLink(source="结点4", target="结点5"),
opts.GraphLink(source="结点5", target="结点1"),

水球图####

from pyecharts import options as opts
from pyecharts.charts import Liquid, Page
from pyecharts.globals import SymbolType def liquid_base() -> Liquid:
c = (
Liquid()
.add("lq", [0.6, 0.7])
.set_global_opts(title_opts=opts.TitleOpts(title="Liquid-基本示例"))
)
return c.render('charts5.html')
liquid_base()

运行结果:



波浪颜色。

color: Optional[Sequence[str]] = None

是否显示波浪动画。

is_animation: bool = True

是否显示边框。

is_outline_show: bool = True

饼状图####

from pyecharts.faker import Faker
from pyecharts import options as opts
from pyecharts.charts import Pie def pie_base() -> Pie:
c = (
Pie()
.add("", [list(z) for z in zip(Faker.choose(), Faker.values())])
.set_global_opts(title_opts=opts.TitleOpts(title="Pie-基本示例"),
legend_opts=opts.LegendOpts(
type_="scroll", pos_left="80%", orient="vertical"
)
)
.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
return c.render('charts6.html')
pie_base()

运行结果:

最新Pyecharts-基本图表的更多相关文章

  1. pyEcharts安装及使用指南(最新)

    pyEcharts安装及使用指南(最新): 网上资料大多数是0.5X的版本, 这里我给出我的0.5版本连接https://www.cnblogs.com/dgwblog/p/11811562.html ...

  2. Python:数据可视化pyecharts的使用

    什么是pyecharts? pyecharts 是一个用于生成 Echarts 图表的类库. echarts 是百度开源的一个数据可视化 JS 库,主要用于数据可视化.pyecharts 是一个用于生 ...

  3. 【PyQt5-Qt Designer】PyQt5+pyecharts 实现GUI界面的数据可视化展示

    先用纯Python代码写一个简单的小案例: from PyQt5.QtCore import QUrl from PyQt5.QtWidgets import QApplication,QWidget ...

  4. 【数据可视化-pyecharts】pyecharts快速入门

    pyecharts快速开始 首先开始来绘制你的第一个图表 from pyecharts import Bar bar = Bar("我的第一个图表", "这里是副标题&q ...

  5. Windows下Python安装pyecharts

    都说pyechart用来可视化好,可是安装的时候各种坑 正常情况是 pip install pyecharts 然后各种报错,找到一种可行的方式 在https://pypi.org/project/p ...

  6. pyecharts和echarts的混合使用

    ECharts是一个由百度开发的纯 Javascript 的图表库,pyecharts是某三位大佬将ECharts移植到Python项目中的产物,在Python网站中可以更轻松的接入图表,但是个人感觉 ...

  7. 【Python可视化】超详细Pyecharts 1.x教程,让你的图表动起来~

    前言 pyecharts 是一个用于生成 Echarts 图表的Python库.Echarts是百度开源的一个数据可视化 JS 库,可以生成一些非常酷炫的图表. Pyecharts在1.x版本之后迎来 ...

  8. 小白学 Python 数据分析(20):pyecharts 概述

    人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...

  9. ubuntu上pyecharts V1版本环境搭建

    1 背景 今天想用pyecharts画图,在新的环境下使用pip安装之后发现,导入pyecharts模块一直失败,报错如下. 图 1 导入pyecharts错误图 请注意:我这里使用的python版本 ...

随机推荐

  1. Jmeter配置元件——CSV DataSet Config参数化

    在聊CSV DataSet Config配置元件前,先来讨论下为何要参数化? 比如在做性能测试过程中, 一般我们需要模拟多个用户进行操作, 为了满足实际场景, 模拟真实的用户行为, 我们需要做到模拟的 ...

  2. Wannafly挑战赛25 因子 [数论]

    一.题意 令 X = n!, 给定一大于1的正整数p 求一个k使得 p ^k | X 并且 p ^(k + 1) 不是X的因子 输入为两个数n, p (1e18>= n>= 10000 & ...

  3. Python正则表达式之findall疑点

    在findall中使用()进行分组时,得出的结果会优先提取分组的,比如下面这个例子 In [46]: re.findall(r"www.(baidu|163).com", &quo ...

  4. 洛谷$P2824\ [HEOI2016/TJOI2016]$ 排序 线段树+二分

    正解:线段树+二分 解题报告: 传送门$QwQ$ 昂着题好神噢我$jio$得$QwQQQQQ$,,, 开始看到长得很像之前考试题的亚子,,,然后仔细康康发现不一样昂$kk$,就这里范围是$[1,n]$ ...

  5. 你的IDEA过期了?跃哥四大招帮你稳住

    作者:Dimple Solgan:当你的才华还无法撑起你的野心时候,那应该静下心来好好学习 前天晚上在群里风风火火组建了两个学习小组,一个是面向Java初学,一个是面向Python初学,把我搞的兴奋不 ...

  6. 手摸手。完成一个H5 抽奖功能

    要完成一个这样的抽奖功能 构思 奖励物品是通过接口获取的(img) 奖励结果是通过接口获取的(id) 抽奖的动画需要由慢到快再到慢 抽奖转动时间不能太短 抽奖结束需要回调 业务代码和功能代码要分离 先 ...

  7. 1050 螺旋矩阵 (25 分)C语言

    本题要求将给定的 N 个正整数按非递增的顺序,填入"螺旋矩阵".所谓"螺旋矩阵",是指从左上角第 1 个格子开始,按顺时针螺旋方向填充.要求矩阵的规模为 m 行 ...

  8. docker操作

    Redis docker run -itd --name myredis -v /dockerdata/redis/config/redis.conf:/etc/redis/redis.conf  - ...

  9. 客户端访问windows server2016 服务器共享 速度慢

    客户端(windows10)敲完地址后,要过很久才会谈出窗口.  所有的客户端都出现过此现象. 解决:关闭server的 Smb1.0

  10. Could not find iPhone 6 simulator

    最近原来的老项目有点问题需要处理一下,运行启动命令,就报了如下错误,提示找不到iPhone 6 模拟器. react-native run-ios Owaiss-Mac:pdm owaisahmed$ ...