r stat_bin()只能有x或y美学

发布于 2025-01-31 05:17:05 字数 508 浏览 2 评论 0原文

我是R的新手,我需要一个直方图,该直方图在X轴上显示了5年的5年以及Y轴上的相应中位数。而且我收到错误stat_bin()只能具有x或y美学。我不知道如何解决这个问题:(

library(ggplot2)

myvars <- c("1965", "1975", "1985", "1995", "2005")
newdata <- Countries_GDP_1960_2020[myvars]
sapply(newdata, mean, na.rm=TRUE)
median1 <- sapply(newdata, median, na.rm=TRUE)

myvars1 <- as.numeric(as.character(myvars))

median2 <- data.frame(median1)


p <- ggplot(median2, aes(x=myvars1, y=median1)) + geom_bar(stat='identity') +
  geom_histogram()

p

I am totally new to R and I need a Histogram which shows 5 different years on the x axis and the corresponding median on the y axis. And I am getting the error stat_bin() can only have an x or y aesthetic. I don´t know how to solve this :(

library(ggplot2)

myvars <- c("1965", "1975", "1985", "1995", "2005")
newdata <- Countries_GDP_1960_2020[myvars]
sapply(newdata, mean, na.rm=TRUE)
median1 <- sapply(newdata, median, na.rm=TRUE)

myvars1 <- as.numeric(as.character(myvars))

median2 <- data.frame(median1)


p <- ggplot(median2, aes(x=myvars1, y=median1)) + geom_bar(stat='identity') +
  geom_histogram()

p

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

挽袖吟 2025-02-07 05:17:05

您可以使用geom_col(stat =“ summary”,fun =“中位数”),如下:

library(ggplot2)

# Create example data
df <- data.frame(
  year = sample(c("1965", "1975", "1985", "1995", "2005"), 100, replace = TRUE),
  value = runif(100, 1, 1000))

# View example data
head(df)
#>   year    value
#> 1 1965 230.6510
#> 2 1975 868.3858
#> 3 1975 356.4177
#> 4 1985 762.8586
#> 5 1985 581.7105
#> 6 1965 274.9215

# Plot bar plot where bar heigh corresponds to median of each year
ggplot(df, aes(x = year, y = value)) +
  geom_bar(stat = "summary", fun = "median") +
  ylab("median value")

“

You can plot the median using geom_col(stat = "summary", fun = "median"), like this:

library(ggplot2)

# Create example data
df <- data.frame(
  year = sample(c("1965", "1975", "1985", "1995", "2005"), 100, replace = TRUE),
  value = runif(100, 1, 1000))

# View example data
head(df)
#>   year    value
#> 1 1965 230.6510
#> 2 1975 868.3858
#> 3 1975 356.4177
#> 4 1985 762.8586
#> 5 1985 581.7105
#> 6 1965 274.9215

# Plot bar plot where bar heigh corresponds to median of each year
ggplot(df, aes(x = year, y = value)) +
  geom_bar(stat = "summary", fun = "median") +
  ylab("median value")

enter image description here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文