When using `scales="free_x"`

in `facet_wrap`

the default seems to be that every subplot will take up the same amount of horizontal space and the x axes in each subplot will be scaled in order for this to happen. Is it possible to have the scale of the x axes be constant across the facets (with the width of each subplot different if necessary)?

For example, running the following code produces a plot where the variables on the x axis on the right are further apart than on the left (since there are 2 and 3 different values of x respectively). Is there a way to make it so the space between a,b,c and d,e is the same?

```
library(ggplot2)
df <- data.frame(x=c("a", "b", "c", "d", "e"),
y=1:5,
type=c(1, 1, 1, 2, 2))
p <- ggplot(df, aes(x=x, y=y)) +
geom_point() +
facet_wrap(.~type, scales = "free_x")
print(p)
```

Thanks!

### >Solution :

You are looking for `facet_grid()`

with the argument `space = "free"`

:

```
ggplot(df, aes(x=x, y=y)) +
geom_point() +
facet_grid(.~type, scales = "free_x", space = "free")
```

Output is: