ggplot2 中的饼图从数据框中选取单个样本

Pie Chart in ggplot2 picking single samples from a dataframe

我想从我的数据框生成一个简单的饼图,它有多个样本。

示例数据框如下所示:

Sample <- c("S1", "S2", "S3")
Var1 <- c(4,5,3)
Var2 <- c(1,9,4)
Var3 <- c(2,1,3)
df <- data.frame(Sample, Var1, Var2, Var3)

我想为每个样本绘制一个饼图。在 excel 中,这非常简单直接,如下所示。

如何使用 ggplot2 生成类似的东西?

您的数据格式似乎不整齐。如果你重塑它,它更容易绘制。这是一个使用 tidyr

的示例
library(ggplot2)
library(tidyr)
df %>% 
  pivot_longer(-Sample) %>% 
  ggplot() + 
    aes(x="", y=value, fill=name) + 
    geom_col(position="fill") + 
    facet_wrap(~Sample) + 
    coord_polar("y")