基于Python pyecharts实现多种图例代码解析


Posted in Python onAugust 10, 2020

词云图

from pyecharts.charts import WordCloud
def word1():
  words= [
    ("Sam S Club", 10000),
    ("Macys", 6181),
    ("Amy Schumer", 4386),
    ("Jurassic World", 4055),
    ("Charter Communications", 2467),
    ("Chick Fil A", 2244),
    ("Planet Fitness", 1868),
    ("Pitch Perfect", 1484),
    ("Express", 1112),
    ("Home", 865),
    ("Johnny Depp", 847),
    ("Lena Dunham", 582),
    ("Lewis Hamilton", 555),
    ("KXAN", 550),
    ("Mary Ellen Mark", 462),
    ("Farrah Abraham", 366),
    ("Rita Ora", 360),
    ("Serena Williams", 282),
    ("NCAA baseball tournament", 273),
    ("Point Break", 265),
  ]
  worldcloud = (
    WordCloud()
    .add("", words, word_size_range=[20, 100])
    .set_global_opts(title_opts=opt.TitleOpts(title="WorldCloud-shape-diamond"))
  )
  # worldcloud = (
  #   WordCloud()
  #   .add("", words, word_size_range=[20, 100], shape=SymbolType.DIAMOND)
  #   .set_global_opts(title_opts=opt.TitleOpts(title="WorldCloud-shape-diamond"))
  # )
  worldcloud.render("wordl.html")
  os.system("wordl.html")

效果如下:

基于Python pyecharts实现多种图例代码解析

散点图

from pyecharts.charts import Scatter
import numpy as np

def sca():
  x_data = np.linspace(0, 10, 30)
  y1_data = np.sin(x_data)
  y2_data = np.cos(x_data)
  # 绘制散点图
  # 设置图表大小
  figsise = opt.InitOpts(width="800px", height="600px")
  scatter = Scatter(init_opts=figsise)
  # 添加数据
  scatter.add_xaxis(xaxis_data=x_data)
  scatter.add_yaxis(series_name="sin(x)散点图", #名称
           y_axis=y1_data, # 数据
           label_opts=opt.LabelOpts(is_show=False), # 数据不显示
           symbol_size=15, # 设置散点的大小
           symbol="triangle" # 设置散点的形状
           )
  scatter.add_yaxis(series_name="cos(x)散点图", y_axis=y2_data, label_opts=opt.LabelOpts(is_show=False))
  scatter.render()
  os.system("render.html")

效果如下:

基于Python pyecharts实现多种图例代码解析

饼状图

from pyecharts.charts import Pie
from pyecharts import options as optfrom pyecharts.faker import Faker as fa

def pie1():
  pie = (
    Pie()
    .add("", [list(z) for z in zip(fa.choose(), fa.values())])
    .set_global_opts(title_opts=opt.TitleOpts(title="pie-基本示例"))
    .set_series_opts(label_opts=opt.LabelOpts(formatter="{b}:{c}"))
  )
  pie.render()
  os.system("render.html")

def pie2():
  pie = (
    Pie()
      .add("", [list(z) for z in zip(fa.choose(), fa.values())], radius=["40%", "75%"])
      .set_global_opts(title_opts=opt.TitleOpts(title="pie-示例"),
               legend_opts=opt.LegendOpts(
                 orient="vertical", pos_top="15%", pos_left="2%"
               ))
      .set_series_opts(label_opts=opt.LabelOpts(formatter="{b}:{c}"))
  )
  pie.render()
  os.system("render.html")


def pie3():
  pie = (
    Pie()
      .add("", [list(z) for z in zip(fa.choose(), fa.values())],
         radius=["40%", "75%"],
         center=["25%", "50%"],
         rosetype="radius",
         label_opts=opt.LabelOpts(is_show=False))

      .add("", [list(z) for z in zip(fa.choose(), fa.values())],
         radius=["30%", "75%"],
         center=["75%", "50%"],
         rosetype="area")

      .set_global_opts(title_opts=opt.TitleOpts(title="pie-玫瑰图示例"))

  )
  pie.render()
  os.system("render.html")

