来源 / Python数据之道

作者/Peter   整理/阳哥

用 Highcharts 绘制饼图,也很强大

前不久,分享了读者投稿的文章,较为综合的介绍了可视化库 Highcharts ,这个一个 JavaScript 下的可视化工具,同时也有 Python 版本。

不少同学对这个工具感兴趣,今天来跟大家介绍下如何用这个工具来绘制饼图。大家可以对照自己常用的 Python 库,看看哪些工具更适合自己。

本文中介绍的是如何利用 python-highcharts 绘制各种饼图来满足不同的需求,主要包含:

  • 基础饼图

  • 单色+多色饼图制作

  • 带上图例+数据的饼图

  • 双层饼图的制作

  • 扇形饼图

基础饼图

首先我们看看整体的效果:

  • 可以很清晰地看到每个区块的名字

  • 当我们的光标移动到某个区块,能够看到该区块占的比例

整理的代码如下:

单色+多色饼图

上面的基础饼图在 Highcharts 中默认是每个区块的颜色是各不相同的,如果我们想每个区块的颜色是相同的,或者某几个区块的颜色是相同的,该如何操作呢?

单色饼图

首先看看整体的效果图:

整体的代码如下:从导入库到数据的添加设置、以及参数项的配置等

其中,重点的参数设置看这里:

Highcharts 中就是通过 Highcharts.getOptions().colors 来设置默认的颜色。我们改变下设置,绘制另一种颜色的饼图:

多色饼图

如果我们想某几个区块显示相同的颜色,可以设置相同的数值,首先看看具体的效果图:

可以看到我们将6个区块的颜色分成了3大类,就是通过上面的方法来实现的。如果我们设置成0-5的数值,即每个区块的颜色各不相同,那么就是基础饼图的样子

显示图例和数据的饼图

上面提到的各种饼图都是没有图例的,同时在区块中也没有直接显示原始数据,下面介绍方法来实现这两种效果:

图例和数据显示的代码设置:

双层饼图

上面介绍了各种单个饼图的制作,下面讲解如何利用 python-highcharts 制作双层饼图。看看整体的效果:

从上图中我们可以看到:主要是有5种颜色

  • 蓝色

  • 黑色

  • 绿色

  • 红色

  • 紫色

数据中显示每个大类中还有子类,比如:MSIE 父类中还有子类 MSIE6.0、MSIE7.0、MSIE8.0、MSIE9.0。现在我们看看代码中数据的显示:

可以很清晰地看到:先显示父级的数据,再显示子级的数据。整体的代码如下:

扇形图

上面介绍的都是如何制作各种饼图,下面介绍一种制作 扇形图 的方法。首先看看整体的效果:

上面显示了5个类别的数据,同时显示了图例,并且在扇形图中显示了数据。整体的代码如下:

重点的设置部分:

总结

本文结合各种实际案例介绍了如何利用 python-highcharts 来绘制各种不同需求的饼图或者扇形图。通过上面案例的介绍,我们发现使用 Highcharts 绘制图形的主要步骤如下:

  1. 导入我们需要的 Highcharts 库,再实例化一个 Highcharts 对象

  2. 数据项的配置:在绘图的时候,数据的配置也很重要。Highcharts中对数据格式要求还是挺高的,而且在数据中还可以对数据进行效果的设置

  3. 图形参数设置:这是整个绘图过程中 最为重要 的部分,主要是包含:图表类型chart(柱状图、饼图、折线图等)、标题title(主标题、副标题)、数据提示工具tooltip、绘图选型plotOptions等配置项的设置

  4. 添加数据项和配置项。在添加配置项的时候,我们可以对最终的图形进行一些效果设置。

最后是个人的一点感觉:利用 Highcharts 来进行绘图的确代码量很大,基本上画一个简单的饼图或者柱状图都需要大量的代码(相对其他自己使用的可视化库,比如 pyecharts、plotly_express 等)。

但是它的强大之处,应该是在于结合前端的知识,绘制更多动态效果的图形,让图形的可视化效果更美观

作者简介

Peter,硕士毕业僧一枚,从电子专业自学Python入门数据行业,擅长数据分析及可视化。

个人站点:www.renpeter.cn

推荐阅读

