How to plot this

Hey im whriting on an Essay and i would like make a Barplot like this:

I can do everything i just cant find a way to make the bars start at different hights.
I also cant find a different plottype to do that. The closest would be boxplots bot they have all these unneccesery lines.
Thanks in advance.

Hi, welcome!

We don't really have enough info to help you out. Could you ask this with a minimal REPRoducible EXample (reprex)? A reprex makes it much easier for others to understand your issue and figure out how to help.

If you've never heard of a reprex before, you might want to start by reading this FAQ:


# first way

ggplot() +
  geom_ribbon(aes(
    ymin = -2,
    ymax = 2,
    x = c(0, 1)
  )) +
  geom_ribbon(aes(
    ymin = -1,
    ymax = 1,
    x = c(1, 2)
  )) +
  geom_ribbon(aes(
    ymin = 1,
    ymax = 4,
    x = c(2, 3)
  )) + xlab("x") + ylab("y")


# second way

t1 <- tribble(
  ~ymin, ~ymax, ~x,
  -2, 2, 0,
  -2, 2, 1,
  -1, 1, 1,
  -1, 1, 2,
  1, 4, 2,
  1, 4, 3
)


ggplot(
  data = t1,
  aes(
    ymin = ymin,
    ymax = ymax,
    x = x
  )
) +
  geom_ribbon()+ ylab("y")
2 Likes

The first approach is probably the better one, because then it can be coloured individually (if needed)

ggplot() +
  geom_ribbon(aes(
    ymin = -2,
    ymax = 2,
    x = c(0, 1)), fill = "steelblue") +
  geom_ribbon(aes(
    ymin = -1,
    ymax = 1,
    x = c(1, 2)), fill = "palegreen4") +
  geom_ribbon(aes(
    ymin = 1,
    ymax = 4,
    x = c(2, 3)), fill = "sienna3") + 
  xlab("x") + ylab("y")
1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.