def pie4():
  # 多饼图显示
  pie = (
    Pie()
    .add(
      "",
      [list(z) for z in zip(["剧情", "其他"], [25, 75])],
      center=["20%", "30%"],
      radius=[40, 60]
    )
    .add(
      "",
      [list(z) for z in zip(["奇幻", "其他"], [24, 76])],
      center=["55%", '30%'],
      radius=[40, 60]
    )
    .add(
      "",
      [list(z) for z in zip(["爱情", "其他"], [14, 86])],
      center=["20%", "70%"],
      radius=[40, 60]
    )
    .add(
      "",
      [list(z) for z in zip(["惊骇", "其他"], [1, 89])],
      center=["55%", "70%"],
      radius=[40, 60]
    )
    .set_global_opts(
      title_opts=opt.TitleOpts(title="pie-多饼图基本示例"),
      legend_opts=opt.LegendOpts(
        type_="scroll", pos_top="20%", pos_left="80%", orient="vertical"
      )
    )
    .set_series_opts(label_opts=opt.LabelOpts(formatter="{b}:{c}"))
  )
  pie.render()
  os.system("render.html")

直方图

from pyecharts.charts import Bar
from pyecharts import options as opt
from pyecharts.globals import ThemeType
from pyecharts.faker import Faker as fa
import random


def pye1():
  # 生成随机数据
  attr = fa.days_attrs
  v1 = [random.randrange(10, 150) for _ in range(31)]
  v2 = [random.randrange(10, 150) for _ in range(31)]

  # 初始化一个Bar对象,并设定一写初始化设置
  bar = Bar(init_opts=opt.InitOpts(theme=ThemeType.WHITE))
  # 添加数据
  bar.add_xaxis(attr)
  # is_selected: 打开图表时是否默认加载  grap:不同系列的柱间距离,百分比; color:指定柱状图Label的颜色
  bar.add_yaxis("test1", v1, gap="0", category_gap="20%", color=fa.rand_color())
  bar.add_yaxis("test2", v2, is_selected=False, gap="0%", category_gap="20%", color=fa.rand_color())
  # 全局配置
  # title_opts:图标标题相关设置
  # toolbox_opts: 工具栏相关设置
  # yaxis_opts/xaxis_opts: 坐标轴相关设置
  # axislabel_opts: 坐标轴签字相关设置
  # axisline_opts: 坐标轴轴线相关设置
  # datazoom_opts: 坐标轴轴线相关设置
  # markpoint_opts: 标记点相关设置
  # markpoint_opts:label_opts=opts.LabelOpts(is_show=False) 标签值是否叠加
  # markline_opts:标记线相关设置
  bar.set_global_opts(title_opts=opt.TitleOpts(title="主标题", subtitle="副标题"),
            toolbox_opts=opt.ToolboxOpts(),
            yaxis_opts=opt.AxisOpts(axislabel_opts=opt.LabelOpts(formatter="{value}/月"), name="这是y轴"),
            xaxis_opts=opt.AxisOpts(
            axisline_opts=opt.AxisLineOpts(linestyle_opts=opt.LineStyleOpts(color='blue')), name="这是x轴"),
            datazoom_opts=opt.DataZoomOpts()
            )
  bar.set_series_opts(markpoint_opts=opt.MarkPointOpts(data=[opt.MarkPointItem(type_="max", name="最大值"),
                                opt.MarkPointItem(type_="min", name="最小值"),
                                opt.MarkPointItem(type_="average", name="平均值")]),
            markline_opts=opt.MarkLineOpts(data=[opt.MarkLineItem(type_="min", name="最小值"),
                               opt.MarkLineItem(type_="max", name="最大值"),
                               opt.MarkLineItem(type_="average", name="平均值")]))
  # 指定生成html文件路径
  bar.render('test.html')
  os.system("test.html")