误执行了rm -fr /*之后,除了跑路还能怎么办?!

程序员必备58个网站汇总

大幅提高生产力:你需要了解的十大Jupyter Lab插件

肝!用 Highcharts 绘制饼图,也很强大相关推荐

  1. 【Python】用 Highcharts 绘制饼图,也很强大

    来源:Python数据之道 作者:Peter 整理:阳哥 用 Highcharts 绘制饼图,也很强大 前不久,分享了读者投稿的文章,较为综合的介绍了可视化库 Highcharts ,这个一个 Jav ...

  2. 运用highcharts绘制饼图

    1.引入架包:highcharts.js  jquery.min.js 2.前台绘制 <div class="panel-body" id="container&q ...

  3. html使用highcharts绘制饼图,html js highcharts绘制圆饼图表

    jquery实现饼状图效果 - 站长素材 var chart; $(function () { var totalMoney=999 var zccw=178 var sycw=821 $(docum ...

  4. html使用highcharts绘制饼图,饼图.html · 赵文博/Highcharts - Gitee.com

    Title * { margin: 0; padding: 0; border: 0; } #container { width: 100%; } $(function(){ $('#containe ...

  5. 3d饼图 vue_在Vue中如何使用highCharts绘制3d饼图

    本篇文章主要介绍了在Vue中使用highCharts绘制3d饼图的方法,现在分享给大家,也给大家做个参考. highcharts是国外知名基于javascript的图表库.由于中文官网的vue中使用h ...

  6. Afreechart很强大的图表库,支持股票曲线图,饼图,曲线

    Afreechart是一个很强大的图表库,支持股票曲线图,饼图,曲线等.源码下载:http://www.23code.com/afreechart/ 转载于:https://www.cnblogs.c ...

  7. python画相关性可视化图_Python可视化很简单,一文教你绘制饼图、极线图和气泡图...

    matplotlib库作为Python数据化可视化的最经典和最常用库,掌握了它就相当于学会了Python的数据化可视化,上次呢,已经和大家聊了关于柱状图.条形图和直方图相关的东东,相信大家已经掌握了哈 ...

  8. python polar函数_Python可视化很简单,可是你会吗?python绘制饼图、极线图和气泡图,让我来教教你吧,一文教会!!!...

    matplotlib库作为Python数据化可视化的最经典和最常用库,掌握了它就相当于学会了Python的数据化可视化,今天呢,咱们就一起来聊聊关于Python如何去绘制饼图.极线图和气泡图吧 好啦, ...

  9. uni-app app端用highcharts绘制图表,并生成海报保存到手机相册

    uni-app 打包app后 highcharts图表绘制不成功,不支持该方法,所以就考虑在app中嵌入webview h5页面,实现图表的绘制. 首先引用安装highcharts,封装成一个组件 n ...

最新文章

  1. Python赋值、浅拷贝、深拷贝
  2. golang中小数除以大数为0的坑
  3. CTF 大小写字母转换 try lower and upper
  4. Winform中设置ZedGraph因设置小刻度导致的竖直虚线显示过多
  5. 如果用户访问一个不存在的地址呢?
  6. Elasticsearch常用工具清单
  7. koa --- 使用koa-multer上传文件+elementUI
  8. 基于SkyEye的GPU仿真——解决嵌入式仿真难题
  9. ArcEngine中拓扑的使用
  10. 动画效果之手机端实现垃圾桶效果
  11. dede使用方法---用js让当前导航高亮显示
  12. PHP 数字缩短(最多1倍)与还原
  13. Python如何上传文件?
  14. 微信公众号迁移:流程指引、迁移内容、注意事项、申请函公证指引
  15. 程序员的自我修养-读后感
  16. 电力电子相关论文英文单词积累
  17. html5 里面的type=”search“ ,h5版,点击手机键盘上的 ‘搜索”,”前往“等按钮,进行搜索
  18. Kubernetes部署记录
  19. 拉依达准则的python代码
  20. matlab人脸识别样本库建立,facenet 人脸识别(二)——创建人脸库搭建人脸识别系统...

热门文章

  1. Linux下安装ICE(自测)
  2. PHP增加$_ENV变量
  3. php变量赋值给js
  4. Linux之grep:过滤器按照字符进行过滤  选项规定内容样式 模式规定内容
  5. 一加7pro运动计步功能_测血压、心率、血氧、运动计步,来电微信消息等提醒,多种模式可选,这款智能手环功能实在是太全了吧!...
  6. java文件批量重命名6,批量重命名文件DOS脚本
  7. python编写脚本替换 jar包文件_shell-替换jar包中配置文件脚本
  8. ipa文件怎么安装到iphone_无视签名随意安装 IPA 文件
  9. 程序员的数学全三册密码_阿波罗50年前成功登月,少不了这位硬核女程序员
  10. mysql cluster 数据文件_mysql-【求救】关于MYSQL CLUSTER数据文件存放节点错误问题