前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【科研猫·绘图】三维饼图-增加厚度才能提升高度

【科研猫·绘图】三维饼图-增加厚度才能提升高度

作者头像
用户6317549
发布2019-10-16 13:22:54
1.5K0
发布2019-10-16 13:22:54
举报
文章被收录于专栏:科研猫

饼图前面我们刚刚讲过,不少同学拿到代码以后跃跃欲试,都能顺利绘制出来。不过,有些爱动脑的同学会问,饼图二维的我能够做出来,那三维的该怎么画? 经常在一些高级图形中看到三维饼图,自己也想做一下,这样可视化的档次感觉瞬间就高级了。

我们发动一下小脑筋想一想,所谓二维是一个面,三维是一个立体,那么如果把二维的面变“厚”,那不就是三维的了?说起来是容易的,我们可以一起操作一下。

其实饼图的绘制方法有很多,像常用的Excel就可以做,但是Excel最大的弊端就是:不能输出矢量图!这个缺点极大地限制了Excel在科研绘图中的应用。今天我们重点学习一下,如何用R语言制作三维饼图。

输入数据

先来看看我们的数据。数据非常简单,分了单纯的两列,第一列是分组信息Group,还有一列是数值Value,共有四行。前面也说过了,饼图只能表示一个数据列。所以,除了分组,就只有一列数据。

图形绘制

现在我们开始画图,在R语言的绘制三维饼图需要使用plotrix包中的pie3D()函数,没错,就是pie3D(),非常好记,二维饼图的pie()函数加个3D就行。pie3D()函数也是需要两个参数,需要给出第一个参数就是:数值,也就是我们这个数据中的Value一列;第二个参数就是:数值的标签,也就是我们数据当中的Group一列。

所以我们可以直接使用

> pie3D(data$Value,labels=data$Group)

命令来做图,画出来就是这样的:

图形调整

这个图呢,看上去有点一般,当然,我们还有很多参数可以调整,使得这个图片看着更立体,更像三维图像。比如height参数可以控制厚度,theta参数控制图形的仰角:

还有两个非常重要的参数就是explode参数和shade参数,explode能够把饼图中不同的组别给拆分开来,而且explode的数值越大,拆分的越开。shade参数顾名思义就是阴影的意思,表示三维投影的深浅,数值越小颜色越深。

最后经过我们反复调整绘图参数,就可以得到自己心仪的图形了,是不是改变很大呢。

结语

R语言中有很多的绘图函数,这些函数使用起来往往是非常简单的,但是如果想要把图形做到非常优雅、高级,实现真正意义的高层次可视化,每个函数里面的参数都需要反复打磨调整,直至画出满意的图形。这个调整的过程经常是繁琐且耗费精力的,通常还需要丰富的绘图经验,乃至平面设计的知识。总之,绘图之路道阻且长,诸位加油吧。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 科研猫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 输入数据
  • 图形绘制
  • 图形调整
  • 结语
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档