[英]Circular bar chart in ggplot R
我正在嘗試為簡單數據創建圓形條形圖。 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,它假定三個值:早,准時和晚。
謝謝你。
就像是
dataframe %>%
ggplot(aes(x = id, y = n) +
geom_bar() +
coord_polar()
但不知道你到底要做什么......
歡迎來到 Stack Overflow 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)
這是輸出:
請讓我們知道這是否是您正在尋找的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.