NEWS.md
fix get_legend() for redesigned ggplot legend system (#202)
fix test for ggplot object class (#210)
fix label order when laying out plots by column rather than by row (@Doubt-0KB, #203)
size argument in element_rect() and element_line() (@Yunuuuu, #190)plot_grid() now accepts byrow as an argument to place plots by row or by column onto the plot area (@BrianLang, #162).agg_null_device().draw_image(), draw_plot(), and draw_grob() have gained additional alignment parameters halign and valign which allow internal alignment relative to the box into which content is drawn.insert_xaxis_grob() and insert_yaxis_grob(), clipping is now configurable.as_grob(), ggdraw(), and plot_grid().In many ways, cowplot now behaves more appropriately and plays nicer with the R environment and other R packages. However, this means that several breaking changes were introduced:
theme_set(theme_cowplot()) to your code to restore the old behavior.font_size and font_family. Previously, theme_nothing() and theme_map() used base_size and base_family.cowplot::ggsave() was renamed to cowplot::ggsave2(), so that the ggplot2 version of ggsave() is no longer masked by the cowplot version.Other breaking changes: - The defaults for save_plot() were changed somewhat. This may require adjustment if you have code depending on it.
rectangle_key_glyph() and circle_key_glyph() make it possible to generate customized legend glyphs.stamp(), stamp_good(), stamp_bad(), stamp_ugly(), stamp_wrong() allow labeling of plots as good, bad, ugly, wrong, etc.as_grob() that can convert base plots, lattice plots, and ggplot2 plots into grobs that can then be drawn using standard grid approaches.set_null_device() to customize the null graphics device that is used in ggdraw(), plot_grid(), etc. There is no one null device that always works, so customization is needed.theme_minimal_grid(), theme_minimal_hgrid(), and theme_minimal_vgrid(). Also, theme_cowplot() is now also available as theme_half_open().get_plot_component() and several wrapper functions for getting titles, axes, panels, and so on. This also lets get_panel() extract from plots with more than one panel. get_panel_component() allows you to further extract components like geoms from the plot panel (@malcolmbarrett, #111).theme_cowplot() and derived themes.background_grid() defaults so they match the new grid themes.plot_to_gtable() to as_gtable().get_legend() now returns NULL if there is no legend, instead of raising an error.theme_map(). Code provided by Spencer Fox, https://github.com/sjfox.axis_canvas() function and related functions to make marginal plots and plot annotations simplerplot_to_gtable function which converts most anything into a gtable for further use with cowplotinherit.aes = FALSE to draw functions where neededplot_grid can now be controlled with additional position parameters label_x and label_y. This closes issue #32.Major changes: - Now requires ggplot2 version 2.0.0 or higher. Use cowplot 0.5.0 with older versions of ggplot2. - Because of the dependency on ggplot2 2.0.0, the default design is changed. No more bold face for axis labels - Add auto-generation of labels in plot_grid() - Add vignettes describing plot annotations and shared legends among plots
Major changes: - Fix label positioning in plot_grid() so it is not affected by the scale parameter - Add draw_label() function which can draw both text and plotmath expressions - Add parameters hjust and vjust to plot_grid() to allow fine-tuning of label position - Add annotations underneath plot, via add_sub() function
Other changes: - Improve vignettes
Major changes: - Added a function switch_axis_position() which can move/copy the x and/or y axis of a plot to the other side - plot_grid() can now align graphs - plot_grid() can now make grids with varying column widths and row heights
Other changes: - Various improvements in the documentation - Code has been separated into multiple files for easier maintenance