gpt4 book ai didi

使用 ggplot2 重新创建圆形图

转载 作者:行者123 更新时间:2023-12-02 03:18:11 24 4
gpt4 key购买 nike

我正在尝试使用 R 和 ggplot2 重新创建以下插图:

The Clean Architecture

我创建了以下代码:

library(ggplot2)

df <- data.frame(names = c(
"Enterprise Business Rules",
"ApplicationBusiness Rules",
"Interface Adapters",
"Frameworks & Drivers"))

ggplot(df, aes(x = factor(1), fill = names)) +
geom_bar(width = 1) +
coord_polar() +
xlab("") + ylab("") +
theme_void() +
theme(legend.title = element_blank())

但是输出不正确:

ggplot2 output

我不知道如何更改图层的顺序。也许我错过了关于 ggplot2 和 data.frame 的一些非常重要的东西。

最佳答案

默认情况下,名称按字母顺序排列。您可以通过将 names 作为一个因素并使用 levels 参数指定顺序来解决这个问题。另外,您可以使用 guide_legend 函数的 reverse = TRUE 参数反转图例中的名称顺序。

library(ggplot2)

names <- rev(c(
"Enterprise Business Rules",
"ApplicationBusiness Rules",
"Interface Adapters",
"Frameworks & Drivers"))
df <- data.frame(names = factor(names, levels = names))

ggplot(df, aes(x = factor(1), fill = names)) +
geom_bar(width = 1) +
coord_polar() +
xlab("") + ylab("") +
theme_void() +
theme(legend.title = element_blank()) +
guides(fill = guide_legend(reverse = TRUE))

reprex package 于 2019-04-04 创建(v0.2.1)

关于使用 ggplot2 重新创建圆形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55522850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com