通过时间绘制相对丰度

问题描述 投票:0回答:1

我想绘制许多像这两个对称条,其中条的宽度对应于变量随时间的相对丰度。我在R中找不到任何类似的东西;任何帮助表示赞赏。

t

r ggplot2 plot bar-chart
1个回答
0
投票

您是否正在寻找violin图?

根据您的评论,小提琴情节并不是您所追求的。有两种近似的解决方案,它们都不是理想的,但它们可以使您更进一步:

library(dplyr)
library(tibble)
library(ggplot2)

set.seed(123)
data <- tibble(
  Date = seq.Date(from = as.Date("2020/01/01"), length = 50, by = "day"),
  Value = runif(50, min = 0, max = 10)
)

data <- data %>%
  mutate(Value_plus = Value,
         Value_min = -Value)


p <- ggplot(data = data, aes(fill = "red")) +
  geom_step(aes(x = Date, y = Value_plus)) +
  geom_step(aes(x = Date, y = Value_min))
p

p <- ggplot(data = data, ) +
  geom_ribbon(aes(x = Date, ymin = Value_min, ymax = Value_plus))
p

第一张图具有您在示例中建议的步骤,但是geom_step的填充显得不平凡。使用geom_ribbon的第二个图为您填充,但不包含步骤。有几个解决方案的示例(例如here),如何获取填充的阶梯图。

使用geom_step

enter image description here

使用geom_ribbonenter image description here

© www.soinside.com 2019 - 2024. All rights reserved.