Skip to content

density, histogram: free x-axis scales in facets show full range instead of panel-specific ranges #1443

@alshan

Description

@alshan

In ggplot2, when using facets with free scales, each panel shows an independent axis range (regardless of the value of 'trim' parameter):

data <- data.frame(
    value = c(
        rnorm(100, mean=5, sd=2),      # Group A: mean=5
        rnorm(100, mean=150, sd=20)    # Group B: mean=150
    ),
    group = rep(c('A', 'B'), each=100)
)

p <- ggplot(data) + geom_density(aes(value, colour=group), trim=FALSE)
p + facet_wrap(facets='group', ncol=1, scales='free_x')
p
Image

In similar situation Lets-Plot shows the full data range across all panels.

data = pd.DataFrame({
    'value': np.concatenate([
        np.random. normal(5, 2, 100),      # Group A:  mean=5
        np.random.normal(150, 20, 100)    # Group B: mean=150
    ]),
    'group': np.repeat(['A', 'B'], 100)
})

p = ggplot(data) + geom_density(aes('value', color='group'))
p + facet_wrap(facets='group', scales='free_x')
p
Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions