简介一些蜘蛛布局标签的饼图的绘制方法​mp.weixin.qq.com

简介一些蜘蛛布局标签的饼图的绘制方法

N个月前摸索了这种饼图的绘制方法。就是元素比较多,不显示标签的话仅靠图例的颜色标注就会很难分辨图中的区块所指示的元素;但是显示标签的话,直接显示在饼图上或外周又会导致很大的重叠。如果指示标签的连线能拐弯,就很清晰了,例如这样。

这类的饼图标签形似蜘蛛,也俗称蜘蛛布局标签的饼图。

找了几种可以实现这种风格饼图的方法。

WPS饼图

其实第一眼看上去觉得上述示例图很像Excel的风格,但是查看后Excel默认的饼图样式中没有。

然后又看了WPS的饼图,这里不讨论WPS使用体验咋样,但这种国产工具通常都会提供丰富的在线样式(大家懂的),其中就包括这类蜘蛛布局标签的饼图。

选择作图数据,选择某种样式后,再略加调整就可得到了。

G2Plot的交互式饼图

G2Plot(https://g2.antv.vision/zh)是一套简单、易用、并具备一定扩展能力和组合能力的统计图表库。

G2Plot提供了在线作图工具,简单易学:

https://antv-g2plot.gitee.io/zh/examples/gallery

其中就包含了蜘蛛布局标签的饼图的可视化方案。

G2Plot的本地配置,大家有兴趣可自行摸索,反正我是失败了……

pyecharts的交互式饼图(python作图)

pyecharts(http://pyecharts.herokuapp.com/)是一款将python与echarts结合的强大的数据可视化工具,可用于绘制多种交互式图形。在它的库中,提供了蜘蛛布局标签的饼图的可视化方案。

网上能找到的教程大多是旧版pyecharts的,新版pyecharts变更太大且文档不全一时折腾不出来(本人用python大多都是处理文本,极少作图,不太会搞),下面还是展示的使用旧版pyecharts作图。

#安装旧版 pyecharts,没啥,因为新版的教程少,没看懂.......
#在这个链接下载旧版 pyecharts
#https://files.pythonhosted.org/packages/52/b8/e46a41c44176cd247cb1fd437e38e179ea604de28c91755c30be1046772c/pyecharts-0.5.11-py2.py3-none-any.whl#注意使用 python3 环境
#对于 conda 的 python3,先把下载下的 pyecharts-0.5.11-py2.py3-none-any.whl 放在 conda 的 pkgs 路径下
#最后执行安装,shell 命令行
pip install pyecharts-0.5.11-py2.py3-none-any.whl

进入python3作图,一个示例如下。

最后输出网页文件html,交互式图形,并可从中获取png图片。

##进入 python3,执行
from pyecharts import Pielabel = ['Proteobacteria', 'Acidobacteria', 'Bacteroidetes', 'Actinobacteria', 'Gemmatimonadetes', 'Firmicutes', 'Chloroflexi', 'Verrucomicrobia', 'Nitrospirae', 'Latescibacteria', 'Others']
value = [0.455, 0.115, 0.151, 0.079, 0.090, 0.007, 0.020, 0.015, 0.019, 0.009, 0.040]pie = Pie()
pie.add('', label, value, is_label_show = True, label_color= ['#8DD3C7', '#FFFFB3', '#BEBADA', '#FB8072', '#80B1D3', '#FDB462', '#B3DE69', '#FCCDE5', '#BC80BD', '#CCEBC5', 'gray'])
#pie.add('', label, value, is_label_show = True, is_legend_show = False, label_color= ['#8DD3C7', '#FFFFB3', '#BEBADA', '#FB8072', '#80B1D3', '#FDB462', '#B3DE69', '#FCCDE5', '#BC80BD', '#CCEBC5', 'gray'])
pie.render(path = 'pie.html')

plotly的交互式饼图(R作图)

其实最初是想用R搞定的,无奈一直没找到可用R包能够绘制这类饼图。想想大神们无需调用任何包就可以用基本元件从头构建,可惜咱也根本没那水平啊

plotly包的交互式饼图倒是可以把标签显示在外侧防止重叠,尽管样式不是“蜘蛛布局标签”,但也是非常美观的。

注:plotly(https://plot.ly/)是数据可视化的强大工具,支持python、javascript、matlab、R等许多API,大家感兴趣可自行摸索,这里只展示R环境的plotly。

dat <- data.frame(
label = c('Proteobacteria', 'Acidobacteria', 'Bacteroidetes', 'Actinobacteria', 'Gemmatimonadetes', 'Firmicutes', 'Chloroflexi', 'Verrucomicrobia', 'Nitrospirae', 'Latescibacteria', 'Others'),
value = c(0.455, 0.115, 0.151, 0.079, 0.090, 0.007, 0.020, 0.015, 0.019, 0.009, 0.040))library(plotly)p <- plot_ly(dat, labels = ~label, values = ~value, type = 'pie', textposition = 'outside', textinfo = 'label+percent') %>%layout(title = 'Letters', xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))p

html可视化布局工具_简介一些蜘蛛布局标签的饼图的绘制方法相关推荐

  1. python可视化图表工具_酷炫的可视化图表工具来帮忙 深度评测五大Python数据可视化工具...

    原标题:酷炫的可视化图表工具来帮忙 深度评测五大Python数据可视化工具 不少Python用户的一大诉求是做出各种酷炫的可视化图表,而这就需要了解清楚工具特色,才好在制作不同类型图表顺利找到适合自己 ...

  2. 55种数据可视化开源工具_通过开源工具增强学生能力的15种方法

    55种数据可视化开源工具 该学年即将恢复,因此您将在接下来的几周内在Opensource.com上看到更多教育文章. 最近,我读了约翰·斯宾塞(John Spencer)和AJ朱利安尼(AJ Juli ...

  3. docker 可视化管理工具 shipyard 简介

    目录 1.前言 2.shipyard介绍 容器管理 具体容器详情 镜像管理 3.shipyard安装 (1)镜像下载 (2)脚本安装shipyard 1.前言 谈及docker,避免不了需要熟练的记住 ...

  4. 蜘蛛日志分析工具_如何分析蜘蛛日志?

    什么是蜘蛛日志? 所谓的蜘蛛日志就是当搜索引擎向服务器发送请求时产生的访问记录文件. 每个网站都会有日志文件,但是很多时候,日志文件只有在网站出现问题的时候才会被查阅.在seo方面,日志文件是更容易被 ...

  5. mongodb可视化管理工具_对我来说数据库图形化管理工具用这个足够了

    1. 前言 我是一个有软件洁癖的人,能用现有的软件解决问题的绝不安装新的软件.Java后端开发主要跟数据库打交道,所以数据库图形化界面(GUI)是少不了的.通常图形化操作关系型数据库(RMDBS)大多 ...

  6. python可视化开源工具_这5款Python可视化神器,总有一款适合你!

    我们都知道视觉是人们很重要的一种感官,而Python中可视化,在数据相关的研发中也起到"一木支危楼 "的作用.如果从直接查看离线存储在各类数据库中杂乱无章的数据,会让人瞬间感到崩溃 ...

  7. python足球数据可视化_NBA数据分析_python可视化数据分析_可视化数据分析工具_可视化分析工具-帆软...

    夺冠没含金量!python和BI可视化分析,湖人赢在这点上. 在经历了很多很多之后,湖人队终于获得了总冠军,众望所归. 如果科比还在的话,一定也很自豪吧,毕竟上一次夺冠还是10年前. 那问题来了,为什 ...

  8. docker 可视化管理工具 rancher 简介

    目录 1.Rancher介绍 Rancher组成 Rancher展示 Web管理界面-简单易用 环境管理 主机管理 应用商店 负载均衡 部署NFS连接外部存储 2.Rancher安装 (1)镜像下载 ...

  9. java 多版本管理工具_简介linux下的多版本管理工具—alternatives

    alternatives是Unix下重要的版本管理工具,它最早是在debain的系统中出现,因为它强大实用性使得它在各个Unix环境中大量的移植使用,而我们在平时的时候可能最经常使用的是java的op ...

最新文章

  1. mysql数据更新回退_Mysql的几个灵魂拷问(一)
  2. 执行startx后Ubuntupassword正确进不去的问题
  3. Android 手机适配
  4. 1.QML语法、属性和元素
  5. html设置字体整体放大,请教怎么样可以只放大或缩小内容层里的字体呢?我不想让整页都放大缩小。请指教!谢谢!_html/css_WEB-ITnose...
  6. CentOS7重新生成 /boot/grub2/grub.cfg
  7. 将RGB值转换为灰度值的简单算法(转)
  8. 浅析掌握 Python数据分析与展示的几个要点
  9. Ubuntu时间显示不准确的解决方案
  10. 编写一程序,输入一个字符串,查找该字符串中是否包含“abc”。
  11. Pentium 4处理器架构/微架构/流水线 (10) - NetBurst执行核详解 - 高速缓存/数据预取
  12. Android 获取联系人的公司,android-如何从设备的联系人列表中获取用户...
  13. “敏捷项目管理就是胡闹!”
  14. java 中的匿名内部类
  15. 基于Transformers+CNN/LSTM/GRU的文本分类
  16. 拓端tecdat|通过Python中的Apriori算法进行关联规则挖掘
  17. java treemap get_java.util.TreeMap.get()
  18. 二年级计算机考试题,二年级计算机笔测试题(XX-XX第一学期
  19. 卸载centos7自带java,安装oracle的jdk8
  20. fanuc机器人试题_工业机器人知识要点解析(FANUC机器人)

热门文章

  1. Android帧缓冲区(Frame Buffer)硬件抽象层(HAL)模块Gralloc的实现原理分析(5)...
  2. OSPF外部路由汇总
  3. IIS7.0通过FastCGI方式运行PHP遇到的一些问题及解决方法
  4. IIS目录权限设置说明
  5. Celery异步调度框架(二)与Django结合使用
  6. Mvc检查图片格式后上传
  7. 4.19计算机网络笔记
  8. winform实现word转换为PDF(.doc)
  9. 关于钥匙串中所有证书签名无效的问题解决纪录
  10. Oracle压缩总结2— 估计表压缩效应