1绘图逻辑

(1)选择图表类型;

(2)添加数据;

(3)设置全局变量;

(4)显示及保存图表。

1.1图表类型

from pyecharts.charts import *

1.2添加数据

散点图、折线图等二维数据图形可通过 .add_xaxis(xaxis_data=x)和.add_yaxis(series_name='', y_axis=y)方法设置。

饼图等一维图形可通过.add(series_name=‘’, data_pair=[(i, j)for i, j in zip(lab, num)])方法设置参数。

1.3显示、保存图表

  • .get_options() # 该行只为了查看配置项,方便调试时使用
  • .render():默认将会在当前目录下生成一个 render.html 的文件,支持 path 参数,设置文件保存位置,如 render(r"e:\my_first_chart.html"),文件用浏览器打开。
  • .Jupyter Notebook() 直接调用 render_notebook ()随时随地渲染图表

1.4全局配置组件:定制图表

使用 options 配置项,在 pyecharts 中,一切皆 Options。

全局配置项可通过 set_global_options 方法设置。

2散点图

#==================1散点图

from pyecharts.charts import Scatter #pip install pyecharts -i https://mirrors.aliyun.com/pypi/simple

import numpy as np

import pyecharts.options as opts

x = np.linspace(0, 10, 50)

y = np.sin(x)

#------------1.1绘制简单散点图--------------------

#----第一步:选择图表(散点图)

scatter = Scatter()

#----第二步:添加数据

scatter.add_xaxis(xaxis_data=x) #添加x轴数据

scatter.add_yaxis(series_name='', y_axis=y) #添加y轴数据

#----第三步:保存图表

scatter.render()

#------------1.2丰富图形--------------------

#第一步:选择图表(散点图)

scatter = Scatter()

#第二步:添加数据

scatter.add_xaxis(xaxis_data=x) #添加x轴数据

scatter.add_yaxis(series_name='y=sin(x)', y_axis=y, label_opts=opts.LabelOpts(is_show=False)) #添加y轴数据。label_opts=opts.LabelOpts(is_show=False)表隐藏数值标签

#第三步:全局配置项

scatter.set_global_opts(title_opts=opts.TitleOpts(title='散点图'), #添加标题

tooltip_opts=opts.TooltipOpts(axis_pointer_type='cross') #设置提示框浮层

)

#第四步:保存图表

scatter.render()

3折线图

#==================2折线图

from pyecharts.charts import Line

#-------2.1绘制简单折线图--------------------

#----第一步:选择图表(折线图)

line = Line()

#----第二步:添加数据

line.add_xaxis(xaxis_data=x) #添加x轴数据

line.add_yaxis(series_name='y=sin(x)', y_axis=y) #添加y轴数据

#----第三步:保存图表

line.render(r'F:\Desktop\a.html')

#---------2.2丰富图形--------------------

y1 = np.cos(x)

#----第一步:选择图表(折线图)

line = Line()

#----第二步:添加数据

line.add_xaxis(xaxis_data=x) #添加x轴数据

line.add_yaxis(series_name='y=sin(x)', y_axis=y, label_opts=opts.LabelOpts(is_show=False)) #添加y变量数据

line.add_yaxis(series_name='y=cos(x)', y_axis=y1) #添加y1变量数据

#----第三步:设置全局配置项

line.set_global_opts(title_opts=opts.TitleOpts(title='折线图'), #添加标题

tooltip_opts=opts.TooltipOpts(axis_pointer_type='cross') #设置提示框浮层

)

#----第四步:保存图表

line.render(r'F:\Desktop\a.html')

4柱状图

#==================3柱状图

from pyecharts.charts import Bar

num = [100, 120, 150, 200, 350]

label = ['星期一', '星期二', '星期三', '星期四', '星期五']

#-------3.1绘制简单柱状图--------------------

#----第一步:选择图表(柱状图)

bar = Bar()

#----第二步:添加数据

bar.add_xaxis(xaxis_data=label) #添加x轴数据

bar.add_yaxis(series_name='销售额', y_axis=num) #添加y轴数据

#----第三步:保存图表

bar.render(r'F:\Desktop\a.html')

#-------3.2绘制多个数据柱状图--------------------

num1 = [120, 150, 200, 180, 160]

#----第一步:选择图表(柱状图)

bar = Bar()

#----第二步:添加数据

bar.add_xaxis(xaxis_data=label) #添加x轴数据

bar.add_yaxis(series_name='第一周销售额', y_axis=num) #添加num变量数据

bar.add_yaxis(series_name='第二周销售额', y_axis=num1) #添加num1变量数据

#----第三步:保存图表

