📜  如何使用 ggplot2 在 R 中重新排序箱线图?

📅  最后修改于: 2022-05-13 01:55:18.811000             🧑  作者: Mango

如何使用 ggplot2 在 R 中重新排序箱线图?

在本文中,我们将讨论如何在 R 编程语言中使用 ggplot2 对箱线图重新排序。

为了重新排序箱线图,我们将使用 ggplot2 的 reorder()函数。

默认情况下,ggplot2 按字母顺序对组进行排序。但是为了更好地可视化数据,有时我们需要以递增和递减的顺序对它们进行重新排序。这就是 reorder()函数发挥作用的地方。当我们在美学函数aes() 中指定 x 轴变量时,我们使用 reorder()函数。默认情况下,Reorder()函数按 x 轴变量的平均值对载体进行排序。

示例 1:按升序重新排序

在此示例中,箱线图已使用 reorder()函数重新排序。箱线图的所有点均按其 x 轴值的均值递增顺序排列。



R
# load library tidyverse
library(tidyverse)
  
# Diamonds dataset is provided by R natively
# we will use that same dataset for our plot
# basic boxplot
# reorder plot using reorder() function
# reorder function reorders plot according to 
# mean of variable
ggplot(diamonds, aes(x=reorder(cut,price), y=price)) +
  
  # geom_boxplot is used to plot the boxplot
  geom_boxplot()


R
# load library tidyverse
library(tidyverse)
  
# Diamonds dataset is provided by R natively
# we will use that same dataset for our plot
# basic boxplot
# reorder plot using reorder() function
# reorder function reorders plot according to mean of variable
# Add -ve sign in price to get result in descending order
ggplot(diamonds, aes(x=reorder(cut, -price), y=price)) +
  
  # geom_boxplot is used to plot the boxplot
  geom_boxplot()


输出:

在这里,在此箱线图中,由于使用了 reorder()函数,所有箱体都按价值价格均值的递增顺序排列。

示例 2:按降序重新排序

要按降序对数据重新排序,我们将 -ve 值作为参数传递给 reorder()函数。这会根据作为参数传递的数据平均值的降序对绘图重新排序。

电阻

# load library tidyverse
library(tidyverse)
  
# Diamonds dataset is provided by R natively
# we will use that same dataset for our plot
# basic boxplot
# reorder plot using reorder() function
# reorder function reorders plot according to mean of variable
# Add -ve sign in price to get result in descending order
ggplot(diamonds, aes(x=reorder(cut, -price), y=price)) +
  
  # geom_boxplot is used to plot the boxplot
  geom_boxplot() 

输出:

此处,在此箱线图中,由于使用了 reorder()函数,所有箱体均按价值价格均值的降序排列。