When you have flipped coordinates, how do you reduce the space between bars that are narrow and the panel border? Using the data frame df and the ggplot
commands, there is much white space between the bottom bar and the tick marks (and similarly a wide space above the "vendor" bar).
df <- data.frame(x = c("firm", "vendor"), y = c(50, 20))
ggplot(df, aes(x = x, y = y)) +
geom_bar(stat = "identity", width = 0.4) +
theme_tufte() + coord_flip() +
labs(x = "", y = "")
I tried scale_x_discrete
with both limits
and expand
arguments to no avail as well as position = position dodge
, likewise with no effect.
This question offers coord_equal
to change the aspect ratio, and thereby reduce or eliminate the extra space, but notes that the solution does not work with coord_flip
.
I think I have found a solution. You can remove width
from geom_bar
and introduce theme(aspect.ratio = .2)
, then you can play with the ratio to find the desired width. And unlike coord_equal
or coord_fixed
is compatible with coord_flip
.
ggplot(df, aes(x = x, y = y)) +
geom_bar(stat = "identity") +
theme_tufte() + theme(aspect.ratio = .2) +
coord_flip() +
labs(x = "", y = "")
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With