我正在尝试为简单数据创建圆形条形图。 R Graph Gallery 为此提供了很好的参考:https://www.r-graph-gallery.com/296-add-labels-to-circular-barplot.html。
我是我的数据框结构(来自dput(data)
):
structure(list(month = c("Jan", "Feb", "Mar", "Apr", "Dec"),
n = c(333, 557, 98, 545, 654), id = 1:5), class = "data.frame", row.names = c(NA,
-5L))
我无法正确躲避杠铃。我想使用另一个名为 paystatus 的分类变量来躲避杠,它假定三个值: early , ontime 和 late < / em>。
谢谢。
答案 0 :(得分:0)
类似
dataframe %>%
ggplot(aes(x = id, y = n) +
geom_bar() +
coord_polar()
但不知道确切要做什么...
答案 1 :(得分:0)
欢迎堆积Surbhi Mishra。
我试图从您与我们分享的 R Graph Gallery 中复制示例。但是下次尝试对此进行详细说明。它可以帮助我们帮助您...:)
让我开始追逐。我无法使用 paystatus ,因为您尚未共享数据,但我认为您可能想要这样的东西:
# setup environment
library(tidyverse)
# create dataframe
data = data.frame(
month = c('Jan', 'Feb', 'Mar', 'Apr', 'Dec'),
n = c(333, 557, 98, 545, 654),
id = 1:5
)
# define labels
nrows = nrow(data)
angle = 90 - 360*(data$id - 0.5)/nrows
label = data
label$hjust = ifelse(angle < -90, 1, 0)
label$angle = ifelse(angle < -90, angle + 180, angle)
# plot
ggplot(data, aes(x = as.factor(id), y = n)) +
geom_bar(stat = "identity", fill = alpha("skyblue", 0.7)) +
ylim(-200, 700) +
theme_minimal() +
theme(
axis.text = element_blank(),
axis.title = element_blank(),
panel.grid = element_blank(),
plot.margin = unit(rep(-1, 4), "cm")) +
coord_polar(start = 0) +
geom_text(data = label, aes(x = id, y = n + 10, label = month, hjust = hjust),
color = "black", fontface = "bold", alpha = 0.6, size = 4,
angle = label$angle, inherit.aes = FALSE)
以下是输出:
请,让我们知道您是否正在寻找
。