效果如下

基于Python pyecharts实现多种图例代码解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
以一段代码为实例快速入门Python2.7
Mar 31 Python
Python fileinput模块使用实例
Jun 03 Python
深入学习python的yield和generator
Mar 10 Python
Python Requests 基础入门
Apr 07 Python
TensorFlow损失函数专题详解
Apr 26 Python
Python 通过requests实现腾讯新闻抓取爬虫的方法
Feb 22 Python
python ChainMap 合并字典的实现步骤
Jun 11 Python
浅谈Pandas Series 和 Numpy array中的相同点
Jun 28 Python
Python实现TCP通信的示例代码
Sep 09 Python
Python字典生成式、集合生成式、生成器用法实例分析
Jan 07 Python
python3 kubernetes api的使用示例
Jan 12 Python
Python自动化之批量处理工作簿和工作表
Jun 03 Python
Python Celery异步任务队列使用方法解析
Aug 10 #Python
使用Python将语音转换为文本的方法
Aug 10 #Python
Python获取excel内容及相关操作代码实例
Aug 10 #Python
Python利用命名空间解析XML文档
Aug 10 #Python
Python如何定义有默认参数的函数
Aug 10 #Python
如何更换python默认编辑器的背景色
Aug 10 #Python
django前端页面下拉选择框默认值设置方式
Aug 09 #Python
You might like
php 调试利器debug_print_backtrace()
2012/07/23 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
2017/09/16 PHP
5款Javascript颜色选择器
2009/10/25 Javascript
一些老手都不一定知道的JavaScript技巧
2014/05/06 Javascript
javascript面向对象之访问对象属性的两种方式分析
2015/01/13 Javascript
javascript伸缩型菜单实现代码
2015/11/16 Javascript
jQuery使用cookie与json简单实现购物车功能
2016/04/15 Javascript
AngularJS  $on、$emit和$broadcast的使用
2016/09/05 Javascript
jQuery Validate验证表单时多个name相同的元素只验证第一个的解决方法
2016/12/24 Javascript
vue修改vue项目运行端口号的方法
2017/08/04 Javascript
自制简易打赏功能的实例
2017/09/02 Javascript
使用JavaScript实现点击循环切换图片效果
2017/09/03 Javascript
用Axios Element实现全局的请求loading的方法
2018/03/15 Javascript
妙用缓存调用链实现JS方法的重载
2018/04/30 Javascript
Vue项目全局配置页面缓存之按需读取缓存的实现详解
2018/08/01 Javascript
layer更改皮肤的实现方法
2019/09/11 Javascript
[02:09]抵达西雅图!中国军团加油!
2014/07/07 DOTA
Python实现动态添加类的属性或成员函数的解决方法
2014/07/16 Python
在Python中操作文件之read()方法的使用教程
2015/05/24 Python
如何利用python制作时间戳转换工具详解
2018/09/12 Python
Python3.5 Pandas模块之Series用法实例分析
2019/04/23 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
Python实现计算文件MD5和SHA1的方法示例
2019/06/11 Python
python ubplot使用方法解析
2020/01/10 Python
Python opencv相机标定实现原理及步骤详解
2020/04/09 Python
Trina Turk官网:美国时装和泳装品牌
2018/06/10 全球购物
日语翻译个人求职的自我评价
2013/10/14 职场文书
国际贸易专业推荐信
2013/11/15 职场文书
一名女生的自荐信
2013/12/08 职场文书
讲文明知礼仪演讲稿
2014/09/13 职场文书
2015年汽车销售经理工作总结
2015/04/27 职场文书
小学大队长竞选稿
2015/11/20 职场文书
教你漂亮打印Pandas DataFrames和Series
2021/05/29 Python
Vue中foreach数组与js中遍历数组的写法说明
2021/06/05 Vue.js
总结Java对象被序列化的两种方法
2021/06/30 Java/Android