ggplot2 1.0.0

@hadley hadley released this Jan 9, 2015 · 1635 commits to master since this release

New features

  • New coordinate system for small scale maps. coord_quickmap() computes and
    sets the correct aspect ratio between one degree of latitude and one degree
    of longitude at the centre of the plotted region. It does not perform full
    fledged mapping projection as coord_map() does and therefore is much
    faster. Yet, it gives a correct approximation for small scale maps (a few
    degrees in either direction) at medium to low latitudes (@jiho, #922).
  • geom_boxplot gain new varwidth argument for controlling whether or not
    the width of boxplots should be proportional to the size of the groups
    (@tsieger, #927).
  • position_jitterdodge() combines position_jitter() and position_dodge(),
    allowing the user to plot and align points generated by e.g. geom_point()
    with those generated by a dodged geom_boxplot(). See
    example(position_jitterdodge) for a potential usage. (@kevinushey, #932)
  • Allow specifying only one of the limits in a scale and use the automatic
    calculation of the other limit by passing NA to to the limit function,
    xlim() or ylim() (@jimhester, #557).
  • Allow to use brewer palettes for continuous scales, through the new
    scale_fill/colour_distiller() functions (@jiho, #925).
  • stat_ellipse() adds data ellipses. It supports bivariate normal and t distributions,
    as well as a euclidian distance circle. (@JoFrhwld, #926)
  • Add new themes: theme_linedraw() is similar to theme_bw() but with
    truly only white and black elements and spacing between elements identical
    to theme_gray. theme_light is similar but with light gray box and axes
    around the plot, to emphasise content more (@jiho, #923)
  • new theme settings panel.margin.x and panel.margin.y (units) allow
    specifying horizontal and vertical gap between panels in facetted plots (for
    both grid and wrap). (Kirill Müller. Fixes #839)
  • Fix vertical justification for rotated text. This will change the appearance
    of plots that use textual elements that are rotated by 90° or 270° and have a
    vjust parameter other than the default 0.5; the interpretation of vjust
    and hjust is now the same for both rotated and non-rotated text elements
    (0 = top/left, 1 = bottom/right, 0.5 = centered). (@krlmlr, #883)
  • Added helper function labeller() for formatting faceting values.
    (@stefanedwards, #910). Added label_wrap_gen based on
    https://github.com/hadley/ggplot2/wiki/labeller#writing-new-labellers
    (@stefanedwards, #910)

Bug fixes and minor improvements

  • aes() no more treats variables like `a..x..b as a calculated aesthetic.
    (@krlmlr, #834.)
  • New aes_q() function to generate aesthetic specifications from
    quoted calls/names. aes_string() uses names x and y for first
    two unnamed arguments.
  • fortify.SpatialPolygonsDataFrame() now calls polygons without
    requiring the sp to be loaded first (@seancarmody, #879).
  • The outliers of geom_boxplot() use the default colour, size and shape from
    geom_point(). Changing the defaults of geom_point() with
    update_geom_defaults() will apply the same changes to the outliers of
    geom_boxplot(). Changing the defaults for the outliers was previously not
    possible. (@ThierryO, #757)
  • geom_dotplot() now works with qplot(). (@rasmusab. Fixes #825)
  • Marginal improvements to theme_bw() and theme_classic() (@jiho, #934)
  • stat_smooth() checks for method = "auto" and method = "glm" in
    a safer way.
  • Add "none" to documentation of theme() for parameter legend.position
    (@krlmlr, #829).

Removed functionality

  • ggpcp(), ggfluctuation(), ggmissing(), ggstructure(), and
    ggorder() are now defunct and have been removed.