无论样本数如何,在条形之间保持 space
Maintain space between bars regardless of sample numbers
我想制作几个相同的图 space 条形之间的间隔,不管样本数量如何
如下所述。
不是这样的
我的原剧本是
myData <- read.csv('L1L2_100percent.csv', header = T, sep =',')
ggplot(data = myData, aes(x = region, y = vaf, fill = type)) +
geom_bar(stat = "identity", width = 0.4) +
coord_flip()
我觉得跟保存特定高度的图片有关,但是我觉得高度
必须用样本数来确定,但我不知道确切的值。
您只需要在保存时根据条数按比例调整绘图的高度。
这里,plt1
有 5 个柱而不是 10 个柱,因此它的保存高度应该仅为 plt2
的一半:
library(tidyverse)
# create example data
myData <-
iris %>% transmute(
region = row_number() %% 20,
vaf = Sepal.Length,
type = Species
)
plt1 <-
myData %>%
filter(region < 5) %>%
ggplot(aes(x = region, y = vaf, fill = type)) +
geom_bar(stat = "identity") +
coord_flip()
plt2 <-
myData %>%
filter(region < 10) %>%
ggplot(aes(x = region, y = vaf, fill = type)) +
geom_bar(stat = "identity") +
coord_flip()
ggsave("plt1.png", plt1, height = plt1$data$region %>% unique() %>% length())
ggsave("plt2.png", plt2, height = plt2$data$region %>% unique() %>% length())
Plt1:
Plt2:
我想制作几个相同的图 space 条形之间的间隔,不管样本数量如何
如下所述。
不是这样的
我的原剧本是
myData <- read.csv('L1L2_100percent.csv', header = T, sep =',')
ggplot(data = myData, aes(x = region, y = vaf, fill = type)) +
geom_bar(stat = "identity", width = 0.4) +
coord_flip()
我觉得跟保存特定高度的图片有关,但是我觉得高度 必须用样本数来确定,但我不知道确切的值。
您只需要在保存时根据条数按比例调整绘图的高度。
这里,plt1
有 5 个柱而不是 10 个柱,因此它的保存高度应该仅为 plt2
的一半:
library(tidyverse)
# create example data
myData <-
iris %>% transmute(
region = row_number() %% 20,
vaf = Sepal.Length,
type = Species
)
plt1 <-
myData %>%
filter(region < 5) %>%
ggplot(aes(x = region, y = vaf, fill = type)) +
geom_bar(stat = "identity") +
coord_flip()
plt2 <-
myData %>%
filter(region < 10) %>%
ggplot(aes(x = region, y = vaf, fill = type)) +
geom_bar(stat = "identity") +
coord_flip()
ggsave("plt1.png", plt1, height = plt1$data$region %>% unique() %>% length())
ggsave("plt2.png", plt2, height = plt2$data$region %>% unique() %>% length())
Plt1:
Plt2: