专栏首页优雅R「R」ggplot2 图区域放大

「R」ggplot2 图区域放大

这个功能今天工作的时候需要,就搜了一下,有个 ggforce 包可以做这个事情(之前还 mark 过,哈哈)。

简单用示例代码展示如何使用它,主要是根据数据的选择进行放大或者根据坐标范围进行放大。

安装:

install.packages("ggforce")

加载:

library(ggforce)

先看一个正常的图:

ggplot(iris, aes(Petal.Length, Petal.Width, colour = Species)) +
  geom_point()

我们取一个分类的数据进行放大:

ggplot(iris, aes(Petal.Length, Petal.Width, colour = Species)) +
  geom_point() +
  facet_zoom(x = Species == 'versicolor')

突然之间就有点逼格了,如果再配上个主题,再好不过了。

学术版本:

ggplot(iris, aes(Petal.Length, Petal.Width, colour = Species)) +
    geom_point() +
    facet_zoom(x = Species == 'versicolor') + cowplot::theme_cowplot()

娱乐版本:

ggplot(iris, aes(Petal.Length, Petal.Width, colour = Species)) +
    geom_point() +
    facet_zoom(x = Species == 'versicolor') + theme_dark()

还可以选择性展示数据:

ggplot(iris, aes(Petal.Length, Petal.Width, colour = Species)) +
    geom_point() +
    facet_zoom(x = Species == 'versicolor', zoom.data = Species == 'versicolor') + cowplot::theme_cowplot()

再最后看下怎么按坐标范围放大吧:

ggplot(iris, aes(Petal.Length, Petal.Width, colour = Species)) +
    geom_point() +
    facet_zoom(xlim = c(2, 4)) + cowplot::theme_cowplot()

更多学习见包文档:https://ggforce.data-imaginist.com/[1]

参考资料

[1]https://ggforce.data-imaginist.com/: https://ggforce.data-imaginist.com/

本文分享自微信公众号 - 优雅R(elegant-r),作者:王诗翔

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-04-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 「R」逻辑回归、决策树、随机森林

    有监督学习基于一组包含预测变量和输出变量的样本单元。将全部数据分为一个训练数据集和一个验证数据集,其中训练集用于建立预测模型,验证集用于测试模型的准确性。

    王诗翔呀
  • 线性判别分析总览

    线性判别分析总览(Linear Discriminant Analysis,LDA):用于数据预处理中的降维、分类任务,其目标是找到能够最大化类间区分度的坐标轴...

    王诗翔呀
  • 「R」资源|R数据科学导论

    日常逛 GitHub,今天发现了很不错的学习资源。有针对 R 和 Python 2 种不同的版本。我这里截取教程的第一部分知识,读者阅读之后如果比较感兴趣可以通...

    王诗翔呀
  • 真正掌握vuex的使用方法(一)

    咱们知道,vue项目当中的父子组件的交互是单通道传递,父组件通过props向子组件传递参数,而在子组件当中不不能直接修改接收的参数,而是需要通过自定义事件的方式...

    用户1272076
  • 抛弃高通,苹果终自研通信基带芯片

    最近,在移动端通信芯片开发上,苹果公司动作频频,苹果与高通的相爱相杀也进入到全新的阶段。据报道,苹果公司正在开发自己的蜂窝调制解调器技术,并让资深副总裁John...

    镁客网
  • 类的传参以及super属性和super对象

    在上述例子我们也看到了指定的子类特有的方法直接指定,那么我们如何指定子类特有的属性呢?我们这里用到了super方法;

    十月梦想
  • 从小白到独立开发Android和IOS两种平台app过程与总结

    16年上半年在帮老师,帮外面随便做点东西以便得到些生活费养活自己。下半年去外面公司待了一段时间,然后选择回来帮自己做个东西,历时三个月,独自完成安卓及IOS版本...

    用户2802329
  • 《股民的自我修养》读后感一:现实世界和投资世界是颠倒的

    现实世界和投资世界(股票期货虚拟货币等二级市场投资)的运行规律是完全相反的。

    凌帅出口
  • Selenium自动化测试-7.获取元素属性信息

    在上一篇:Selenium自动化测试-鼠标键盘操作,我们了解鼠标键盘的基本操作,包括处理输入、点击、拖动等场景。在做自动化过程中,我们会想验证自己的代码是否正确...

    ITester软件测试小栈
  • C#中Dispose和Close的区别!

    当我们开发C#代码的时候,经常碰到一个问题,有些class提供Close(),有些class提供Dispose(),那么Dispose和Close到底有什么区别...

    菩提树下的杨过

扫码关注云+社区

领取腾讯云代金券