streamgraph is an htmlwidget for making, well, streamgraphs.
A streamgraph (or "stream graph") is a type of stacked area graph which is displaced around a central axis, resulting in a flowing, organic shape. Streamgraphs were developed by Lee Byron and popularized by their use in a February 2008 New York Times article on movie box office revenues. (Wikipedia)
The x axis values can be continous or dates.
xts
objects, but not for a bit.The following functions are implemented:
streamgraph
: Create a new streamgraphsg_axis_x
: Modify streamgraph x axis formattingsg_axis_y
: Modify streamgraph y axis formattingsg_colors
: Modify streamgraph axis text, legend popup label text and tooltip text colors (NOTE: no longer modifies fill colors, use sg_fill_*
for fill colors)sg_legend
: Add select menu "legend" to interactive streamgraphs sg_fill_brewer
: Specify a ColorBrewer palette to use for the stream fillssg_fill_manual
: Specify a manual color palette to use for the stream fillssg_fill_tableau
: Specify a Tableau color palette to use for the stream fllssg_add_marker
: Annotate streamgraph with vertical line and labelsg_annotate
: Annotate streamgraph with a label0.8.1
released - ggplot2 movies fix; corrected numerous notes from CRAN check0.8
released - support for negative Y axis numbers and upgrade to latest D30.7.5
released - key
, value
and date
can be either bare or quoted0.7
released - New sg_add_marker
and sg_annotation
to enable annotation of streamgraphs0.6
released - New scale
parameter to streamgraph
lets you choose between continuous or date scales. 0.5.1
released - sg_colors
now has nothing to do with the stream fills but does set the axis text, legend popup label text and tooltip text.0.5
released - deprecated use of sg_colors
. Its functionality will change soon and is replaced by three sg_fill_*
functions (brewer
, manual
and tableau
) which makes more sense, is aligned to the ggplot2
way of specifying fill aesthetics and now makes it easier to highly customize the streamgraph appearance.0.4.2
released - fixed bug (thanks to teammate @bhaskarvk) that causes inconsistent color rendering for each area component (noticeable on resize of flexible width/height graphs)0.4.1
released - removed warning message when supplying POSIXct
values (remember, POSIXct
still only works for granularities >= 1 day)0.4
released - select menu "legend" (interactive only)0.3.1
released - bug fix to fix error with d3.stack
; streamgraph
will now see if the date input is a year and automatically convert it to the necessary format (no need to use as.Date
)0.3
released - folks can have some fun with new offset
and interpolate
parameters to streamgraph
0.2.2
relased - rly rly rly fixed tooltips now, also assed ability to format y axis text0.2.1
released - ok, working tool tips for realz now0.2
released - working SVG tooltips; general code cleanup0.1
releaseddevtools::install_github("hrbrmstr/streamgraph")
library(streamgraph)
# current verison
packageVersion("streamgraph")
library(dplyr)
ggplot2movies::movies %>%
select(year, Action, Animation, Comedy, Drama, Documentary, Romance, Short) %>%
tidyr::gather(genre, value, -year) %>%
group_by(year, genre) %>%
tally(wt=value) -> dat
streamgraph(dat, "genre", "n", "year", interactive=TRUE) %>%
sg_axis_x(20, "year", "%Y") %>%
sg_fill_brewer("PuOr")
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.