R语言之反转ggplot2中的图例键顺序方法详解

 更新时间:2023年05月19日 09:25:55   作者:冷冻工厂  
在本教程中,我们将学习如何反转ggplot2中图例键的顺序,文章通过详细的示例代码给大家介绍如何反转ggplot2中的图例键顺序,感兴趣的同学可以跟着小编一起来学习

在 ggplot2 中,当我们在 aes() 中使用颜色或填充参数为变量着色时,我们会得到一个带有键的图例,显示哪些键匹配哪些颜色。在这里,我们将展示如何使用 guides() 参数为两种类型的图反转图例键的顺序,一种是带有由“颜色”参数制作的图例的散点图,另一种是带有颜色的条形图添加了“填充”参数。

让我们从加载 tidyverse 开始。

library(tidyverse)
theme_set(theme_bw(16))

我们将使用 tidyverse 提供的钻石数据。

diamonds %>% head()

带彩色点的散点图

让我们在两个变量之间绘制散点图,并使用 aes() 中的颜色参数为第三个(分类)变量着色。

在这里,我们使用从钻石数据中随机抽取的 200 个数据点,使用 slice_sample() 函数制作散点图。

diamonds %>% 
  slice_sample(200) %>%
  ggplot(aes(x=carat, y=price, color=cut))+
  geom_point()
ggsave("how_to_reverse_legend_key_order_legend_with_color.png")

这就是使用默认图例键排序的散点图的样子。

我们可以使用带有颜色参数的 guides() 函数来反转图例键顺序。我们使用颜色参数来反转,因为我们之前在 aes() 函数中使用颜色参数创建了图例。 reverse = TRUE 的 guide_legend() 函数实际上颠倒了 kegend 键顺序。

diamonds %>% 
  slice_sample(n=200) %>%
  ggplot(aes(x=carat, y=price, color=cut))+
  geom_point()+
  guides(color = guide_legend(reverse = TRUE))
ggsave("reverse_legend_key_order_legend_with_color.png")

带填充颜色的条形图

在第二个示例中,让我们制作一个条形图,其中填充了第二个变量指定的颜色。我们在这里使用 aes() 中的 fill 参数来添加颜色,用颜色填充条形图。

diamonds %>% 
  ggplot(aes(cut, fill=clarity))+
  geom_bar()+
  scale_fill_brewer(palette="Dark2")
ggsave("how_to_reverse_legend_key_order_legend_with_fill.png")

我们可以使用 guides() 函数,但这次使用 fill 参数来反转此处的图例键顺序,因为图例是使用 aes() 中的 fill 参数创建的。

diamonds %>% 
  ggplot(aes(cut, fill=clarity))+
  geom_bar()+
  scale_fill_brewer(palette="Dark2")+
  guides(fill = guide_legend(reverse = TRUE))
ggsave("reverse_legend_key_order_for_legend_with_fill.png")

到此这篇关于R语言之反转ggplot2中的图例键顺序方法详解的文章就介绍到这了,更多相关R语言ggplot2图例键顺序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • R语言中data.frame的常用操作总结

    R语言中data.frame的常用操作总结

    这篇文章主要介绍了R语言中data.frame的常用操作总结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • R语言交叉验证的实现代码

    R语言交叉验证的实现代码

    这篇文章主要介绍了R语言交叉验证的实现,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • R语言关于生存分析知识点总结

    R语言关于生存分析知识点总结

    在本篇文章里,小编给大家整理的是一篇关于R语言生存分析的相关知识点及实例内容,有兴趣的朋友们跟着学习下吧。
    2021-05-05
  • R 安装包安装(install.packages)时报错的解决方案

    R 安装包安装(install.packages)时报错的解决方案

    这篇文章主要介绍了R 安装包安装(install.packages)时报错的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • R语言如何实现多元线性回归

    R语言如何实现多元线性回归

    这篇文章主要给大家介绍了关于R语言如何实现多元线性回归的相关资料,文中介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • R语言绘制频率直方图的案例

    R语言绘制频率直方图的案例

    这篇文章主要介绍了R语言绘制频率直方图的案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • R语言 如何删除指定变量或对象

    R语言 如何删除指定变量或对象

    这篇文章主要介绍了R语言删除指定变量或对象的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • R语言关于泊松回归知识点总结

    R语言关于泊松回归知识点总结

    在本篇文章里小编给大家分享的是一篇关于R语言关于泊松回归知识点总结内容,有兴趣的朋友们可以学习下。
    2021-05-05
  • Rstudio更换默认下载镜像(下载源)的操作教程

    Rstudio更换默认下载镜像(下载源)的操作教程

    这篇文章主要介绍了Rstudio更换默认下载镜像(下载源)的操作教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • R语言多线程运算操作(解决R循环慢的问题)

    R语言多线程运算操作(解决R循环慢的问题)

    这篇文章主要介绍了R语言多线程运算操作(解决R循环慢的问题),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04

最新评论