bar.render(r'F:\Desktop\a.html')

5饼图

#==================4饼图

from pyecharts.charts import Pie

#----第一步:选择图表(饼图)

pie = Pie()

#----第二步:添加数据

pie.add(series_name='', data_pair=[(i, j) for i,j in zip(label, num)])

#----第三步:保存图表

pie.render(r'F:\Desktop\b.html')

6箱线图

#==================5箱线图

#-------5.1绘制简单箱线图--------------------

from pyecharts.charts import Boxplot

box = Boxplot()

box.add_xaxis(xaxis_data=['第一周销售额'])

box.add_yaxis(series_name='销售额', y_axis=box.prepare_data([num])) #box.prepare_data表转换数据

box.render(r'F:\Desktop\b.html')

#-------5.2多个数据绘制箱线图--------------------

box = Boxplot()

box.add_xaxis(xaxis_data=['第一周销售额', '第二周销售额'])

box.add_yaxis(series_name='销售额', y_axis=box.prepare_data([num, num1]))

box.render(r'F:\Desktop\b.html')

7热力图

#==============6热力图

from pyecharts.charts import HeatMap

import random

x = ["12a", "1a", "2a", "3a", "4a", "5a", "6a", "7a", "8a", "9a", "10a", "11a","12p", "1p", "2p", "3p", "4p", "5p", "6p", "7p", "8p", "9p", "10p", "11p"]

y = ["Saturday", "Friday", "Thursday", "Wednesday", "Tuesday", "Monday", "Sunday"]

data = [[i, j, random.randint(0, 50)] for i in range(len(x)) for j in range(len(y))]

heatmap = HeatMap()

heatmap.add_xaxis(xaxis_data=x)

heatmap.add_yaxis(series_name='', yaxis_data=y, value=data) #y轴数据使用参数yaxis_data设置。value设置系列数据项,其实就是颜色深浅。

heatmap.render(r'F:\Desktop\b.html')

8词云图

#============7词云图

from pyecharts.charts import WordCloud

name =['Sam S Club', 'Macys', 'Amy Schumer', 'Jurassic World', 'Charter Communications', 'Chick Fil A', 'Planet Fitness', 'Pitch Perfect', 'Express', 'Home', 'Johnny Depp', 'Lena Dunham', 'Lewis Hamilton', 'KXAN', 'Mary Ellen Mark', 'Farrah Abraham', 'Rita Ora', 'Serena Williams', 'NCAA baseball tournament', 'Point Break']

value =[10000, 6181, 4386, 4055, 2467, 2244, 1898, 1484, 1112, 965, 847, 582, 555, 550, 462, 366, 360, 282, 273, 265]

wordcloud = WordCloud()

wordcloud.add(series_name='', data_pair=[(i, j) for i,j in zip(name,value)])

wordcloud.render(r'F:\Desktop\b.html')

9并行多图

#============8并行多图

#-------8.1上下并行--------------------

from pyecharts.charts import Scatter, Line, Grid

import numpy as np

import pyecharts.options as opts

x = np.linspace(0, 10, 50)

y = np.sin(x)

y1 = np.cos(x)

#散点图

scatter = Scatter()

scatter.add_xaxis(xaxis_data=x)

scatter.add_yaxis(series_name='', y_axis=y, label_opts=opts.LabelOpts(is_show=False))

#折线图

line = Line()

line.add_xaxis(xaxis_data=x)

line.add_yaxis(series_name='', y_axis=y1, label_opts=opts.LabelOpts(is_show=False))

grid = Grid()

grid.add(scatter, grid_opts=opts.GridOpts(pos_top='60%'))

grid.add(line, grid_opts=opts.GridOpts(pos_bottom='60%'))

grid.render(r'F:\Desktop\b.html')

#-------8.2左右并行--------------------

grid = Grid()

grid.add(scatter, grid_opts=opts.GridOpts(pos_left='55%'))

grid.add(line, grid_opts=opts.GridOpts(pos_right='55%'))

grid.render(r'F:\Desktop\b.html')

#-------8.3叠加图表--------------------

#柱状图

bar = Bar()

bar.add_xaxis(xaxis_data=label) #添加x轴数据

bar.add_yaxis(series_name='第一周销售额', y_axis=num) #添加y轴数据

#折线图

line = Line()

line.add_xaxis(xaxis_data=range(len(num1)))

line.add_yaxis(series_name='第二周销售额', y_axis=num1)

bar.overlap(line)

bar.render(r'F:\Desktop\b.html')

