我有以下几点:
library(tidyverse)
#> + ggplot2 2.2.1.9000 Date: 2017-06-23
#> + tibble 1.3.3 R: 3.3.2
#> + tidyr 0.6.3 GUI: X11
#> + readr 1.1.1 Locale: en_US.UTF-8
#> + purrr 0.2.2.2 TZ: Asia/Tokyo
#> + dplyr 0.7.0
#> + stringr 1.2.0
#> Conflicts -----------------------------------------------------------------
#> * filter(), from dplyr, masks stats::filter()
#> * lag(), from dplyr, masks stats::lag()
tbl <- structure(list(sample = c("Fx", "Vx"), nof_degs = c(6038L,
3606L)), .Names = c("sample", "nof_degs"), class = c("tbl_df",
"tbl", "data.frame"), row.names = c(NA, -2L))
tbl
#> # A tibble: 2 x 2
#> sample nof_degs
#> <chr> <int>
#> 1 Fx 6038
#> 2 Vx 3606
使用以下代码:
library(ggthemes)
ggplot(tbl, aes(x=sample,y=nof_degs)) +
geom_histogram(position=position_dodge(0.01), colour="black", stat="identity", width=0.2) +
geom_rangeframe() +
theme_tufte() +
theme(axis.ticks.length = unit(7, "pt"))
如下图所示:
最佳答案
让我知道这是否足够接近:
ggplot(df, aes(x=sample,y=nof_degs)) +
geom_histogram(position=position_dodge(0.01), colour="black",
stat="identity", width=0.8) +
geom_rangeframe(y=c(0, max(df$nof_degs))) +
theme_tufte() +
theme(axis.ticks.length = unit(5, "pt"))
另一个选项是
aspect.ratio
:ggplot(df, aes(x=sample,y=nof_degs)) +
geom_histogram(position=position_dodge(2), colour="black",
stat="identity", width = 0.6) +
geom_rangeframe(y=c(0, max(df$nof_degs))) +
theme_tufte() +
theme(aspect.ratio = 2) +
theme(axis.ticks.length = unit(5, "pt"))
您可以使用
width
和aspect.ratio
参数来获得所需的图。例如width = 0.8
和aspect.ratio = 1.5
:关于r - 如何扩展x轴和y轴并缩小ggthemes::theme_tufte()中的间隙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44716352/