用'在R中绘制游泳图;空的';堆叠钢筋之间的间距(ggplot)
问题描述 我正在尝试使用ggplot在R中绘制一个游泳图。但是,当我希望在绘图的两个堆叠条之间有“空”空间时,我遇到了一个问题:这些条彼此相邻 代码和样本数据 我有以下样本数据:用'在R中绘制游泳图;空的';堆叠钢筋之间的间距(ggplot),r,ggplot2,R,Ggplot2,问题描述 我正在尝试使用ggplot在R中绘制一个游泳图。但是,当我希望在绘图的两个堆叠条之间有“空”空间时,我遇到了一个问题:这些条彼此相邻 代码和样本数据 我有以下样本数据: # Sample data df <- read.table(text="patient start keytreat duration sub-1 0 treat1 3 sub-1 8 treat2 2
# Sample data
df <- read.table(text="patient start keytreat duration
sub-1 0 treat1 3
sub-1 8 treat2 2
sub-1 13 treat3 1.5
sub-2 0 treat1 4.5
sub-3 0 treat1 4
sub-3 4 treat2 8
sub-3 13.5 treat3 2", header=TRUE)
#示例数据
df我认为在这种情况下,geom\u bar
不是正确的geom。它实际上是用来显示频率或计数的,你不能明确地控制它们的开始或结束坐标
geom_段
可能就是您想要的:
库(tidyverse)
#样本数据
df
# Plot: bars
bars <- map(unique(df$patient)
, ~geom_bar(stat = "identity", position = "stack", width = 0.6,
, data = df %>% filter(patient == .x)))
# Create plot
ggplot(data = df, aes(x = patient,
y = duration,
fill = reorder(keytreat,-start))) +
bars +
guides(fill=guide_legend("ordering")) +
coord_flip()