公众号后台回复“图书“,了解更多号主新书内容

作者:林骥

来源:林骥

日历图,是指按照日历的布局,用颜色展现每一天的数据,从而比较直观地看到全年的数据情况。

比如说,下面是一家超市每天销售额数据的日历图,从中可以看出,一月份和二月份的销售相对较低,星期三的销售较好,大多数星期五都没有销售。

因为这些数据是虚拟的,所以这里不展开分析讨论。

在实际工作中,我们应该对业务情况比较熟悉,借助图表等方式,充分挖掘数据背后有价值的信息,并提出有针对性的建议。

下面手把手教你用 pyecharts 来制作日历图,请在 Jupyter Lab 中新建一个 Notebook,然后运行以下代码,其中包含比较详细的注释:

# 导入相关库
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Calendar# 数据获取方法,在林骥的公众号后台回复:超市
df = pd.read_excel('./data/超市数据.xlsx')# 汇总每天销售额
daily_sale = df.fillna(0).pivot_table(values='销售额', index='订单日期', aggfunc=sum).fillna(0)# 把数据框转变成列表,以便下面绘图时直接调用
data = [[str(x)[:10], round(y/10000,1)] for (x, y) in zip(daily_sale.index, daily_sale.销售额)]# 绘制日历图
c = (# 设置背景、大小和网页标题Calendar(init_opts=opts.InitOpts(bg_color='#00589F', width='360px', height='800px', page_title="2019年每天销售额")).add(# 系列名称"销售额",# 列表格式的数据data,# 日历组件配置项calendar_opts=opts.CalendarOpts(# 年份range_="2019",# 年月日的格式和字体颜色daylabel_opts=opts.CalendarDayLabelOpts(name_map="cn", label_color='#FFFFFF'),monthlabel_opts=opts.CalendarMonthLabelOpts(name_map="cn", label_color='#FFFFFF'),yearlabel_opts=opts.CalendarYearLabelOpts(label_color='#FFFFFF'),# 日历的位置pos_top='110px',pos_left='80px',pos_right='80px',pos_bottom='60px',# 日历的方向orient='vertical'),# 提示框显示的数字格式tooltip_opts=opts.TooltipOpts(formatter='{a}<br/>{c}')).set_global_opts(# 标题的大小、颜色和位置title_opts=opts.TitleOpts(title='日均销售额'+'%.1f万元' % (daily_sale.销售额.mean()/10000),title_textstyle_opts=opts.TextStyleOpts(font_size=26, color='#FFFFFF'),pos_left='center', pos_top='10px'),# 隐藏图例legend_opts=opts.LegendOpts(is_show=False),# 显示工具箱及其位置toolbox_opts=opts.ToolboxOpts(pos_bottom="30px",),# 视觉映射的配置visualmap_opts=opts.VisualMapOpts(max_=7,min_=0,orient="horizontal",is_piecewise=True,pos_bottom="30px",pos_left="center",textstyle_opts=opts.TextStyleOpts(color="#FFFFFF"),# 按区间定义好中差,并设置相应的颜色pieces=[{"min": 0, "max": 1, "label": '差', 'color': '#CCCCCC'},{"min": 1, "max": 3, "label": '中', 'color': '#999999'},{"min": 3, "max": 8, "label": '好', 'color': '#5D9BCF'},],),)# 输出网页文件.render("2019年每天销售额.html")
)

运行结束之后,系统会自动生成一个文件:2019年每天销售额.html,用浏览器打开它,就能看到一个日历图。

如果把鼠标放在相应的单元格上方,就会显示对应日期的销售额数据,既能观察全貌,又能查看数据明细,这是用 pyecharts 制作图表的优势。

虽然工具各有优劣,但是关键要知道目标是什么,否则就算图表做得再好看,锻炼出来的也不过是工具操作能力。

最后,建议你结合自身的实际情况,学习对自己工作有帮助的技能,并灵活加以运用,充分发挥不同工具的优势,从而创造更大的价值。

*作者简介:林骥,专注数据分析 10 多年,坚持用心做原创。

◆ ◆ ◆  ◆ ◆麟哥新书已经在当当上架了,我写了本书:《拿下Offer-数据分析师求职面试指南》,目前当当正在举行100-50活动,大家可以用相当于原价5折的预购价格购买,还是非常划算的:数据森麟公众号的交流群已经建立,许多小伙伴已经加入其中,感谢大家的支持。大家可以在群里交流关于数据分析&数据挖掘的相关内容,还没有加入的小伙伴可以扫描下方管理员二维码,进群前一定要关注公众号奥,关注后让管理员帮忙拉进群,期待大家的加入。
管理员二维码:
猜你喜欢
● 卧槽!原来爬取B站弹幕这么简单● 厉害了!麟哥新书登顶京东销量排行榜!● 笑死人不偿命的知乎沙雕问题排行榜
● 用Python扒出B站那些“惊为天人”的阿婆主!● 你相信逛B站也能学编程吗

