- more intuitive argument naming:
col.event
instead ofevent
col.start
instead ofstart
col.end
instead ofend
col.group
instead ofgroups
col.color
instead ofcolors
col.fontcolor
instead offontcolors
col.tooltip
instead oftooltips
- new function
hc_vistime()
: Create an interactive timeline rendered by the famousHighcharter.js
library
gg_vistime
:- use
geom_text
for labels - avoid overlapping of event labels using
ggrepel::geom_text_repel()
- layout adjustments: Panel border and changes under-the-hood
- use
vistime
:- changes under the hood (vertical and horizontal lines)
- panel border
- usage of package
assertthat
and re-organisation of dependencies
vistime
no longer uses cumbersome Plotly-subplots. Everything renders in the same plot and can be zoomed seamlessly.- Events are drawn from top to bottom (not from bottom to top) - always in the order of the input data frame (per groups that are arranged from top to bottom). This makes the result more intuitive: ¯—-_-_ instead of _-_-—¯
gg_vistime()
as new function to output the timeline as a static ggplot (in addition tovistime
, which outputs an interactive Plotly object).vistime_data()
as new function to output the cleaned and optimized timeline data for your own plotting experiments.
- arguments
showLabels
andlineInterval
have long been deprecated and have now been removed (useshow_labels
andbackground_lines
instead).
- fixed bug for plots having more than 9 groups - in these cases the order was not the same as in the input data frame
- new argument
optimize_y
(default:TRUE
)- if
optimize_y = TRUE
, use heuristic to optimally distribute events on y axis - if
optimize_y = FALSE
, use fixed order on y axis according to input data
- if
- relaxed package dependencies: (e.g.
plotly
only Imports, not Depends)
- hotfix: due to new Plotly version, colors and fontcolors handling was broken. Changed dependency to Plotly > 4.0.0.
- internals (no exporting of helper functions, unit tests using
testthat
package, continuous integration usingtravis
, test code coverage usingcovr
) - activated Github Page: https://shosaco.github.io/vistime/
- argument
showLabels
has been renamed toshow_labels
for consistency. A deprecation message is shown.
- we have a vignette now
- events and ranges that are in the same group are now plotted directly below each other (in the past, all ranges were plotted first, followed by all events). Groups are sorted in order of first appearance but all items of one group are plotted together.
- argument
lineInterval
is now deprecated. It was replaced by the new, more intuitive argumentbackground_lines
- the number of lines to draw in the background. - remove leading and trailing whitespaces of events and groups before drawing
- Hotfix for broken y-axis labeling (introduced through new plotly package 4.8.0.)
- events are now shown as circles (was: squares)
- corrected font colors of Presidents example on help page
- added a new argument
showLabels
to choose whether or not the event labels shall be drawn - improves layout of dense timelines - new argument
lineInterval
: the distance in seconds that vertical lines shall be drawn (to reduce plot size and increase performance). When omitted, a heuristic (as before) is used. - improved heuristic of vertical line drawing
- line width calculation for ranges improved (thicker lines if less events happening simultaneously)
- new parameter:
linewidth
to override the calculated line width for events - layout and labeling improvements
- simplified examples
- improved error checking
- new parameters:
title
(a title for the timeline)tooltips
(column name of data that contains individual tooltips)fontcolors
(column name of data that contains color of the event font)
- ordering of groups in plot is now the same as the order of "groups" column in data
- added more complex example and removed school data/example
- changed
colors
argument default to "color" (i.e. if a columncolor
is present in your data, it will be used for coloring the events) - bugfix if data contains only one event
- bugfix where events where not correctly categorized into their respective groups
- improved error checking
- improved drawing of vertical lines for certain ranges
- major improvement of intelligent levelling of ranges (_-_¯-—)
- improved error checking
- various bugfixes
First public release on 29/01/2017