Python—实训day11—Pyecharts绘图相关推荐

  1. Python实训-15天-博客汇总表

    目录 1.课程安排 1.1.课程介绍 1.2.课程目标 2.课件 2.1.课件and录屏 2.2.练习and案例and作业 3.实训博客笔记 第1周-week1 day01 day02 day03 d ...

  2. 大学python实训总结-千锋Python实训总结 学好基础才能走的更远

    时间飞逝,不知不觉在千锋学习Python已经一个月了,在这不长不短的一个月时间感觉我以往的生活方式和学习方式完全被改变了,希望我能继续保持这样的求学心态和学习态度.下面这个Python实训总结就是我对 ...

  3. Python实训day14pm【Python网络爬虫综合大作业-参考解析】

    Python实训-15天-博客汇总表 题目:天气数据的爬取和统计 大作业题目思路引导:定时爬取每个地级市的实时天气状况.存入excel中.为每个城市生成html展示.历史excel文件以每日为单位归档 ...

  4. Python实训day14am【Python网络爬虫综合大作业-答辩】

    Python实训-15天-博客汇总表 实训总结: 由浅入深的了解了python语言应用: 编写了很多案例,完成了发作业,提升了编程思路和能力: 了解了行业现状,认识到企业对人才的要求,去除焦虑,对后续 ...

  5. Python实训day13am【Python网络爬虫综合大作业PPT】

    Python实训-15天-博客汇总表   今天上午大家抓紧时间继续完成实训报告和PPT,有问题我会在群里跟大家说明, 暂时不用上线直播了. 实训结束后,我会在博客上发布网络爬虫综合大作业题目及解析.

  6. Python实训day12pm【答辩要求、定时器】

    Python实训-15天-博客汇总表 目录 1.答辩安排 2.定时器 1.答辩安排 下午安排: 今天尽量地完成整个项目: 明天完成实训报告,制作小答辩PPT: 后天答辩. PPT要求: 时长5分钟左右 ...

  7. Python实训day12am【网络爬虫大作业简略解析:动态生成html页面、数据写入Excel】

    Python实训-15天-博客汇总表 目录 1.HTML页面设计 2.生成每个城市的HTML页面 2.1.HTML页面代码(weatherTemplate.html) 2.2.实例代码-动态生成htm ...

  8. Python实训day11pm【大作业简略解析】

    Python实训-15天-博客汇总表 目录 1.课堂笔记 2.群消息 3.代码 3.1.demo1 3.2.demo2 1.课堂笔记 大作业题目思路引导: 题目1:定时爬取每个地级市的实时天气状况.存 ...

  9. Python实训day11am【大作业思路梳理】

    Python实训-15天-博客汇总表 定时任务:定时任务框架APScheduler学习详解 - 小学弟- - 博客园

最新文章

  1. python表格筛选打印_按行名进行表格筛选:awkpythonR
  2. 微信新增“炸屎”功能,被好友玩坏了。。
  3. opencv均值滤波_python+opencv图像处理(二十)
  4. 【题意+分析】1043 Is It a Binary Search Tree (25 分)
  5. 计算机二级法律一班题目,湖南省计算机二级考试  程序设计题目精选30道
  6. Bailian2764 数根(POJ NOI0113-50)【数论】
  7. 如何刷机android手机,安卓手机如何刷机
  8. python deap,安装Deap for Python(Spyder)
  9. 双方确认函_确认函格式范文
  10. java实现微信公众号官方支付功能
  11. 大数据杀熟!我被美团会员割了韭菜
  12. 如何获取android系统版本号
  13. Ubuntu wps 安装及 windows字体安装
  14. 电脑桌面云便签怎么设置短信提醒便签事项?
  15. vscode 开发 Java web 急速教程
  16. Google Play_SDK(官方API)
  17. c语言课设航班信息管理软件管理系统,c语言航班信息查询系统实验报告.doc
  18. CSS3基础入门03
  19. 2021-11-24系统健壮性
  20. Windows ❀ CMD中使用批量Ping网段命令教程

热门文章

  1. linux文件系统分隔符,Linux的哲学思想和文件系统
  2. mysql如何植入到oracle_MySQL产品的生命周期
  3. html 下拉列表美化,JS+CSS实现美化的下拉列表框效果
  4. AXI_04 AXI_LITE_MASTER_IP设计与验证
  5. Java钱包_钱包行云java
  6. linux单个core的线程,正确使用Core Data多线程的3种方式
  7. sql每个月每个人的花销占比_星座月运(2020年12月),每个人开支花费大,得精打细算...
  8. 我的天,代码居然也需要保养?
  9. 300+队伍/8大直播间,这场NXP智能车竞赛谁才是真的神车?
  10. HDLBits答案(22)_基于有限状态机的计数器