在 ggplot2 中创建华夫饼图

Create waffle chart in ggplot2

我正在尝试创建这样的图表:

ggplot2.

这个想法是可视化 True/False 值的分布,即在上面的条形图中,80 个中有 3 个,在下面的条形图中,有 280 个。 在 ggplot2 中如何做到这一点?

您可以使用 waffle package.

library(waffle)

parts <- c('TRUE' = 3, 'FALSE' = 77)
p <- waffle(parts, rows = 8, colors = c("black", "grey70"))
p

class(p)
#[1] "gg"     "ggplot"

如上图所示,这就是组合两个图表的方法

iron(
  waffle(
    c('TRUE' = 3, 'FALSE' = 77),
    colors = c("black", "grey70"),
    size = 0.5,
    pad = 20,
    legend_pos = "none"
  ),
  waffle(
    c('TRUE' = 2, 'FALSE' = 278),
    colors = c("black", "grey70"),
    size = 0.5,
    legend_pos = "bottom"
  )
)