手把手教你用 pyecharts 制作日历图相关推荐

  1. keyshot渲染图文教程_keyshot基础图文教程,手把手教你用keyshot制作动画效果

    keyshot基础图文教程,手把手教你用keyshot制作动画效果 你知道么?keyshot除了用来渲染产品,其实还可以制作动画效果的,它里面内置了好几种运动方式,利用keyshot的旋转,平移,缩小 ...

  2. python图形设计编程_少儿编程分享:手把手教你用Python制作艺术图片

    原标题:少儿编程分享:手把手教你用Python制作艺术图片 在前面的几篇文章中,我们分享了一些用PyGame制作小游戏的教程.我们今天的分享使用的仍然是PyGame,只不过这次不是写游戏啦-我们要用P ...

  3. 怎么用python自制计算公式_手把手教你用python制作简易计算器,能够记录你使用的情况...

    话不多说,首先先看效果图,它能够记录你在使用过程中的历史,方便你查看是否有错: 接下来就仔细分析一下是如何制作的: 简易计算器 第一步:导入资源库 在过程中使用到了tkinter这个资源库,win+R ...

  4. 手把手教你使用VS制作winform安装包

    手把手教你使用VS制作winform安装包 使用VS 自带的打包工具,制作winform安装项目 开发环境:VS 2008 Access 操作系统:Windows XP 开发语言:C# 项目名称:** ...

  5. 得到的概率值_手把手教你将矩阵概率画成图

    手把手教你将矩阵&概率画成图 要是将每个矩阵和概率都看成对应的「图」会怎么样?本文作者带我们体验了这个简单而有趣的可视化过程. 选自math3ma,作者:Algebra,机器之心编译,参与:高 ...

  6. pyecharts:日历图实战

    背景[相关资料来源于< 数据之美:一本书学会可视化设计>]: 时序数据可视化的目的 可视化时序数据时,目标是看到什么已经成为过去,什么保持不变,以及什么发生了变化,相差程度是多少,造成变化 ...

  7. 【突破二次元壁】手把手教你用AnimeGAN将风景图转换成宫崎骏动漫风

    [突破二次元壁!]手把手教你用AnimeGAN将风景图转换成宫崎骏动漫风! 未经作者允许,本文禁止转载 0. 效果图: 1. 下载源码: 2. 下载预训练模型: 3. 准备图片: 4. 开始转换: 5 ...

  8. Pyecharts之日历图(Calendar)

    Pyecharts之日历图(Calendar) 一.基本概念 class pyecharts.charts.Calendar class Calendar(init_opts: opts.InitOp ...

  9. [图表]pyecharts模块-日历图

    [图表]pyecharts模块-日历图 先来看代码: import random import datetimeimport pyecharts.options as opts from pyecha ...

最新文章

  1. java常见_Java 常用类
  2. OJ8462-大盗阿福【各种dp之5】
  3. Singularity 介绍
  4. WARNING: A newer version of conda exists.
  5. Exchange 2013 、Lync 2013、SharePoint 2013
  6. NHibernate.3.0.Cookbook第一章第六节Handling versioning and concurrency的翻译
  7. 墙面有几种装修方法_新家装修时,家里墙面漏水了怎么办?三种方法解决不乱花钱...
  8. HCIE RS 全套笔记整理
  9. idea配置mysql失败_IDEA配置数据库连接失败的问题
  10. 免费在线SQL数据库SQL Fiddle使用简介
  11. 自学android要多长时间,自学android开发,从零开始学Android
  12. 轻量级模型:MobileNet V2
  13. 个人如何搭建属于自己的博客网站?
  14. 科来kelai工具的安装与使用-改包回放包工具
  15. 服装计算机辅助设计论文,服装设计计算机辅助设计应用探索-服装设计论文-设计论文.docx...
  16. 解决 array subscript has type char 错误
  17. 支付宝APP支付集成文档
  18. 如何画出FPN论文中的金字塔结构图
  19. CTF——AWD模式小总结
  20. 深入分析Java Web技术内幕读书笔记(二)浅析DNS域名解析过程

热门文章

  1. 国产全新 OS 惊艳老外!界面似 Win11,可运行多应用
  2. Mac Terminal (终端) 使用ssh快速登录远程服务器
  3. 【毕业设计】基于Stm32的便携体测仪(心率 体温) - 单片机 嵌入式 物联网
  4. Java实现堆,最大堆,最小堆,左高树,左低树
  5. IDEA中下方git的提交记录上有黄、绿、紫色标记的意思
  6. Maltego 学习与使用
  7. TP-LINK无线网卡安装方法
  8. 如何提高论文阅读速度?
  9. Linux常用基本命令分享
  10. 【科普】强化学习之多臂老虎机问题(bandit算法:softmax,random,UCB)