New Upstream Snapshot - r-cran-dygraphs

Ready changes

Summary

Merged new upstream version: 1.1.1.6+git20210303.1.70b60ab+dfsg (was: 1.1.1.6+dfsg).

Resulting package

Built on 2022-11-10T20:01 (took 7m28s)

The resulting binary packages can be installed (if you have the apt repository enabled) by running one of:

apt install -t fresh-snapshots r-cran-dygraphs

Diff

diff --git a/DESCRIPTION b/DESCRIPTION
index b41616a..c3f5bea 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,10 +1,10 @@
 Package: dygraphs
 Type: Package
 Title: Interface to 'Dygraphs' Interactive Time Series Charting Library
-Version: 1.1.1.6
+Version: 1.1.1.7
 Authors@R: c(
     person("Dan", "Vanderkam", role = c("aut", "cph"),
-       comment = "dygraphs library in htmlwidgets/lib, http://dygraphs.com/"),
+       comment = "dygraphs library in htmlwidgets/lib, https://dygraphs.com/"),
     person("Petr", "Shevtsov", role = c("cre", "cph"),
        email = "petr.shevtsov@gmail.com"),
     person("JJ", "Allaire", role = c("aut")),
@@ -31,11 +31,11 @@ Imports: magrittr, htmlwidgets (>= 0.6), htmltools (>= 0.3.5), zoo (>=
         1.7-10), xts (>= 0.9-7)
 Suggests: testthat
 Enhances: rmarkdown (>= 0.3.3), shiny (>= 0.10.2.1)
-RoxygenNote: 6.0.1
+RoxygenNote: 7.1.1
 NeedsCompilation: no
-Packaged: 2018-07-11 21:29:28 UTC; petr
+Packaged: 2022-11-10 19:57:43 UTC; root
 Author: Dan Vanderkam [aut, cph] (dygraphs library in htmlwidgets/lib,
-    http://dygraphs.com/),
+    https://dygraphs.com/),
   Petr Shevtsov [cre, cph],
   JJ Allaire [aut],
   RStudio [cph],
@@ -47,5 +47,3 @@ Author: Dan Vanderkam [aut, cph] (dygraphs library in htmlwidgets/lib,
   jQuery contributors [ctb, cph] (jQuery library; authors listed in
     inst/htmlwidgets/lib/jquery/AUTHORS.txt)
 Maintainer: Petr Shevtsov <petr.shevtsov@gmail.com>
-Repository: CRAN
-Date/Publication: 2018-07-11 22:00:03 UTC
diff --git a/MD5 b/MD5
deleted file mode 100644
index aa2e295..0000000
--- a/MD5
+++ /dev/null
@@ -1,104 +0,0 @@
-faababe893251e9db4c51c79684d1db0 *DESCRIPTION
-478275df13aabf277268819985dd26c6 *LICENSE
-e09bb85e8ffdf991a4a77ef13ac20035 *NAMESPACE
-cf88962f7299f69e9249708cfd41e77b *R/annotation.R
-0b321c1ded1efa12b5d5f3def26ee6b3 *R/axis.R
-e3bbd4e78debce6608012ba7f8606577 *R/callbacks.R
-07480346a2e5928ac0a30f1335e684c3 *R/candlestick.R
-28f91b3a047925d62795dda6c4cc71e5 *R/css.R
-fbf71ea01b2496fc25b790dd595a5a7e *R/dependency.R
-0e421d874ed2abba03c50419734d1a00 *R/dygraph.R
-fd4f37647f2f9159532f84bbf7f19966 *R/event.R
-4f4b501096d38742cbb0d304c90a88c8 *R/exports.R
-758696d8334fd45d829f0ae12ca87c66 *R/group.R
-220fcfa2b497b52f699fdddf8ca67a00 *R/highlight.R
-302416bac9c364a316e1a936ca1a12f5 *R/imports.R
-eade5f22f79e851cf42f0c5752f9fe4d *R/legend.R
-b39974de52089a8c64810b338b089380 *R/options.R
-56551b3ee3a8b37f5ce250cd39c28665 *R/plotters.R
-710b4cca6350558782cbd0d21cae3150 *R/plugins.R
-be804bd15b6a93c8116f0101a32b4230 *R/range-selector.R
-1dab89681ffa4d2634970106d23a3f4c *R/rebase.R
-b8c07f56a78b434148c6065628a92095 *R/roller.R
-15dd52488ad442d0d5afde71e404cc5c *R/series.R
-34df143dceebeed3ed061c9644659860 *R/shading.R
-458657cdea67386ff88252100d5a11c5 *R/utils.R
-b550b2c6aa8b6547482dc99e87039d94 *inst/COPYING
-6f8c020781f3ad24e958acf23e4059cc *inst/NEWS
-dc9503ccfce1fb5642e9cf6232482b2f *inst/NOTICE
-6148fca8d6b995eb1b12a3af3ceea36b *inst/examples/examples.R
-ce6d8de02ff1a720bc5e1fd861e635c9 *inst/examples/examples.Rmd
-bcda1529a26c0bb293b4c181972789ac *inst/examples/shiny/DESCRIPTION
-469d2e0b7f068fc95ca1259c9c9b87e6 *inst/examples/shiny/server.R
-d2a2683697266876537e92a4d6cd787b *inst/examples/shiny/ui.R
-dc6ac85951a573be75f21facd4c50851 *inst/htmlwidgets/dygraphs.js
-2e62b15fe1007c51031e9546e4a8adf3 *inst/htmlwidgets/dygraphs.yaml
-e1a5e2346cad6d3236921f9581922b3f *inst/htmlwidgets/lib/dygraphs/dygraph-combined-dev.js
-a6fc6e899b07c124d0a0c9b1cb3e9db4 *inst/htmlwidgets/lib/dygraphs/dygraph-combined.js
-9b8f08609e27a3e159a4a7e6812a793e *inst/htmlwidgets/lib/dygraphs/dygraph.css
-7ed7680fdc24db044dd7df07ca7681f6 *inst/htmlwidgets/lib/dygraphs/shapes.js
-0c25027310365789e2227bd79e635d25 *inst/htmlwidgets/lib/fquarter/moment-fquarter.min.js
-12b40fddbb08ec43e278e7d8a0ab5543 *inst/htmlwidgets/lib/jquery/AUTHORS.txt
-8101d596b2b8fa35fe3a634ea342d7c3 *inst/htmlwidgets/lib/jquery/jquery.min.js
-0492956919c8d71786e042c5ec997022 *inst/htmlwidgets/lib/timezone/moment-timezone-with-data.js
-a3c5ceeede2101b2a7ce244f2b0bafa4 *inst/htmlwidgets/lib/timezone/moment.js
-7cdbda877dfcbb5c3aa28c0658f3c541 *inst/plotters/barchart.js
-7e7ddc85343862b9446f87948c3cd086 *inst/plotters/barseries.js
-b35a02a73fa74cfbb6e093ab89d8994b *inst/plotters/candlestick.js
-330da77de115cb689f8c0b4c7d5bf81f *inst/plotters/candlestickgroup.js
-f644c81b41bdc4f9979a8f2c9a2d202d *inst/plotters/errorline.js
-012f134d9fb6a92addb5902eab16e61b *inst/plotters/errorplotter.js
-038478f748c574250f358f88f8aaa78a *inst/plotters/filledline.js
-c29774fcb7d32cf81d65b01d47960ee3 *inst/plotters/fillplotter.js
-6590a070b69abf134bbf9d1e3d525067 *inst/plotters/lineplotter.js
-b0f8faf7a2c123209f73cc497b297402 *inst/plotters/multicolumn.js
-c366182746a105461da14854d269d07c *inst/plotters/multicolumngroup.js
-9d763e3be2cdc9a4f5d5230eaa8dba51 *inst/plotters/stackedbarchart.js
-f8ce64c7c602a92d80f761de99e1575a *inst/plotters/stackedbargroup.js
-0441a26c12b54d23824da65932af9700 *inst/plotters/stackedlinegroup.js
-0d25164c835de33e6f46416524385e37 *inst/plotters/stackedribbongroup.js
-a025a57a2b0c6f06ecc7dc9ded970d78 *inst/plotters/stemplot.js
-633eee500f47799140246dc90f251dd4 *inst/plugins/compress.js
-bbc04cd12abead4f06fa09cd56382fc3 *inst/plugins/crosshair.js
-8d38dbb480dbc5656a889a22528af359 *inst/plugins/rebase.js
-544a7f902819f313e27ba6f762fa384a *inst/plugins/ribbon.js
-68157f803d4bf2cfa2e4357104f76acd *inst/plugins/unzoom.js
-24d956aa127381b64c3f4383aab46eb6 *man/Plotters.Rd
-1c2c351aa9784833d06fab1b21004877 *man/dyAnnotation.Rd
-ca298222d001c042bedb5a87904da24b *man/dyAxis.Rd
-92bf201d1a6c98be57623e5c06f754a6 *man/dyCSS.Rd
-d57e7322fbb90ba4445ca8665c69bd06 *man/dyCallbacks.Rd
-42c47da187f473519ed0248f4a87854f *man/dyCrosshair.Rd
-b9d6561a82e5d03e493f5225b2b13661 *man/dyDataHandler.Rd
-43cdae9c046c6d18795e9761940edb3a *man/dyDependency.Rd
-8432a088624a8a901bc8f5b5f53605be *man/dyEvent.Rd
-ad851b97e76a745c4b9e2216afff6209 *man/dyGroup.Rd
-31c15800320021b72f7c1873e648741d *man/dyHighlight.Rd
-4163b0b43736f8f4ff24e83ddd367fd4 *man/dyLegend.Rd
-3ccc2d598cedb51718d9303dc5c2e10c *man/dyLimit.Rd
-e2b0a4c7b006dd14a1a8c1419858ef17 *man/dyOptions.Rd
-58060dac67d8c6c2e1c2b8d319f728fc *man/dyPlotter.Rd
-8d0ac13861d7e51d7ddb34f2dbb3753d *man/dyPlugin.Rd
-d4f78436dee67974628e19c115c489e3 *man/dyRangeSelector.Rd
-c8b4d3f4668edd03057e67a91bac9bd0 *man/dyRebase.Rd
-b09c203a4fd87199e11ab420dffc23e9 *man/dyRibbon.Rd
-30e11df34eb9949965d8504b96d1bc3e *man/dyRoller.Rd
-17adc47b20768f4d1f2835c7e3c37dc6 *man/dySeries.Rd
-8ff957f6b00f4bea21d8c994f3e7ae39 *man/dySeriesData.Rd
-2b342b01cf89ff58e3f644e49c6929d9 *man/dyShading.Rd
-808c17edb5553f20b124773063c2e90c *man/dyUnzoom.Rd
-8c10fa638d159c0cab7aa19ebf7a9ae8 *man/dygraph-shiny.Rd
-8041b766fd713620f3af74815fd2694f *man/dygraph.Rd
-f49a5b1e99c980454c5a7ddfa3e31e74 *man/dygraphs-exports.Rd
-8f88c19b1d765f807d4c3b3b8ddbec4b *tests/testthat.R
-ab9b3cf0a73223d1bd8d72275b1b85e4 *tests/testthat/test-axis.R
-09d58e8769738b5ca4b815a400b01541 *tests/testthat/test-callbacks.R
-3e7a92c91ddc3e4ea275d262a556e1b2 *tests/testthat/test-dygraph.R
-a93256e819de7a60ed6e5f7329031898 *tests/testthat/test-event.R
-6d00f7ea8eb6b187bf3b59cabbbba51f *tests/testthat/test-highlight.R
-dd3e01a699f88f1c8180166727c20b6c *tests/testthat/test-legend.R
-181115b74ea54dbfa1e1767d025ffae5 *tests/testthat/test-plotter.R
-5a96b4edb7a6d63ec3d967940cf84228 *tests/testthat/test-range-selector.R
-50233c63cabad6b97ac60b82e5869d51 *tests/testthat/test-roller.R
-40dc3e035ed493bd9dbb9ca5b4d1ee0a *tests/testthat/test-series.R
-6f12648db8ac1083180b78281a6b8f04 *tests/testthat/test-shading.R
diff --git a/inst/NEWS b/NEWS.md
similarity index 96%
rename from inst/NEWS
rename to NEWS.md
index 63b5af1..a7d7132 100644
--- a/inst/NEWS
+++ b/NEWS.md
@@ -1,8 +1,15 @@
+dygraphs 1.1.1.7
+--------------------------------------------------------------------------------
+
+* Added the ability for multiple series have different point shapes 
+
+
 dygraphs 1.1.1.6
 --------------------------------------------------------------------------------
 
 * Fix bug which prevented accessing dygraph object in HTMLWidget (#196)
 
+
 dygraphs 1.1.1.5
 --------------------------------------------------------------------------------
 
@@ -12,6 +19,7 @@ dygraphs 1.1.1.5
 * Updated dyPlugin behavior to merge same plugin's options for every repeated
   function call
 
+
 dygraphs 1.1.1.4
 --------------------------------------------------------------------------------
 
diff --git a/R/annotation.R b/R/annotation.R
index a6fdc3d..4d64404 100644
--- a/R/annotation.R
+++ b/R/annotation.R
@@ -1,8 +1,8 @@
 
 #' Annotation for dygraph chart
-#' 
+#'
 #' Define a text annotation for a data-point on a dygraph chart.
-#' 
+#'
 #' @param dygraph Dygraph to add an annotation to
 #' @param x Either numeric or date value indicating where to place the
 #'   annotation. For date value, this should be of class \code{POSIXct} or
@@ -14,46 +14,45 @@
 #' @param cssClass CSS class to use for styling the annotation.
 #' @param tickHeight Height of the tick mark (in pixels) connecting the point to
 #'   its flag or icon.
-#' @param attachAtBottom If true, attach annotations to the x-axis, rather than 
+#' @param attachAtBottom If true, attach annotations to the x-axis, rather than
 #'   to actual points.
-#' @param clickHandler JavaScript function to call when an annotation is 
+#' @param clickHandler JavaScript function to call when an annotation is
 #'   clicked.
-#' @param mouseOverHandler JavaScript function to call when the mouse hovers 
+#' @param mouseOverHandler JavaScript function to call when the mouse hovers
 #'   over an annotation.
-#' @param mouseOutHandler JavaScript function to call when the mouse exits an 
+#' @param mouseOutHandler JavaScript function to call when the mouse exits an
 #'   annotation.
-#' @param dblClickHandler JavaScript function to call when an annotation is 
+#' @param dblClickHandler JavaScript function to call when an annotation is
 #'   double clicked.
 #' @param series Series to attach the annotation to. By default, the last series
 #'   defined using \code{\link{dySeries}}.
-#'   
+#'
 #' @note Annotations are bound to specific series in the input data. If you have
-#'   only one series or if you define annotations immediately after a call to 
-#'   \code{\link{dySeries}} then you need not specify the series explicitly. 
+#'   only one series or if you define annotations immediately after a call to
+#'   \code{\link{dySeries}} then you need not specify the series explicitly.
 #'   Otherwise, you should use the \code{series} parameter to indicate which
 #'   series the annotation should be bound to.
-#'   
-#'   Annotation event handlers can also specified globally (see 
+#'
+#'   Annotation event handlers can also specified globally (see
 #'   \code{\link{dyCallbacks}}).
-#'   
+#'
 #' @note See the
 #'   \href{https://rstudio.github.io/dygraphs/gallery-annotations.html}{online
 #'   documentation} for additional details and examples.
-#'   
+#'
 #' @return Dygraph with specified annotation
-#' 
-#' @examples 
+#'
+#' @examples
 #' library(dygraphs)
-#'   
+#'
 #' dygraph(presidents, main = "Presidential Approval") %>%
 #'   dyAxis("y", valueRange = c(0, 100)) %>%
 #'   dyAnnotation("1950-7-1", text = "A", tooltip = "Korea") %>%
-#'   dyAnnotation("1965-1-1", text = "B", tooltip = "Vietnam")   
-#'   
+#'   dyAnnotation("1965-1-1", text = "B", tooltip = "Vietnam")
 #' @export
 dyAnnotation <- function(dygraph,
                          x,
-                         text, 
+                         text,
                          tooltip = NULL,
                          width = NULL,
                          height = NULL,
@@ -65,21 +64,25 @@ dyAnnotation <- function(dygraph,
                          mouseOutHandler = NULL,
                          dblClickHandler = NULL,
                          series = NULL) {
-  
+
   # convert x to date format then to a suitable time value if it is date format
-  if (dygraph$x$format == "date")
+  if (dygraph$x$format == "date") {
     x <- asISO8601Time(x)
-  
+  }
+
   # validate series if specified
-  if (!is.null(series) && ! series %in% dygraph$x$attrs$labels) {
-    stop("The specified series was not found. Valid series names are: ", 
-         paste(dygraph$x$attrs$labels[-1], collapse = ", "))
+  if (!is.null(series) && !series %in% dygraph$x$attrs$labels) {
+    stop(
+      "The specified series was not found. Valid series names are: ",
+      paste(dygraph$x$attrs$labels[-1], collapse = ", ")
+    )
   }
-  
+
   # default the series if necessary
-  if (is.null(series))
+  if (is.null(series)) {
     series <- dygraph$x$attrs$labels[length(dygraph$x$attrs$labels)]
-  
+  }
+
   # create annotation
   annotation <- list()
   annotation$x <- x
@@ -95,7 +98,7 @@ dyAnnotation <- function(dygraph,
   annotation$mouseOutHandler <- JS(mouseOutHandler)
   annotation$dblClickHandler <- JS(dblClickHandler)
   annotation$series <- series
-  
+
   # add it
   dygraph$x$annotations[[length(dygraph$x$annotations) + 1]] <- annotation
 
diff --git a/R/axis.R b/R/axis.R
index 6b1b13d..0906a15 100644
--- a/R/axis.R
+++ b/R/axis.R
@@ -1,93 +1,92 @@
 #' dygraph axis
-#' 
-#' Define options for an axis on a dygraph plot. Note that options will use the 
-#' default global setting (as determined by \code{\link{dyOptions}}) when not 
+#'
+#' Define options for an axis on a dygraph plot. Note that options will use the
+#' default global setting (as determined by \code{\link{dyOptions}}) when not
 #' specified explicitly.
-#' 
+#'
 #' @inheritParams dyOptions
-#'   
+#'
 #' @param dygraph Dygraph to add an axis definition to
 #' @param name Axis name ('x', 'y', or 'y2')
 #' @param label Label to display for axis (defaults to none).
-#' @param valueRange Explicitly set the vertical range of the graph to 
-#'   \code{c(low, high)}. This may be set on a per-axis basis to define each 
-#'   y-axis separately. If either limit is unspecified, it will be calculated 
-#'   automatically (e.g. \code{c(NULL, 30)} to automatically calculate just the 
+#' @param valueRange Explicitly set the vertical range of the graph to
+#'   \code{c(low, high)}. This may be set on a per-axis basis to define each
+#'   y-axis separately. If either limit is unspecified, it will be calculated
+#'   automatically (e.g. \code{c(NULL, 30)} to automatically calculate just the
 #'   lower bound).
 #' @param logscale When set for the y-axis or x-axis, the graph shows that axis
 #'   in log scale. Any values less than or equal to zero are not displayed.
 #'   Showing log scale with ranges that go below zero will result in an
 #'   unviewable graph. Not compatible with showZero. connectSeparatedPoints is
 #'   ignored. This is ignored for date-based x-axes.
-#' @param ticker This lets you specify an arbitrary JavaScript function to 
-#'   generate tick marks on an axis. The tick marks are an array of (value, 
-#'   label) pairs. The built-in functions go to great lengths to choose good 
-#'   tick marks so, if you set this option, you'll most likely want to call one 
-#'   of them and modify the result. See dygraph-tickers.js and the 
-#'   \href{http://dygraphs.com/options.html}{dygraphs documentation} for 
+#' @param ticker This lets you specify an arbitrary JavaScript function to
+#'   generate tick marks on an axis. The tick marks are an array of (value,
+#'   label) pairs. The built-in functions go to great lengths to choose good
+#'   tick marks so, if you set this option, you'll most likely want to call one
+#'   of them and modify the result. See dygraph-tickers.js and the
+#'   \href{https://dygraphs.com/options.html}{dygraphs documentation} for
 #'   additional details).
-#' @param rangePad Add the specified amount of extra space (in pixels) around 
+#' @param rangePad Add the specified amount of extra space (in pixels) around
 #'   the value range to ensure points at the edges remain visible.
 #' @param labelWidth Width of the div which contains the y-axis label. Since the
-#'   y-axis label appears rotated 90 degrees, this actually affects the height 
+#'   y-axis label appears rotated 90 degrees, this actually affects the height
 #'   of its div.
-#' @param labelHeight Height of the x-axis label, in pixels. This also controls 
-#'   the default font size of the x-axis label. If you style the label on your 
-#'   own, this controls how much space is set aside below the chart for the 
+#' @param labelHeight Height of the x-axis label, in pixels. This also controls
+#'   the default font size of the x-axis label. If you style the label on your
+#'   own, this controls how much space is set aside below the chart for the
 #'   x-axis label's div.
-#' @param axisHeight Height, in pixels, of the x-axis. If not set explicitly, 
+#' @param axisHeight Height, in pixels, of the x-axis. If not set explicitly,
 #'   this is computed based on \code{axisLabelFontSize} and \code{axisTickSize}.
-#' @param axisLineColor Color of the x- and y-axis lines. Accepts any value 
-#'   which the HTML canvas strokeStyle attribute understands, e.g. 'black' or 
+#' @param axisLineColor Color of the x- and y-axis lines. Accepts any value
+#'   which the HTML canvas strokeStyle attribute understands, e.g. 'black' or
 #'   'rgb(0, 100, 255)'.
 #' @param axisLineWidth Thickness (in pixels) of the x- and y-axis lines.
-#' @param axisLabelColor Color for x- and y-axis labels. This is a CSS color 
+#' @param axisLabelColor Color for x- and y-axis labels. This is a CSS color
 #'   string. This may also be set globally using \code{dyOptions}.
-#' @param axisLabelFontSize Size of the font (in pixels) to use in the axis 
-#'   labels, both x- and y-axis. This may also be set globally using 
+#' @param axisLabelFontSize Size of the font (in pixels) to use in the axis
+#'   labels, both x- and y-axis. This may also be set globally using
 #'   \code{dyOptions}.
 #' @param axisLabelWidth Width, in pixels, of the axis labels
-#' @param axisLabelFormatter JavaScript function to call to format the tick 
-#'   values that appear along an axis (see the 
-#'   \href{http://dygraphs.com/options.html}{dygraphs documentation} for 
+#' @param axisLabelFormatter JavaScript function to call to format the tick
+#'   values that appear along an axis (see the
+#'   \href{https://dygraphs.com/options.html}{dygraphs documentation} for
 #'   additional details).
 #' @param valueFormatter JavaScript function to call to provide a custom display
-#'   format for the values displayed on mouseover (see the 
-#'   \href{http://dygraphs.com/options.html}{dygraphs documentation} for 
+#'   format for the values displayed on mouseover (see the
+#'   \href{https://dygraphs.com/options.html}{dygraphs documentation} for
 #'   additional details).
-#' @param pixelsPerLabel Number of pixels to require between each x- and 
+#' @param pixelsPerLabel Number of pixels to require between each x- and
 #'   y-label. Larger values will yield a sparser axis with fewer ticks. Defaults
 #'   to 50 (x-axis) or 30 (y-axes).
 #' @param drawGrid Whether to display grid lines in the chart.
 #' @param gridLineColor The color of the grid lines.
-#' @param gridLineWidth Thickness (in pixels) of the grid lines drawn under the 
+#' @param gridLineWidth Thickness (in pixels) of the grid lines drawn under the
 #'   chart.
-#' @param independentTicks Only valid for y and y2, has no effect on x: This 
-#'   option defines whether the y axes should align their ticks or if they 
-#'   should be independent. Possible combinations: 1.) y=true, y2=false 
-#'   (default): y is the primary axis and the y2 ticks are aligned to the the 
-#'   ones of y. (only 1 grid) 2.) y=false, y2=true: y2 is the primary axis and 
-#'   the y ticks are aligned to the the ones of y2. (only 1 grid) 3.) y=true, 
-#'   y2=true: Both axis are independent and have their own ticks. (2 grids) 4.) 
+#' @param independentTicks Only valid for y and y2, has no effect on x: This
+#'   option defines whether the y axes should align their ticks or if they
+#'   should be independent. Possible combinations: 1.) y=true, y2=false
+#'   (default): y is the primary axis and the y2 ticks are aligned to the the
+#'   ones of y. (only 1 grid) 2.) y=false, y2=true: y2 is the primary axis and
+#'   the y ticks are aligned to the the ones of y2. (only 1 grid) 3.) y=true,
+#'   y2=true: Both axis are independent and have their own ticks. (2 grids) 4.)
 #'   y=false, y2=false: Invalid configuration causes an error.
-#'   
+#'
 #' @return Axis options
-#'   
-#' @note See the 
-#'   \href{https://rstudio.github.io/dygraphs/gallery-axis-options.html}{online 
+#'
+#' @note See the
+#'   \href{https://rstudio.github.io/dygraphs/gallery-axis-options.html}{online
 #'   documentation} for additional details and examples.
-#'   
+#'
 #' @examples
 #' library(dygraphs)
-#' 
+#'
 #' dygraph(nhtemp, main = "New Haven Temperatures") %>%
 #'   dyAxis("y", label = "Temp (F)", valueRange = c(40, 60)) %>%
 #'   dyOptions(axisLineWidth = 1.5, fillGraph = TRUE, drawGrid = FALSE)
-#'     
 #' @export
 dyAxis <- function(dygraph,
-                   name, 
-                   label = NULL, 
+                   name,
+                   label = NULL,
                    valueRange = NULL,
                    logscale = NULL,
                    ticker = NULL,
@@ -107,67 +106,74 @@ dyAxis <- function(dygraph,
                    gridLineColor = NULL,
                    gridLineWidth = NULL,
                    independentTicks = NULL) {
-  
-  if (!name %in% c("x", "y", "y2"))
+  if (!name %in% c("x", "y", "y2")) {
     stop("Axis name must be 'x', 'y', or 'y2'")
-  
+  }
+
   # copy attrs for modification
   attrs <- dygraph$x$attrs
-  
+
   axis <- list()
   axis$name <- name
   axis$label <- label
   axis$options <- list()
   axis$options$valueRange <- valueRange
-  
+
   if (!is.null(logscale)) {
-    if (identical(name, "x"))
+    if (identical(name, "x")) {
       axis$options$logscale <- logscale
-    else
+    } else {
       attrs$logscale <- logscale
+    }
   }
-  
-   
+
+
   axis$options$ticker <- JS(ticker)
   if (!is.null(axisHeight)) {
-    if (name == "x")
+    if (name == "x") {
       attrs$xAxisHeight <- axisHeight
-    else
+    } else {
       stop("axisHeight is only applicable to the x axis")
+    }
   }
-  
-  if (!is.null(rangePad))
+
+  if (!is.null(rangePad)) {
     attrs[[sprintf("%sRangePad", axis$name)]] <- rangePad
-  
-  if (!is.null(labelWidth))
+  }
+
+  if (!is.null(labelWidth)) {
     attrs[[sprintf("%sLabelWidth", axis$name)]] <- labelWidth
-  if (!is.null(labelHeight))
+  }
+  if (!is.null(labelHeight)) {
     attrs[[sprintf("%sLabelHeight", axis$name)]] <- labelHeight
-  
+  }
+
   axis$options$axisLineColor <- axisLineColor
   axis$options$axisLineWidth <- axisLineWidth
-  if (!is.null(pixelsPerLabel))
-    axis$options$pixelsPerLabel <- pixelsPerLabel 
+  if (!is.null(pixelsPerLabel)) {
+    axis$options$pixelsPerLabel <- pixelsPerLabel
+  }
   axis$options$axisLabelColor <- axisLabelColor
   axis$options$axisLabelFontSize <- axisLabelFontSize
-  
-  if (!is.null(axisLabelWidth))
+
+  if (!is.null(axisLabelWidth)) {
     axis$options$axisLabelWidth <- axisLabelWidth
-  
+  }
+
   axis$options$axisLabelFormatter <- JS(axisLabelFormatter)
   axis$options$valueFormatter <- JS(valueFormatter)
   axis$options$drawGrid <- drawGrid
   axis$options$gridLineColor <- gridLineColor
   axis$options$gridLineWidth <- gridLineWidth
   axis$options$independentTicks <- independentTicks
- 
+
   # label and options
-  if (!is.null(axis$label))
+  if (!is.null(axis$label)) {
     attrs[[sprintf("%slabel", axis$name)]] <- axis$label
-  attrs$axes[[axis$name]] <- axis$options  
-  
+  }
+  attrs$axes[[axis$name]] <- axis$options
+
   # return modified dygraph
   dygraph$x$attrs <- mergeLists(dygraph$x$attrs, attrs)
   dygraph
 }
-
diff --git a/R/callbacks.R b/R/callbacks.R
index 5084001..ed4c1ed 100644
--- a/R/callbacks.R
+++ b/R/callbacks.R
@@ -1,29 +1,29 @@
 #' Callbacks for dygraph events
-#' 
-#' Set JavaScript callbacks for various dygraph events. See the 
-#' \href{http://dygraphs.com/options.html}{dygraph options} reference for 
+#'
+#' Set JavaScript callbacks for various dygraph events. See the
+#' \href{https://dygraphs.com/options.html}{dygraph options} reference for
 #' additional details on the signature of each callback.
-#' 
+#'
 #' @param dygraph Dygraph to add callbacks to
 #' @param clickCallback A function to call when the canvas is clicked.
-#' @param drawCallback When set, this callback gets called every time the 
-#'   dygraph is drawn. This includes the initial draw, after zooming and 
+#' @param drawCallback When set, this callback gets called every time the
+#'   dygraph is drawn. This includes the initial draw, after zooming and
 #'   repeatedly while panning.
 #' @param highlightCallback When set, this callback gets called every time a new
 #'   point is highlighted.
-#' @param pointClickCallback A function to call when a data point is clicked. 
+#' @param pointClickCallback A function to call when a data point is clicked.
 #'   and the point that was clicked.
-#' @param underlayCallback When set, this callback gets called before the chart 
+#' @param underlayCallback When set, this callback gets called before the chart
 #'   is drawn.
 #' @param unhighlightCallback When set, this callback gets called every time the
 #'   user stops highlighting any point by mousing out of the graph.
-#' @param zoomCallback A function to call when the zoom window is changed 
+#' @param zoomCallback A function to call when the zoom window is changed
 #'   (either by zooming in or out).
-#' @param drawHighlightPointCallback Draw a custom item when a point is 
-#'   highlighted. Default is a small dot matching the series color. This method 
+#' @param drawHighlightPointCallback Draw a custom item when a point is
+#'   highlighted. Default is a small dot matching the series color. This method
 #'   should constrain drawing to within pointSize pixels from (cx, cy)
-#' @param drawPointCallback Draw a custom item when drawPoints is enabled. 
-#'   Default is a small dot matching the series color. This method should 
+#' @param drawPointCallback Draw a custom item when drawPoints is enabled.
+#'   Default is a small dot matching the series color. This method should
 #'   constrain drawing to within pointSize pixels from (cx, cy).
 #' @param annotationClickHandler JavaScript function to call when an annotation
 #'   is clicked. This can also be specified on a per-annotation basis.
@@ -35,9 +35,9 @@
 #' @param annotationDblClickHandler JavaScript function to call when an
 #'   annotation is double clicked. This can also be specified on a
 #'   per-annotation basis.
-#'   
+#'
 #' @return Dygraph with callbacks
-#'   
+#'
 #' @export
 dyCallbacks <- function(dygraph,
                         clickCallback = NULL,
@@ -53,7 +53,6 @@ dyCallbacks <- function(dygraph,
                         annotationMouseOverHandler = NULL,
                         annotationMouseOutHandler = NULL,
                         annotationDblClickHandler = NULL) {
-  
   callbacks <- list()
   callbacks$clickCallback <- JS(clickCallback)
   callbacks$drawCallback <- JS(drawCallback)
@@ -68,8 +67,8 @@ dyCallbacks <- function(dygraph,
   callbacks$annotationMouseOverHandler <- JS(annotationMouseOverHandler)
   callbacks$annotationMouseOutHandler <- JS(annotationMouseOutHandler)
   callbacks$annotationDblClickHandler <- JS(annotationDblClickHandler)
-  
+
   dygraph$x$attrs <- mergeLists(dygraph$x$attrs, callbacks)
-  
+
   dygraph
-}
\ No newline at end of file
+}
diff --git a/R/candlestick.R b/R/candlestick.R
index c9c756a..93e6e90 100644
--- a/R/candlestick.R
+++ b/R/candlestick.R
@@ -4,18 +4,22 @@
 dyCandlestick <- function(dygraph, compress = FALSE) {
   path <- system.file("plotters/candlestick.js", package = "dygraphs")
   path <- normalizePath(path)
-  dygraph <- dyPlotter(dygraph = dygraph,
-                       name = "CandlestickPlotter",
-                       path = path,
-                       version = "1.0")
+  dygraph <- dyPlotter(
+    dygraph = dygraph,
+    name = "CandlestickPlotter",
+    path = path,
+    version = "1.0"
+  )
 
   if (compress) {
     path <- system.file("plugins/compress.js", package = "dygraphs")
     path <- normalizePath(path)
-    dygraph <- dyDataHandler(dygraph = dygraph,
-                             name = "CompressHandler",
-                             path = path,
-                             version = "1.0")
+    dygraph <- dyDataHandler(
+      dygraph = dygraph,
+      name = "CompressHandler",
+      path = path,
+      version = "1.0"
+    )
     dygraph <- dyAxis(dygraph, "x", valueFormatter = "
     function(millis) {
       var monthNames = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
diff --git a/R/css.R b/R/css.R
index 2ffc9a7..f8e7d16 100644
--- a/R/css.R
+++ b/R/css.R
@@ -1,30 +1,30 @@
 #' CSS for dygraph labels and legend
-#' 
-#' Apply custom CSS to the text drawn within a dygraph. See the 
-#' \href{http://dygraphs.com/css.html}{CSS documentation} on the dygraphs 
+#'
+#' Apply custom CSS to the text drawn within a dygraph. See the
+#' \href{https://dygraphs.com/css.html}{CSS documentation} on the dygraphs
 #' website for additional details on which styles are available.
-#' 
+#'
 #' @param dygraph Dygraph to add CSS styles to
-#' @param css Path to css file to be used for styling textual elements of the 
+#' @param css Path to css file to be used for styling textual elements of the
 #'   graph.
-#'   
+#'
 #' @return dygraph with additional CSS styles
-#'   
-#' @note See the 
-#'   \href{https://rstudio.github.io/dygraphs/gallery-css-styling.html}{CSS 
+#'
+#' @note See the
+#'   \href{https://rstudio.github.io/dygraphs/gallery-css-styling.html}{CSS
 #'   Styling} article on the dygraphs for R website for additional details.
-#'   
+#'
 #'   Note that CSS styles are global so will affect all dygraphs on a given web
 #'   page. This also implies that for a page with multiple plots you only need
 #'   to specify styles for the first one (alternatively you can just add them
 #'   directly to the page by other means).
-#'   
+#'
 #' @export
 dyCSS <- function(dygraph, css) {
-  
+
   # read css
   dygraph$x$css <- paste(readLines(css, warn = FALSE), collapse = "\n")
-  
+
   # return modified dygraph
   dygraph
-}
\ No newline at end of file
+}
diff --git a/R/dependency.R b/R/dependency.R
index 27764ba..5174c60 100644
--- a/R/dependency.R
+++ b/R/dependency.R
@@ -43,10 +43,11 @@ dyDependency <- function(dygraph, dependency) {
 dyPlugin <- function(dygraph, name, path, options = list(), version = "1.0") {
   path <- normalizePath(path)
   pluginDependency <- htmlDependency(paste0("Dygraph.Plugins.", name),
-                                     version,
-                                     src = dirname(path),
-                                     script = basename(path),
-                                     all_files = FALSE)
+    version,
+    src = dirname(path),
+    script = basename(path),
+    all_files = FALSE
+  )
   dygraph <- dyDependency(dygraph, pluginDependency)
 
   # add the plugin and it's options (will be evaluated by renderValue)
@@ -62,7 +63,7 @@ dyPlugin <- function(dygraph, name, path, options = list(), version = "1.0") {
     i <- match(names(current.options), names(options))
     i <- is.na(i)
     if (any(i)) {
-      options[names(current.options)[which(i)]] = current.options[which(i)]
+      options[names(current.options)[which(i)]] <- current.options[which(i)]
     }
   }
   dygraph$x$plugins[[name]] <- options
@@ -85,10 +86,11 @@ dyPlugin <- function(dygraph, name, path, options = list(), version = "1.0") {
 dyPlotter <- function(dygraph, name, path, version = "1.0") {
   path <- normalizePath(path)
   plotterDependency <- htmlDependency(paste0("Dygraph.Plotters.", name),
-                                      version,
-                                      src = dirname(path),
-                                      script = basename(path),
-                                      all_files = FALSE)
+    version,
+    src = dirname(path),
+    script = basename(path),
+    all_files = FALSE
+  )
   dygraph <- dyDependency(dygraph, plotterDependency)
 
   dygraph$x$plotter <- name
@@ -112,10 +114,11 @@ dyPlotter <- function(dygraph, name, path, version = "1.0") {
 dyDataHandler <- function(dygraph, name, path, version = "1.0") {
   path <- normalizePath(path)
   dataHandlerDependency <- htmlDependency(paste0("Dygraph.DataHandlers.", name),
-                                          version,
-                                          src = dirname(path),
-                                          script = basename(path),
-                                          all_files = FALSE)
+    version,
+    src = dirname(path),
+    script = basename(path),
+    all_files = FALSE
+  )
   dygraph <- dyDependency(dygraph, dataHandlerDependency)
 
   dygraph$x$dataHandler <- name
diff --git a/R/dygraph.R b/R/dygraph.R
index d362b60..2611a77 100644
--- a/R/dygraph.R
+++ b/R/dygraph.R
@@ -1,12 +1,12 @@
 #' dygraph interactive plot for time series data
-#' 
-#' R interface to interactive time series plotting using the 
-#' \href{http://dygraphs.com}{dygraphs} JavaScript library.
-#' 
+#'
+#' R interface to interactive time series plotting using the
+#' \href{https://dygraphs.com}{dygraphs} JavaScript library.
+#'
 #' @inheritParams htmlwidgets::createWidget
-#' 
-#' @param data Either time series data or numeric data. For time series, this 
-#'   must be an \link[xts]{xts} object or an object which is convertible to 
+#'
+#' @param data Either time series data or numeric data. For time series, this
+#'   must be an \link[xts]{xts} object or an object which is convertible to
 #'   \code{xts}. For numeric data, this must be a named list or data frame,
 #'   where the first element/column provides x-axis values and all subsequent
 #'   elements/columns provide one or more series of y-values.
@@ -15,49 +15,46 @@
 #' @param main Main plot title (optional)
 #' @param xlab X axis label
 #' @param ylab Y axis label
-#' @param group Group to associate this plot with. The x-axis zoom level of 
+#' @param group Group to associate this plot with. The x-axis zoom level of
 #'   plots within a group is automatically synchronized.
 #' @param width Width in pixels (optional, defaults to automatic sizing)
 #' @param height Height in pixels (optional, defaults to automatic sizing)
-#'   
+#'
 #' @return Interactive dygraph plot
-#'   
+#'
 #' @note
 #' See the \href{https://rstudio.github.io/dygraphs/}{online documentation} for
 #' additional details and examples.
-#' 
-#' @examples 
+#'
+#' @examples
 #' library(dygraphs)
 #' lungDeaths <- cbind(mdeaths, fdeaths)
 #' dygraph(lungDeaths)
-#' 
+#'
 #' indoConc <- Indometh[Indometh$Subject == 1, c("time", "conc")]
 #' dygraph(indoConc)
-#' 
 #' @export
 dygraph <- function(data, main = NULL, xlab = NULL, ylab = NULL,
-                    periodicity = NULL, group = NULL, 
+                    periodicity = NULL, group = NULL,
                     elementId = NULL, width = NULL, height = NULL) {
-  
+
   # Test whether x-axis are dates or numeric
   if (xts::xtsible(data)) {
-    
-    if (!xts::is.xts(data))
+    if (!xts::is.xts(data)) {
       data <- xts::as.xts(data)
+    }
     format <- "date"
-    
   } else if (is.list(data) && is.numeric(data[[1]])) {
-    
-    if (is.null(names(data)))
+    if (is.null(names(data))) {
       stop("For numeric values, 'data' must be a named list or data frame")
+    }
     format <- "numeric"
-    
   } else {
     stop("Unsupported type passed to argument 'data'.")
   }
-  
+
   if (format == "date") {
-    
+
     # auto-detect periodicity if not otherwise specified
     if (is.null(periodicity)) {
       if (nrow(data) < 2) {
@@ -66,14 +63,14 @@ dygraph <- function(data, main = NULL, xlab = NULL, ylab = NULL,
         periodicity <- xts::periodicity(data)
       }
     }
-    
+
     # extract time
     time <- time(data)
-    
+
     # get data as a named list
     data <- zoo::coredata(data)
     data <- unclass(as.data.frame(data))
-    
+
     # merge time back into list and convert to JS friendly string
     timeColumn <- list()
     timeColumn[[periodicity$label]] <- asISO8601Time(time)
@@ -82,7 +79,7 @@ dygraph <- function(data, main = NULL, xlab = NULL, ylab = NULL,
     # Convert data to list if it was data frame
     data <- as.list(data)
   }
-  
+
   # create native dygraph attrs object
   attrs <- list()
   attrs$title <- main
@@ -91,9 +88,9 @@ dygraph <- function(data, main = NULL, xlab = NULL, ylab = NULL,
   attrs$labels <- names(data)
   attrs$legend <- "auto"
   attrs$retainDateWindow <- FALSE
-  attrs$axes$x <- list() 
+  attrs$axes$x <- list()
   attrs$axes$x$pixelsPerLabel <- 60
-   
+
   # create x (dygraph attrs + some side data)
   x <- list()
   x$attrs <- attrs
@@ -103,18 +100,18 @@ dygraph <- function(data, main = NULL, xlab = NULL, ylab = NULL,
   x$shadings <- list()
   x$events <- list()
   x$format <- format # Add format for further processing here
-  
+
   # Add attributes required for defining custom series. When a dySeries call
   # is made it places series definition in "manual mode". In this case we
   # need to save the original data.
   attr(x, "time") <- if (format == "date") time else NULL
   attr(x, "data") <- data
   attr(x, "autoSeries") <- 2
-  
+
   # add data (strip names first so we marshall as a 2d array)
   names(data) <- NULL
   x$data <- data
-    
+
   # create widget
   htmlwidgets::createWidget(
     name = "dygraphs",
@@ -127,19 +124,19 @@ dygraph <- function(data, main = NULL, xlab = NULL, ylab = NULL,
 }
 
 #' Shiny bindings for dygraph
-#' 
-#' Output and render functions for using dygraph within Shiny 
+#'
+#' Output and render functions for using dygraph within Shiny
 #' applications and interactive Rmd documents.
-#' 
+#'
 #' @param outputId output variable to read from
 #' @param width,height Must be a valid CSS unit (like \code{"100\%"},
 #'   \code{"400px"}, \code{"auto"}) or a number, which will be coerced to a
 #'   string and have \code{"px"} appended.
 #' @param expr An expression that generates a dygraph
 #' @param env The environment in which to evaluate \code{expr}.
-#' @param quoted Is \code{expr} a quoted expression (with \code{quote()})? This 
+#' @param quoted Is \code{expr} a quoted expression (with \code{quote()})? This
 #'   is useful if you want to save an expression in a variable.
-#'   
+#'
 #' @name dygraph-shiny
 #'
 #' @export
@@ -150,7 +147,8 @@ dygraphOutput <- function(outputId, width = "100%", height = "400px") {
 #' @rdname dygraph-shiny
 #' @export
 renderDygraph <- function(expr, env = parent.frame(), quoted = FALSE) {
-  if (!quoted) { expr <- substitute(expr) } # force quoted
+  if (!quoted) {
+    expr <- substitute(expr)
+  } # force quoted
   htmlwidgets::shinyRenderWidget(expr, dygraphOutput, env, quoted = TRUE)
 }
-
diff --git a/R/event.R b/R/event.R
index 829a071..1ca9cd3 100644
--- a/R/event.R
+++ b/R/event.R
@@ -1,7 +1,7 @@
 #' dygraph event line
-#' 
+#'
 #' Add a vertical event line to a dygraph
-#' 
+#'
 #' @param dygraph Dygraph to add event line to
 #' @param x Either numeric or date/time for the event, depending on the format
 #'   of the x-axis of the dygraph. (For date/time must be a \code{POSIXct}
@@ -9,109 +9,109 @@
 #'   \code{as.POSIXct})
 #' @param label Label for event. Defaults to blank.
 #' @param labelLoc Location for label (top or bottom)
-#' @param color Color of event line. This can be of the form "#AABBCC" or 
+#' @param color Color of event line. This can be of the form "#AABBCC" or
 #'   "rgb(255,100,200)" or "yellow". Defaults to black.
 #' @param strokePattern A predefined stroke pattern type ("dotted", "dashed",
-#'   "dotdash", or "solid") or a custom pattern array where the even index is 
+#'   "dotdash", or "solid") or a custom pattern array where the even index is
 #'   a draw and odd is a space in pixels. Defaults to dashed.
 #' @param date (deprecated) See argument \code{x}.
-#'   
+#'
 #' @return A dygraph with the specified event line.
-#'   
-#' @note See the \href{https://rstudio.github.io/dygraphs/gallery-event-lines.html}{online 
+#'
+#' @note See the \href{https://rstudio.github.io/dygraphs/gallery-event-lines.html}{online
 #'   documentation} for additional details and examples.
-#'   
-#' @examples 
+#'
+#' @examples
 #' library(dygraphs)
-#' 
+#'
 #' dygraph(presidents, main = "Presidential Approval") %>%
 #'   dyAxis("y", valueRange = c(0, 100)) %>%
 #'   dyEvent("1950-6-30", "Korea", labelLoc = "bottom") %>%
 #'   dyEvent("1965-2-09", "Vietnam", labelLoc = "bottom")
-
+#'
 #' dygraph(presidents, main = "Presidential Approval") %>%
 #'   dyAxis("y", valueRange = c(0, 100)) %>%
-#'   dyEvent(c("1950-6-30", "1965-2-09"), c("Korea", "Vietnam"), labelLoc = "bottom") 
-#'  
+#'   dyEvent(c("1950-6-30", "1965-2-09"), c("Korea", "Vietnam"), labelLoc = "bottom")
 #' @export
-dyEvent <- function(dygraph, 
+dyEvent <- function(dygraph,
                     x,
-                    label = NULL, 
+                    label = NULL,
                     labelLoc = c("top", "bottom"),
-                    color = "black", 
+                    color = "black",
                     strokePattern = "dashed",
                     date) {
-  
+
   # Check usage of deprecated argument 'date'
   if (!missing(date)) {
     x <- date
     warning("Argument 'date' is deprecated, please use argument 'x' instead")
   }
-  
+
   # create events
-  if (!is.null(label) && length(x) != length(label))
+  if (!is.null(label) && length(x) != length(label)) {
     stop("Length of 'x' and 'label' does not match")
+  }
   events <-
     lapply(
-      seq_along(x), function(i)
-      {
-        if (is.null(label))
+      seq_along(x), function(i) {
+        if (is.null(label)) {
           eventLabel <- NULL
-        else
+        } else {
           eventLabel <- label[i]
+        }
         list(
-          pos = ifelse(dygraph$x$format == "date", asISO8601Time(x[i]), x[i])
-         ,label = eventLabel
-         ,labelLoc = match.arg(labelLoc, c("top", "bottom"))
-         ,color = color
-         ,strokePattern = resolveStrokePattern(strokePattern)
-         ,axis = "x"
+          pos = ifelse(dygraph$x$format == "date", asISO8601Time(x[i]), x[i]),
+          label = eventLabel,
+          labelLoc = match.arg(labelLoc, c("top", "bottom")),
+          color = color,
+          strokePattern = resolveStrokePattern(strokePattern),
+          axis = "x"
         )
       }
     )
- 
+
   # add it to list of events
   dygraph$x$events <- c(dygraph$x$events, events)
-  
+
   # return modified dygraph
   dygraph
 }
 
 #' dygraph limit line
-#' 
+#'
 #' Add a horizontal limit line to a dygraph
-#' 
+#'
 #' @param dygraph Dygraph to add limit line to
 #' @param limit Numeric position of limit.
 #' @param label Label for limit. Defaults to blank.
 #' @param labelLoc Location for label (left or right).
-#' @param color Color of limit line. This can be of the form "#AABBCC" or 
+#' @param color Color of limit line. This can be of the form "#AABBCC" or
 #'   "rgb(255,100,200)" or "yellow". Defaults to black.
 #' @param strokePattern A predefined stroke pattern type ("dotted", "dashed",
-#'   "dotdash", or "solid") or a custom pattern array where the even index is 
+#'   "dotdash", or "solid") or a custom pattern array where the even index is
 #'   a draw and odd is a space in pixels. Defaults to dashed.
-#'   
+#'
 #' @return A dygraph with the specified limit line.
-#'   
-#' @note See the \href{https://rstudio.github.io/dygraphs/gallery-event-lines.html}{online 
+#'
+#' @note See the \href{https://rstudio.github.io/dygraphs/gallery-event-lines.html}{online
 #'   documentation} for additional details and examples.
-#'   
-#' @examples 
+#'
+#' @examples
 #' library(dygraphs)
-#' 
+#'
 #' dygraph(presidents, main = "Presidential Approval") %>%
-#'   dyAxis("y", valueRange = c(0, 100)) %>% 
+#'   dyAxis("y", valueRange = c(0, 100)) %>%
 #'   dyLimit(max(presidents, na.rm = TRUE), "Max",
-#'           strokePattern = "solid", color = "blue")
-#'  
+#'     strokePattern = "solid", color = "blue"
+#'   )
 #' @export
-dyLimit <- function(dygraph, 
+dyLimit <- function(dygraph,
                     limit,
-                    label = NULL, 
+                    label = NULL,
                     labelLoc = c("left", "right"),
-                    color = "black", 
+                    color = "black",
                     strokePattern = "dashed") {
-  
+
   # create event
   event <- list()
   event$pos <- limit
@@ -120,10 +120,10 @@ dyLimit <- function(dygraph,
   event$color <- color
   event$strokePattern <- resolveStrokePattern(strokePattern)
   event$axis <- "y"
-  
+
   # add it to list of events
   dygraph$x$events[[length(dygraph$x$events) + 1]] <- event
-  
+
   # return modified dygraph
   dygraph
 }
diff --git a/R/exports.R b/R/exports.R
index 0c19dd3..5a027fa 100644
--- a/R/exports.R
+++ b/R/exports.R
@@ -1,9 +1,9 @@
 #' dygraph exported operators and S3 methods
-#' 
+#'
 #' The following functions are imported and then re-exported
 #' from the dygraphs package to avoid listing the magrittr and
 #' zoo packages as Depends of dygraphs.
-#' 
+#'
 #' @name dygraphs-exports
 NULL
 
@@ -22,5 +22,5 @@ NULL
 #' @importFrom zoo as.yearqtr
 #' @name as.yearqtr
 #' @export as.yearqtr
-#' @rdname dygraphs-exports 
+#' @rdname dygraphs-exports
 NULL
diff --git a/R/group.R b/R/group.R
index c9ddc46..3b17da1 100644
--- a/R/group.R
+++ b/R/group.R
@@ -1,44 +1,44 @@
 #' dygraph series group
-#' 
-#' Add a data series group to a dygraph plot. Note that options will use the default 
-#' global setting (as determined by \code{\link{dyOptions}}) when not specified 
-#' explicitly. Importantly, any dySeries options passed can be passed as a vector of values 
+#'
+#' Add a data series group to a dygraph plot. Note that options will use the default
+#' global setting (as determined by \code{\link{dyOptions}}) when not specified
+#' explicitly. Importantly, any dySeries options passed can be passed as a vector of values
 #' and will be replicated across all series named as part of the group. If arguments differ in
-#' length than the number of series named, then the argument vector will be 
+#' length than the number of series named, then the argument vector will be
 #' cycled across the named series.
-#' 
+#'
 #' NOTE: dyGroup will turn off \code{stackedGraph}, as the option will calculated cumulatives using
 #' all series in the underlying dygraph, not just a subset.
-#' 
-#' The dyGroup function can also replicated similar arguments across multiple series, or 
+#'
+#' The dyGroup function can also replicated similar arguments across multiple series, or
 #' be used to apply a grouped custom plotter - i.e., multi-column plotter - to a subset of the
 #' dygraph data series.
-#' 
+#'
 #' @inheritParams dySeries
 #' @inheritParams dyOptions
-#'   
+#'
 #' @param dygraph Dygraph to add a series definition to
-#' @param name character vector of the series within data set. If no name is specified then 
-#'   series are bound to implicitly based on their order within the underlying 
+#' @param name character vector of the series within data set. If no name is specified then
+#'   series are bound to implicitly based on their order within the underlying
 #'   time series object. This parameter can also be a character vector of length
 #'   3 that specifies a set of input column names to use as the lower, value,
 #'   and upper for a series with a shaded bar drawn around it.
 #' @param label Labels to display for series (uses name if no label defined)
-#' @param color Color for series. These can be of the form "#AABBCC" or 
-#'   "rgb(255,100,200)" or "yellow", etc. If not specified then the global 
-#'   colors option (typically based on equally-spaced points around a color wheel). 
+#' @param color Color for series. These can be of the form "#AABBCC" or
+#'   "rgb(255,100,200)" or "yellow", etc. If not specified then the global
+#'   colors option (typically based on equally-spaced points around a color wheel).
 #' @param axis Y-axis to associate the series with ("y" or "y2")
-#' @param stepPlot When set, display the graph as a step plot instead of a line 
+#' @param stepPlot When set, display the graph as a step plot instead of a line
 #'   plot.
 #' @param stemPlot When set, display the graph as a stem plot instead of a line
 #'   plot.
-#' @param fillGraph Should the area underneath the graph be filled? This option 
+#' @param fillGraph Should the area underneath the graph be filled? This option
 #'   is not compatible with error bars.
 #' @param drawPoints Draw a small dot at each point, in addition to a line going
 #'   through the point. This makes the individual data points easier to see, but
 #'   can increase visual clutter in the chart.
-#' @param pointSize The size of the dot to draw on each point in pixels. A dot 
-#'   is always drawn when a point is "isolated", i.e. there is a missing point 
+#' @param pointSize The size of the dot to draw on each point in pixels. A dot
+#'   is always drawn when a point is "isolated", i.e. there is a missing point
 #'   on either side of it. This also controls the size of those dots.
 #' @param pointShape The shape of the dot to draw. Can be one of the following:
 #'   "dot" (default), "triangle", "square", "diamond", "pentagon", "hexagon",
@@ -47,230 +47,250 @@
 #'   used to increase the contrast or some graphs.
 #' @param strokePattern A predefined stroke pattern type ("dotted", "dashed", or
 #'   "dotdash") or a custom pattern array where the even index is a draw and odd
-#'   is a space in pixels. If \code{NULL} then it draws a solid line. The array 
-#'   should have an even length as any odd length array could be expressed as 
+#'   is a space in pixels. If \code{NULL} then it draws a solid line. The array
+#'   should have an even length as any odd length array could be expressed as
 #'   a smaller even length array.
-#' @param strokeBorderWidth Draw a border around graph lines to make crossing 
+#' @param strokeBorderWidth Draw a border around graph lines to make crossing
 #'   lines more easily distinguishable. Useful for graphs with many lines.
-#' @param strokeBorderColor Color for the line border used if 
+#' @param strokeBorderColor Color for the line border used if
 #'   \code{strokeBorderWidth} is set.
-#' 
-#' @param plotter A function which plots the series group. See the 
-#'   \href{http://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
+#'
+#' @param plotter A function which plots the series group. See the
+#'   \href{https://dygraphs.com/tests/plotters.html}{dygraphs documentation} for
 #'   additional details on plotting functions.
-#'   
+#'
 #' @return Dygraph with additional series
-#'   
+#'
 #' @examples
 #' \dontrun{
 #' library(dygraphs)
-#' 
+#'
 #' lungDeaths <- cbind(ldeaths, mdeaths, fdeaths)
-#' 
+#'
 #' dygraph(lungDeaths, main = "Deaths from Lung Disease (UK)") %>%
-#'   dySeries("fdeaths", stepPlot = TRUE, color = "red") %>% 
+#'   dySeries("fdeaths", stepPlot = TRUE, color = "red") %>%
 #'   dyGroup(c("mdeaths", "ldeaths"), drawPoints = TRUE, color = c("blue", "green"))
-#' }   
+#' }
 #'
-#' @note See the 
+#' @note See the
 #'   \href{https://rstudio.github.io/dygraphs/gallery-series-options.html}{online
 #'   documentation} for additional details and examples.
-#'   
+#'
 #' @export
 dyGroup <- function(dygraph,
-                     name = NULL, 
-                     label = NULL,
-                     color = NULL,
-                     axis = "y", 
-                     stepPlot = NULL,
-                     stemPlot = NULL,
-                     fillGraph = NULL,
-                     drawPoints = NULL,
-                     pointSize = NULL,
-                     pointShape = NULL,
-                     strokeWidth = NULL,
-                     strokePattern = NULL,
-                     strokeBorderWidth = NULL,
-                     strokeBorderColor = NULL,
-                     plotter = NULL) {
-  
-  
+                    name = NULL,
+                    label = NULL,
+                    color = NULL,
+                    axis = "y",
+                    stepPlot = NULL,
+                    stemPlot = NULL,
+                    fillGraph = NULL,
+                    drawPoints = NULL,
+                    pointSize = NULL,
+                    pointShape = NULL,
+                    strokeWidth = NULL,
+                    strokePattern = NULL,
+                    strokeBorderWidth = NULL,
+                    strokeBorderColor = NULL,
+                    plotter = NULL) {
+
+
   # get a reference to the underlying data and labels
   data <- attr(dygraph$x, "data")
   labels <- names(data)
 
-  if (length(plotter) > 1) message('dyGroup: pass only a single plotter option')
-  
-  
+  if (length(plotter) > 1) message("dyGroup: pass only a single plotter option")
+
+
   # auto-bind name if necessary
   autobind <- attr(dygraph$x, "autoSeries")
   if (length(name) == 1) {
-    dygraph<-dySeries(dygraph = dygraph, 
-                      name = name, 
-                      label = label, 
-                      color = color, 
-                      plotter = plotter)
+    dygraph <- dySeries(
+      dygraph = dygraph,
+      name = name,
+      label = label,
+      color = color,
+      plotter = plotter
+    )
     return(dygraph)
   }
-  
-  # when setting up the first color, we start handling colors here 
+
+  # when setting up the first color, we start handling colors here
   if (!is.null(color) && is.null(dygraph$x$attrs$colors)) {
-      colors <- dygraphColors(dygraph, length(labels) - 1)
-      dygraph$x$attrs$colors <- colors
+    colors <- dygraphColors(dygraph, length(labels) - 1)
+    dygraph$x$attrs$colors <- colors
   }
 
-  # prepare the colors list for processing 
+  # prepare the colors list for processing
   if (!is.null(dygraph$x$attrs$colors)) {
-     colors <- dygraph$x$attrs$colors
-     names(colors) <- dygraph$x$attrs$labels[-1]
+    colors <- dygraph$x$attrs$colors
+    names(colors) <- dygraph$x$attrs$labels[-1]
   }
-    
+
   # Plotter-mod!  Added the plotter != NULL test to keep base capability while
   # expanding to include group plotters
   # Get the cols where this series is located and verify that they are
   # available within the underlying dataset
   cols <- which(labels %in% name)
   if (length(cols) != length(name)) {
-    stop("One or more of the specified series were not found. ",
-         "Valid series names are: ", paste(labels[-1], collapse = ", "))
+    stop(
+      "One or more of the specified series were not found. ",
+      "Valid series names are: ", paste(labels[-1], collapse = ", ")
+    )
   }
-  
+
   # Data series named here are "consumed" from the automatically generated
   # list of series (they'll be added back in below)
   cols <- which(dygraph$x$attrs$labels %in% name)
   dygraph$x$data <- dygraph$x$data[-c(cols)]
   dygraph$x$attrs$labels <- dygraph$x$attrs$labels[-c(cols)]
 
-   
-  # MUST turn off native stacking option, as underlying dygraph 
+
+  # MUST turn off native stacking option, as underlying dygraph
   # will include custom-plotted points in the stacked calculation
   if (length(dygraph$x$attrs$stackedGraph) > 0) {
-    if (dygraph$x$attrs$stackedGraph) 
-						warning("dyGroup is incompatible with stackedGraph... stackedGraph now FALSE")
+    if (dygraph$x$attrs$stackedGraph) {
+      warning("dyGroup is incompatible with stackedGraph... stackedGraph now FALSE")
+    }
 
-    dygraph$x$attrs$stackedGraph <- FALSE;
+    dygraph$x$attrs$stackedGraph <- FALSE
   }
-   
+
   # Resolve stemPlot into a custom plotter if necessary
   plotter <- resolveStemPlot(stemPlot, plotter)
-  
-  if (!is.null(pointShape))
+
+  if (!is.null(pointShape)) {
     dygraph$x$pointShape <- list()
-   
+  }
+
   l <- length(name)
-  
+
   # copy attrs for modification
   attrs <- dygraph$x$attrs
-  
-  # repeat (most of) the steps from dySeries, just in a loop 
+
+  # repeat (most of) the steps from dySeries, just in a loop
   for (i in 1:l) {
-    
+
     # create series object
     series <- list()
     series$name <- name[i]
-    
+
     # take the passed options and extend to the length of the name vector; it's
     # up to the User to make sure the vectors are of the desired length
     suppressWarnings({
       # for the axis, however, we enforce the same axis across all series named
       # in the group.  We can't stop the user from changing the axis of one or more
       # series later, but at least we can control for some mistakes here
-      series$options$axis <- rep(match.arg(axis, c("y", "y2")), 
-                      			 			length.out = l)[1]
-      if (!is.null(stepPlot)) 
-				series$options$stepPlot <- rep(stepPlot, length.out = l)[i]
-
-      if (!is.null(fillGraph)) 
-				series$options$fillGraph <- rep(fillGraph, length.out = l)[i]
-      
-			if (!is.null(drawPoints)) 
-				series$options$drawPoints <- rep(drawPoints, length.out = l)[i]
-
-      if (!is.null(pointSize)) 
-				series$options$pointSize <- rep(pointSize, length.out = l)[i]
-      
-			if (!is.null(strokeWidth)) 
-				series$options$strokeWidth <- rep(strokeWidth, length.out = l)[i]
-      
-			if (!is.null(strokePattern)) 
-				series$options$strokePattern <- rep(resolveStrokePattern(strokePattern), length.out = l)[i]
-      
-			if (!is.null(strokeBorderWidth)) 
-				series$options$strokeBorderWidth <- rep(strokeBorderWidth, length.out = l)[i]
-      
-			if (!is.null(strokeBorderColor)) 
-				series$options$strokeBorderColor <- rep(strokeBorderColor, length.out = l)[i]
-     
-      # one can use this to pass a group plotter or any combination of individual series plotters 
+      series$options$axis <- rep(match.arg(axis, c("y", "y2")),
+        length.out = l
+      )[1]
+      if (!is.null(stepPlot)) {
+        series$options$stepPlot <- rep(stepPlot, length.out = l)[i]
+      }
+
+      if (!is.null(fillGraph)) {
+        series$options$fillGraph <- rep(fillGraph, length.out = l)[i]
+      }
+
+      if (!is.null(drawPoints)) {
+        series$options$drawPoints <- rep(drawPoints, length.out = l)[i]
+      }
+
+      if (!is.null(pointSize)) {
+        series$options$pointSize <- rep(pointSize, length.out = l)[i]
+      }
+
+      if (!is.null(strokeWidth)) {
+        series$options$strokeWidth <- rep(strokeWidth, length.out = l)[i]
+      }
+
+      if (!is.null(strokePattern)) {
+        series$options$strokePattern <- rep(resolveStrokePattern(strokePattern), length.out = l)[i]
+      }
+
+      if (!is.null(strokeBorderWidth)) {
+        series$options$strokeBorderWidth <- rep(strokeBorderWidth, length.out = l)[i]
+      }
+
+      if (!is.null(strokeBorderColor)) {
+        series$options$strokeBorderColor <- rep(strokeBorderColor, length.out = l)[i]
+      }
+
+      # one can use this to pass a group plotter or any combination of individual series plotters
       series$options$plotter <- JS(plotter)
     })
-    
+
     # KEY!  Adding a group designator to aid in group plotters
     # By concatenating the names provided in the name age, it becomes
     # a unique identifier than won't be duplicated unless the entire group of names
     # passed gets re-passed together a second time, which would obviously override
     # the first set of options
     series$options$group <- paste0(name, collapse = "")
-  
+
     seriesData <- data[[series$name]]
-    
+
     # grab the colors for the series being processed
-  if (!is.null(dygraph$x$attrs$colors)) {
+    if (!is.null(dygraph$x$attrs$colors)) {
       currColors <- colors[names(colors) %in% name[i]]
-      
-			if (!is.null(color)) 
-				currColors[[series$name]] <- color[i]
-      
+
+      if (!is.null(color)) {
+        currColors[[series$name]] <- color[i]
+      }
+
       colors <- colors[!names(colors) %in% name[i]]
       colors[[series$name]] <- currColors[[series$name]]
 
-    # compensating for the bug whereas a single series dygraph with specified color
-    # shows up as black since the DateTime series tries to take the first color
-    	if (length(colors) == 1) colors <- c(colors, colors)
-      
+      # compensating for the bug whereas a single series dygraph with specified color
+      # shows up as black since the DateTime series tries to take the first color
+      if (length(colors) == 1) colors <- c(colors, colors)
+
       attrs$colors <- colors
       names(attrs$colors) <- NULL
     }
-    
+
     # default the label if we need to
-    if (is.null(series$label))
-      series$label <- series$name  
-    
+    if (is.null(series$label)) {
+      series$label <- series$name
+    }
+
     # add label
     attrs$labels <- c(attrs$labels, series$label)
-    
+
     # get whatever options might have previously existed for the series, then merge
     base <- attrs$series[[series$label]]
-	 	series$options <- mergeLists(base, series$options)
-    
+    series$options <- mergeLists(base, series$options)
+
     # set options
     attrs$series[[series$label]] <- series$options
-    
+
     # set attrs
     dygraph$x$attrs <- attrs
-    
+
     # set point shape
     if (!is.null(pointShape[i])) {
-      shapes <- c("dot", "triangle", "square", "diamond", "pentagon",
-                  "hexagon", "circle", "star", "plus", "ex")
+      shapes <- c(
+        "dot", "triangle", "square", "diamond", "pentagon",
+        "hexagon", "circle", "star", "plus", "ex"
+      )
 
       if (!is.element(pointShape[i], shapes)) {
-        stop("Invalid value for pointShape parameter. ",
-             "Should be one of the following: ",
-             "'dot', 'triangle', 'square', 'diamond', 'pentagon', ",
-             "'hexagon', 'circle', 'star', 'plus' or 'ex'")
+        stop(
+          "Invalid value for pointShape parameter. ",
+          "Should be one of the following: ",
+          "'dot', 'triangle', 'square', 'diamond', 'pentagon', ",
+          "'hexagon', 'circle', 'star', 'plus' or 'ex'"
+        )
       }
-  
-      if (pointShape[i] != "dot")
+
+      if (pointShape[i] != "dot") {
         dygraph$x$pointShape[[series$label]] <- rep(pointShape, length.out = l)
-      
+      }
     }
-    
+
     # add data
     dygraph$x$data[[length(dygraph$x$data) + 1]] <- seriesData
-  }  
-  
+  }
+
   # return modified dygraph
   dygraph
 }
-
diff --git a/R/highlight.R b/R/highlight.R
index 33560f1..dc9a645 100644
--- a/R/highlight.R
+++ b/R/highlight.R
@@ -1,53 +1,53 @@
 #' dygraph series mouse-over highlighting
-#' 
-#' Configure options for data series mouse-over highlighting. Note that 
-#' highlighting is always enabled for dygraphs so this function is used to 
+#'
+#' Configure options for data series mouse-over highlighting. Note that
+#' highlighting is always enabled for dygraphs so this function is used to
 #' customize rather than enable highlighting.
-#' 
+#'
 #' @param dygraph Dygraph to configure highlighting behavior for.
-#' @param highlightCircleSize The size in pixels of the dot drawn over 
+#' @param highlightCircleSize The size in pixels of the dot drawn over
 #'   highlighted points.
-#' @param highlightSeriesBackgroundAlpha Fade the background while highlighting 
-#'   series. 1=fully visible background (disable fading), 0=hidden background 
+#' @param highlightSeriesBackgroundAlpha Fade the background while highlighting
+#'   series. 1=fully visible background (disable fading), 0=hidden background
 #'   (show highlighted series only).
-#' @param highlightSeriesOpts When set, the options from this list are applied 
-#'   to the series closest to the mouse pointer for interactive highlighting. 
-#'   Example: list(strokeWidth = 3). See the documentation on 
+#' @param highlightSeriesOpts When set, the options from this list are applied
+#'   to the series closest to the mouse pointer for interactive highlighting.
+#'   Example: list(strokeWidth = 3). See the documentation on
 #'   \code{\link{dySeries}} for additional details on options that can be set.
 #' @param hideOnMouseOut Whether to hide the highlighting effects when the mouse
-#'   leaves the chart area. Note that this also affects the hiding of the 
+#'   leaves the chart area. Note that this also affects the hiding of the
 #'   \code{\link{dyLegend}} on mouse out.
-#'   
+#'
 #' @return A dygraph with customized highlighting options
-#'   
-#' @examples 
+#'
+#' @examples
 #' library(dygraphs)
 #' lungDeaths <- cbind(ldeaths, mdeaths, fdeaths)
 #' dygraph(lungDeaths, main = "Deaths from Lung Disease (UK)") %>%
-#'   dyHighlight(highlightCircleSize = 5, 
-#'               highlightSeriesBackgroundAlpha = 0.2,
-#'               hideOnMouseOut = FALSE)   
-#'  
+#'   dyHighlight(
+#'     highlightCircleSize = 5,
+#'     highlightSeriesBackgroundAlpha = 0.2,
+#'     hideOnMouseOut = FALSE
+#'   )
 #' @note See the
 #' \href{https://rstudio.github.io/dygraphs/gallery-series-highlighting.html}{online
 #' documentation} for additional details and examples.
-#' 
+#'
 #' @export
 dyHighlight <- function(dygraph,
                         highlightCircleSize = 3,
                         highlightSeriesBackgroundAlpha = 0.5,
                         highlightSeriesOpts = list(),
                         hideOnMouseOut = TRUE) {
-  
   highlight <- list()
   highlight$highlightCircleSize <- highlightCircleSize
   highlight$highlightSeriesBackgroundAlpha <- highlightSeriesBackgroundAlpha
   highlight$highlightSeriesOpts <- highlightSeriesOpts
   highlight$hideOverlayOnMouseOut <- hideOnMouseOut
-  
+
   # merge highlight
   dygraph$x$attrs <- mergeLists(dygraph$x$attrs, highlight)
-  
+
   # return modified dygraph
   dygraph
 }
diff --git a/R/imports.R b/R/imports.R
index f56ec37..100c0f4 100644
--- a/R/imports.R
+++ b/R/imports.R
@@ -1,3 +1,3 @@
 
 #' @importFrom htmlwidgets JS
-NULL
\ No newline at end of file
+NULL
diff --git a/R/legend.R b/R/legend.R
index b7dc826..16c34fb 100644
--- a/R/legend.R
+++ b/R/legend.R
@@ -1,38 +1,37 @@
 #' dygraph legend
-#' 
+#'
 #' Configure options for the dygraph series legend.
-#' 
+#'
 #' @param dygraph Dygraph to configure legend options for.
-#' @param show When to display the legend. Specify "always" to always show the 
-#'   legend. Specify "onmouseover" to only display it when a user mouses over 
+#' @param show When to display the legend. Specify "always" to always show the
+#'   legend. Specify "onmouseover" to only display it when a user mouses over
 #'   the chart. Specify "follow" to have the legend show as overlay to the chart
 #'   which follows the mouse. The default behavior is "auto", which results in
 #'   "always" when more than one series is plotted and "onmouseover" when only a
 #'   single series is plotted.
 #' @param width Width (in pixels) of the div which shows the legend.
 #' @param showZeroValues Show zero value labels in the legend.
-#' @param labelsDiv Show data labels in an external div, rather than on the 
+#' @param labelsDiv Show data labels in an external div, rather than on the
 #'   graph. This value should be a div element id.
-#' @param labelsSeparateLines Put a <br/> between lines in the label string. 
+#' @param labelsSeparateLines Put a <br/> between lines in the label string.
 #'   Often used in conjunction with \code{labelsDiv}.
-#' @param hideOnMouseOut Whether to hide the legend when the mouse leaves the 
-#'   chart area. This option applies when \code{show} is set to "onmouseover". 
-#'   Note that this also affects the hiding of the \code{\link{dyHighlight}} on 
+#' @param hideOnMouseOut Whether to hide the legend when the mouse leaves the
+#'   chart area. This option applies when \code{show} is set to "onmouseover".
+#'   Note that this also affects the hiding of the \code{\link{dyHighlight}} on
 #'   mouse out.
-#'   
+#'
 #' @return A dygraph with customized legend options
-#'  
+#'
 #' @examples
 #' library(dygraphs)
-#' 
-#' dygraph(nhtemp, main = "New Haven Temperatures") %>% 
+#'
+#' dygraph(nhtemp, main = "New Haven Temperatures") %>%
 #'   dySeries("V1", label = "Temperature (F)") %>%
-#'   dyLegend(show = "always", hideOnMouseOut = FALSE)   
-#'     
-#' @note See the 
+#'   dyLegend(show = "always", hideOnMouseOut = FALSE)
+#' @note See the
 #'   \href{https://rstudio.github.io/dygraphs/gallery-plot-labels.html}{online
 #'   documentation} for additional details and examples.
-#'   
+#'
 #' @export
 dyLegend <- function(dygraph,
                      show = c("auto", "always", "onmouseover", "follow", "never"),
@@ -41,7 +40,6 @@ dyLegend <- function(dygraph,
                      labelsDiv = NULL,
                      labelsSeparateLines = FALSE,
                      hideOnMouseOut = TRUE) {
-  
   legend <- list()
   legend$legend <- match.arg(show)
   if (legend$legend == "never") {
@@ -53,10 +51,10 @@ dyLegend <- function(dygraph,
   legend$labelsDiv <- labelsDiv
   legend$labelsSeparateLines <- labelsSeparateLines
   legend$hideOverlayOnMouseOut <- hideOnMouseOut
-   
+
   # merge legend
   dygraph$x$attrs <- mergeLists(dygraph$x$attrs, legend)
-  
+
   # return modified dygraph
   dygraph
-}
\ No newline at end of file
+}
diff --git a/R/options.R b/R/options.R
index 7e578db..204fec4 100644
--- a/R/options.R
+++ b/R/options.R
@@ -1,163 +1,163 @@
 #' dygraph options
-#' 
+#'
 #' Add options to a dygraph plot.
-#' 
+#'
 #' @param dygraph Dygraph to add options to
-#' @param stackedGraph If set, stack series on top of one another rather than 
-#'   drawing them independently. The first series specified in the input data 
+#' @param stackedGraph If set, stack series on top of one another rather than
+#'   drawing them independently. The first series specified in the input data
 #'   will wind up on top of the chart and the last will be on bottom.
-#' @param fillGraph Should the area underneath the graph be filled? This option 
-#'   is not compatible with error bars. This option can also be set on a 
+#' @param fillGraph Should the area underneath the graph be filled? This option
+#'   is not compatible with error bars. This option can also be set on a
 #'   per-series basis.
-#' @param fillAlpha Transparency for filled regions of the plot. A value of 0.0 
-#'   means that the fill will not be drawn, whereas a value of 1.0 means that 
+#' @param fillAlpha Transparency for filled regions of the plot. A value of 0.0
+#'   means that the fill will not be drawn, whereas a value of 1.0 means that
 #'   the fill will be as dark as the line of the series itself.
-#' @param stepPlot When set, display the graph as a step plot instead of a line 
+#' @param stepPlot When set, display the graph as a step plot instead of a line
 #'   plot. This option can also be set on a per-series basis.
 #' @param stemPlot When set, display the graph as a stem plot instead of a line
 #'   plot. This option can also be set on a per-series basis.
 #' @param drawPoints Draw a small dot at each point, in addition to a line going
 #'   through the point. This makes the individual data points easier to see, but
-#'   can increase visual clutter in the chart. This option can also be set on a 
+#'   can increase visual clutter in the chart. This option can also be set on a
 #'   per-series basis.
-#' @param pointSize The size of the dot to draw on each point in pixels. A dot 
-#'   is always drawn when a point is "isolated", i.e. there is a missing point 
-#'   on either side of it. This also controls the size of those dots. This 
+#' @param pointSize The size of the dot to draw on each point in pixels. A dot
+#'   is always drawn when a point is "isolated", i.e. there is a missing point
+#'   on either side of it. This also controls the size of those dots. This
 #'   option can also be set on a per-series basis.
 #' @param pointShape The shape of the dot to draw. Can be one of the following:
 #'   "dot" (default), "triangle", "square", "diamond", "pentagon", "hexagon",
 #'   "circle", "star", "plus" or "ex". This option can also be set on a per-series
 #'   basis.
-#' @param drawGapEdgePoints Draw points at the edges of gaps in the data. This 
+#' @param drawGapEdgePoints Draw points at the edges of gaps in the data. This
 #'   improves visibility of small data segments or other data irregularities.
-#' @param connectSeparatedPoints Usually, when dygraphs encounters a missing 
-#'   value in a data series, it interprets this as a gap and draws it as such. 
-#'   If, instead, the missing values represents an x-value for which only a 
-#'   different series has data, then you'll want to connect the dots by setting 
+#' @param connectSeparatedPoints Usually, when dygraphs encounters a missing
+#'   value in a data series, it interprets this as a gap and draws it as such.
+#'   If, instead, the missing values represents an x-value for which only a
+#'   different series has data, then you'll want to connect the dots by setting
 #'   this to true.
 #' @param strokeWidth The width of the lines connecting data points. This can be
-#'   used to increase the contrast or some graphs. This option can also be set 
+#'   used to increase the contrast or some graphs. This option can also be set
 #'   on a per-series basis.
-#' @param strokePattern A custom pattern array where the even index is a draw 
+#' @param strokePattern A custom pattern array where the even index is a draw
 #'   and odd is a space in pixels. If null then it draws a solid line. The array
-#'   should have a even length as any odd length array could be expressed as a 
+#'   should have a even length as any odd length array could be expressed as a
 #'   smaller even length array. This is used to create dashed lines. This option
 #'   can also be set on a per-series basis.
-#' @param strokeBorderWidth Draw a border around graph lines to make crossing 
-#'   lines more easily distinguishable. Useful for graphs with many lines. This 
+#' @param strokeBorderWidth Draw a border around graph lines to make crossing
+#'   lines more easily distinguishable. Useful for graphs with many lines. This
 #'   option can also be set on a per-series basis.
-#' @param strokeBorderColor Color for the line border used if 
-#'   \code{strokeBorderWidth} is set. This option can also be set on a 
+#' @param strokeBorderColor Color for the line border used if
+#'   \code{strokeBorderWidth} is set. This option can also be set on a
 #'   per-series basis.
 #' @param plotter A function (or array of functions) which plot each data series
-#'   on the chart. May also be set on a per-series basis. See the 
-#'   \href{http://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
+#'   on the chart. May also be set on a per-series basis. See the
+#'   \href{https://dygraphs.com/tests/plotters.html}{dygraphs documentation} for
 #'   additional details on plotting functions.
 #' @param colors Character vector of colors for the data series. These can be of
-#'   the form "#AABBCC" or "rgb(255,100,200)" or "yellow", etc. If not 
+#'   the form "#AABBCC" or "rgb(255,100,200)" or "yellow", etc. If not
 #'   specified, equally-spaced points around a color wheel are used. This option
-#'   can also be set on a per-series basis. Note that in both global and 
-#'   per-series specification of custom colors you must provide a color for all 
-#'   series being displayed. Note also that global and per-series color 
+#'   can also be set on a per-series basis. Note that in both global and
+#'   per-series specification of custom colors you must provide a color for all
+#'   series being displayed. Note also that global and per-series color
 #'   specification cannot be mixed.
-#' @param colorValue If custom colors are not specified, value of the data 
+#' @param colorValue If custom colors are not specified, value of the data
 #'   series colors, as in hue/saturation/value (0.0-1.0, default 0.5).
-#' @param colorSaturation If custom colors are not specified, saturation of the 
+#' @param colorSaturation If custom colors are not specified, saturation of the
 #'   automatically-generated data series colors (0.0-1.0, default 0.5).
-#' @param drawXAxis Whether to draw the x-axis. Setting this to false also 
+#' @param drawXAxis Whether to draw the x-axis. Setting this to false also
 #'   prevents x-axis ticks from being drawn and reclaims the space for the chart
 #'   grid/lines.
-#' @param drawYAxis Whether to draw the y-axis. Setting this to false also 
+#' @param drawYAxis Whether to draw the y-axis. Setting this to false also
 #'   prevents y-axis ticks from being drawn and reclaims the space for the chart
 #'   grid/lines.
 #' @param includeZero Usually, dygraphs will use the range of the data plus some
-#'   padding to set the range of the y-axis. If this option is set, the y-axis 
-#'   will always include zero, typically as the lowest value. This can be used 
+#'   padding to set the range of the y-axis. If this option is set, the y-axis
+#'   will always include zero, typically as the lowest value. This can be used
 #'   to avoid exaggerating the variance in the data.
 #' @param drawAxesAtZero When set, draw the X axis at the Y=0 position and the Y
-#'   axis at the X=0 position if those positions are inside the graph's visible 
+#'   axis at the X=0 position if those positions are inside the graph's visible
 #'   area. Otherwise, draw the axes at the bottom or left graph edge as usual.
-#' @param logscale When set the graph shows the y-axis in log scale. Any values 
+#' @param logscale When set the graph shows the y-axis in log scale. Any values
 #'   less than or equal to zero are not displayed.
 #' @param axisTickSize The spacing between axis labels and tick marks.
-#' @param axisLineColor Color of the x- and y-axis lines. Accepts any value 
-#'   which the HTML canvas strokeStyle attribute understands, e.g. 'black' or 
+#' @param axisLineColor Color of the x- and y-axis lines. Accepts any value
+#'   which the HTML canvas strokeStyle attribute understands, e.g. 'black' or
 #'   'rgb(0, 100, 255)'. This can also be set on a per-axis basis.
-#' @param axisLineWidth Thickness (in pixels) of the x- and y-axis lines. This 
+#' @param axisLineWidth Thickness (in pixels) of the x- and y-axis lines. This
 #'   can also be set on a per-axis basis.
-#' @param axisLabelColor Color for x- and y-axis labels. This is a CSS color 
+#' @param axisLabelColor Color for x- and y-axis labels. This is a CSS color
 #'   string. This may also be set on a per-axis basis.
-#' @param axisLabelFontSize Size of the font (in pixels) to use in the axis 
+#' @param axisLabelFontSize Size of the font (in pixels) to use in the axis
 #'   labels, both x- and y-axis. This may also be set on a per-axis basis.
-#' @param axisLabelWidth Width (in pixels) of the containing divs for x- and 
+#' @param axisLabelWidth Width (in pixels) of the containing divs for x- and
 #'   y-axis labels.
-#' @param drawGrid Whether to display grid lines in the chart. This may be set 
+#' @param drawGrid Whether to display grid lines in the chart. This may be set
 #'   on a per-axis basis to define the visibility of each axis' grid separately.
 #'   Defaults to \code{TRUE} for x and y, and \code{FALSE} for y2.
 #' @param gridLineColor The color of the grid lines. This option can also be set
 #'   on a per-series basis.
-#' @param gridLineWidth Thickness (in pixels) of the grid lines drawn under the 
+#' @param gridLineWidth Thickness (in pixels) of the grid lines drawn under the
 #'   chart. This option can also be set on a per-series basis.
-#' @param titleHeight Height of the chart title, in pixels. This also controls 
-#'   the default font size of the title. If you style the title on your own, 
-#'   this controls how much space is set aside above the chart for the title's 
+#' @param titleHeight Height of the chart title, in pixels. This also controls
+#'   the default font size of the title. If you style the title on your own,
+#'   this controls how much space is set aside above the chart for the title's
 #'   div.
-#' @param rightGap Number of pixels to leave blank at the right edge of the 
+#' @param rightGap Number of pixels to leave blank at the right edge of the
 #'   Dygraph. This makes it easier to highlight the right-most data point.
-#' @param digitsAfterDecimal Unless it's run in scientific mode (see the 
-#'   \code{sigFigs} option), dygraphs displays numbers with 
-#'   \code{digitsAfterDecimal} digits after the decimal point. Trailing zeros 
-#'   are not displayed, so with a value of 2 you'll get '0', '0.1', '0.12', 
-#'   '123.45' but not '123.456' (it will be rounded to '123.46'). Numbers with 
-#'   absolute value less than 0.1^digitsAfterDecimal (i.e. those which would 
+#' @param digitsAfterDecimal Unless it's run in scientific mode (see the
+#'   \code{sigFigs} option), dygraphs displays numbers with
+#'   \code{digitsAfterDecimal} digits after the decimal point. Trailing zeros
+#'   are not displayed, so with a value of 2 you'll get '0', '0.1', '0.12',
+#'   '123.45' but not '123.456' (it will be rounded to '123.46'). Numbers with
+#'   absolute value less than 0.1^digitsAfterDecimal (i.e. those which would
 #'   show up as '0.00') will be displayed in scientific notation.
 #' @param labelsKMB Show K/M/B for thousands/millions/billions on y-axis.
-#' @param labelsKMG2 Show k/M/G for kilo/Mega/Giga on y-axis. This is different 
+#' @param labelsKMG2 Show k/M/G for kilo/Mega/Giga on y-axis. This is different
 #'   than \code{labelsKMB} in that it uses base 2, not 10.
-#' @param labelsUTC Show date/time labels according to UTC (instead of local 
+#' @param labelsUTC Show date/time labels according to UTC (instead of local
 #'   time). Note that this option cannot is incompatible with
 #'   \code{useDataTimezone} (you must use one or the other).
-#' @param maxNumberWidth When displaying numbers in normal (not scientific) 
-#'   mode, large numbers will be displayed with many trailing zeros (e.g. 
-#'   100000000 instead of 1e9). This can lead to unwieldy y-axis labels. If 
-#'   there are more than maxNumberWidth digits to the left of the decimal in a 
-#'   number, dygraphs will switch to scientific notation, even when not 
-#'   operating in scientific mode. If you'd like to see all those digits, set 
+#' @param maxNumberWidth When displaying numbers in normal (not scientific)
+#'   mode, large numbers will be displayed with many trailing zeros (e.g.
+#'   100000000 instead of 1e9). This can lead to unwieldy y-axis labels. If
+#'   there are more than maxNumberWidth digits to the left of the decimal in a
+#'   number, dygraphs will switch to scientific notation, even when not
+#'   operating in scientific mode. If you'd like to see all those digits, set
 #'   this to something large, like 20 or 30.
-#' @param sigFigs By default, dygraphs displays numbers with a fixed number of 
-#'   digits after the decimal point. If you'd prefer to have a fixed number of 
+#' @param sigFigs By default, dygraphs displays numbers with a fixed number of
+#'   digits after the decimal point. If you'd prefer to have a fixed number of
 #'   significant figures, set this option to that number of significant figures.
-#'   A value of 2, for instance, would cause 1 to be display as 1.0 and 1234 to 
+#'   A value of 2, for instance, would cause 1 to be display as 1.0 and 1234 to
 #'   be displayed as 1.23e+3.
-#' @param panEdgeFraction A value representing the farthest a graph may be 
-#'   panned, in percent of the display. For example, a value of 0.1 means that 
-#'   the graph can only be panned 10% pased the edges of the displayed values. 
+#' @param panEdgeFraction A value representing the farthest a graph may be
+#'   panned, in percent of the display. For example, a value of 0.1 means that
+#'   the graph can only be panned 10% pased the edges of the displayed values.
 #'   null means no bounds.
-#' @param animatedZooms Set this option to animate the transition between zoom 
-#'   windows. Applies to programmatic and interactive zooms. Note that if you 
-#'   also set a drawCallback, it will be called several times on each zoom. If 
-#'   you set a zoomCallback, it will only be called after the animation is 
+#' @param animatedZooms Set this option to animate the transition between zoom
+#'   windows. Applies to programmatic and interactive zooms. Note that if you
+#'   also set a drawCallback, it will be called several times on each zoom. If
+#'   you set a zoomCallback, it will only be called after the animation is
 #'   complete.
 #' @param mobileDisableYTouch Set this option to automatically disable touch
-#'   events on the Y axis for mobile devices (since this interferes with 
+#'   events on the Y axis for mobile devices (since this interferes with
 #'   swiping/scrolling on mobile devices).
 #' @param timingName Set this option to log timing information. The value of the
-#'   option will be logged along with the timing, so that you can distinguish 
+#'   option will be logged along with the timing, so that you can distinguish
 #'   multiple dygraphs on the same page.
-#' @param useDataTimezone Whether to use the time zone of the underlying xts 
-#'   object for display. Defaults to \code{FALSE} which uses the time zone of 
-#'   the client workstation. Note that this option is incompatible with 
+#' @param useDataTimezone Whether to use the time zone of the underlying xts
+#'   object for display. Defaults to \code{FALSE} which uses the time zone of
+#'   the client workstation. Note that this option is incompatible with
 #'   \code{labelsUTC} (you must use one or other other).
-#' @param retainDateWindow Whether to retain the user's current date window 
-#'   (zoom level) when updating an existing dygraph with new data and/or 
+#' @param retainDateWindow Whether to retain the user's current date window
+#'   (zoom level) when updating an existing dygraph with new data and/or
 #'   options.
 #' @param disableZoom Set this option to disable click and drag zooming.
-#'   
+#'
 #' @return dygraph with additional options
-#'   
+#'
 #' @note See the \href{https://rstudio.github.io/dygraphs/}{online documentation}
 #'   for additional details and examples.
-#'   
+#'
 #' @export
 dyOptions <- function(dygraph,
                       stackedGraph = FALSE,
@@ -167,16 +167,18 @@ dyOptions <- function(dygraph,
                       stemPlot = FALSE,
                       drawPoints = FALSE,
                       pointSize = 1.0,
-                      pointShape = c("dot",
-                                     "triangle",
-                                     "square",
-                                     "diamond",
-                                     "pentagon",
-                                     "hexagon",
-                                     "circle",
-                                     "star",
-                                     "plus",
-                                     "ex"),
+                      pointShape = c(
+                        "dot",
+                        "triangle",
+                        "square",
+                        "diamond",
+                        "pentagon",
+                        "hexagon",
+                        "circle",
+                        "star",
+                        "plus",
+                        "ex"
+                      ),
                       drawGapEdgePoints = FALSE,
                       connectSeparatedPoints = FALSE,
                       strokeWidth = 1.0,
@@ -216,18 +218,19 @@ dyOptions <- function(dygraph,
                       useDataTimezone = FALSE,
                       retainDateWindow = FALSE,
                       disableZoom = FALSE) {
-  
+
   # validate that labelsUTC and useDataTimezone aren't specified together
-  if (!missing(labelsUTC) && !missing(useDataTimezone))
+  if (!missing(labelsUTC) && !missing(useDataTimezone)) {
     stop("You cannot specify both labelsUTC and useDateTimezone (choose one)")
-  
+  }
+
   # Resolve stemPlot into a custom plotter if necessary
   plotter <- resolveStemPlot(stemPlot, plotter)
-  
+
   options <- list()
   options$stackedGraph <- stackedGraph
   options$fillGraph <- fillGraph
-  options$fillAlpha = fillAlpha
+  options$fillAlpha <- fillAlpha
   options$stepPlot <- stepPlot
   options$drawPoints <- drawPoints
   options$pointSize <- pointSize
@@ -238,8 +241,9 @@ dyOptions <- function(dygraph,
   options$strokeBorderWidth <- strokeBorderWidth
   options$strokeBorderColor <- strokeBorderColor
   options$plotter <- JS(plotter)
-  if (!is.null(colors))
+  if (!is.null(colors)) {
     options$colors <- as.list(colors)
+  }
   options$colorValue <- colorValue
   options$colorSaturation <- colorSaturation
   options$axes$x$drawAxis <- drawXAxis
@@ -268,15 +272,16 @@ dyOptions <- function(dygraph,
   options$animatedZooms <- animatedZooms
   options$mobileDisableYTouch <- mobileDisableYTouch
   options$timingName <- timingName
-  if (!missing(retainDateWindow))
+  if (!missing(retainDateWindow)) {
     options$retainDateWindow <- retainDateWindow
+  }
   options$disableZoom <- disableZoom
-  
+
   # merge options into attrs
   dygraph$x$attrs <- mergeLists(dygraph$x$attrs, options)
-   
+
   # use data timezone
-  data.timezone <- attr(attr(dygraph$x, "time"),"tzone")
+  data.timezone <- attr(attr(dygraph$x, "time"), "tzone")
   if (is.null(data.timezone)) {
     data.timezone <- ""
   }
@@ -286,7 +291,7 @@ dyOptions <- function(dygraph,
     dygraph$x$fixedtz <- FALSE
   }
   dygraph$x$tzone <- data.timezone
-  
+
   # set point shape
   pointShape <- match.arg(pointShape)
   if (pointShape != "dot") {
diff --git a/R/plotters.R b/R/plotters.R
index afcdb0a..be102bd 100644
--- a/R/plotters.R
+++ b/R/plotters.R
@@ -1,48 +1,48 @@
 #' Employ a dygraph plotter on a series, a group of series, or the whole dygraph
-#' 
+#'
 #' Plotters provide variuos ways to customize how your data appears
-#' on the dygraph.  Series-based plotters allow users to mix-and-match different plotters on a 
+#' on the dygraph.  Series-based plotters allow users to mix-and-match different plotters on a
 #' per-series or (with dyGroup) a per-group basis.  See \code{\link{dyPlotter}} for additional detail.
 #'
 #'
 #' @section Available plotters:
 #'
-#' 
+#'
 #' Currently the dygraphs package provides the following plotters:
-#' 
+#'
 #' \describe{
 #'    \item{dyBarChart()}{Draws a bar plot rather than a line plot. If the provided dygraph
 #' features more than one series, dyBarChart will call dyMultiColumn instead.}
-#' 
+#'
 #'    \item{dyStackedBarChart()}{Draws a bar chart stacking all the underlying series.}
 #'
-#'    \item{dyMultiColumn()}{Draws multiple column bar chart.} 
-# 
+#'    \item{dyMultiColumn()}{Draws multiple column bar chart.}
+#
 #'    \item{dyBarSeries()}{Draws a single set of bars for just the provided series.}
-#' 
+#'
 #'    \item{dyStemSeries()}{Draws a single set of stems for just the provided series.}
-#' 
-#'    \item{dyShadow()}{An extraction of the _fillplotter from dygraph-combined-dev.js, 
+#'
+#'    \item{dyShadow()}{An extraction of the _fillplotter from dygraph-combined-dev.js,
 #'    drawing the filled area without the line.}
-#' 
-#'    \item{dyFilledLIne()}{An extraction of the _fillplotter and _lineplotter combo 
+#'
+#'    \item{dyFilledLIne()}{An extraction of the _fillplotter and _lineplotter combo
 #'    from dygraph-combined-dev.js. dyFilledLine allows users to fill only a single series.}
-#' 
-#'    \item{dyMultiColumnGroup()}{The multicolumn plotter, but on a subset of the series, leaving 
+#'
+#'    \item{dyMultiColumnGroup()}{The multicolumn plotter, but on a subset of the series, leaving
 #'    the others for other plotters.}
-#' 
+#'
 #'    \item{dyCandlestick()}{Draw a candlestick chart.}
-#' 
-#'    \item{dyCandleStickGroup()}{Employed on the provided series, 
+#'
+#'    \item{dyCandleStickGroup()}{Employed on the provided series,
 #'    but still plotting the others.}
-#'    
+#'
 #'    \item{dyStackerBarGroup()}{Return the data group as stacked bars}
-#' 
+#'
 #'    \item{dyStackerRibbonGroup()}{Return the data group as stacked ribbons}
-#' 
+#'
 #' }
-#' 
-#' 
+#'
+#'
 #' @param dygraph Dygraph to add plotter to
 #' @param name name - or chrarcter vector of names - of (the) series within the data set
 #' @param compress (For dyCandlestick) If true, compress data yearly, quarterly, monthly, weekly or daily
@@ -51,129 +51,136 @@
 #'
 #'
 #' @return A dygraph with the specified plotter(s) employed.
-#' 
+#'
 #' @name Plotters
-#' @examples 
+#' @examples
 #' ## The following two examples will results in the same dygraph:
-#' 
-#' dygraph(mdeaths) %>% 
+#'
+#' dygraph(mdeaths) %>%
 #'   dyBarChart()
-#'  
+#'
 #' lungDeaths <- cbind(mdeaths, fdeaths)
 #' dygraph(lungDeaths) %>%
 #'   dyMultiColumn()
-#'   
-# lungDeaths <- cbind(mdeaths, fdeaths)
-# dygraph(lungDeaths) %>%
-#   dyStackedBarChart()
+#'
+#' # lungDeaths <- cbind(mdeaths, fdeaths)
+#' # dygraph(lungDeaths) %>%
+#' #   dyStackedBarChart()
 #'
 #' ## Per-series plotters:
-#' 
+#'
 #' lungDeaths <- cbind(mdeaths, fdeaths)
 #' dygraph(lungDeaths) %>%
-#'   dyBarSeries('fdeaths')
-#' 
+#'   dyBarSeries("fdeaths")
+#'
 #' lungDeaths <- cbind(mdeaths, fdeaths)
 #' dygraph(lungDeaths) %>%
-#'   dyStemSeries('fdeaths')
-#'   
+#'   dyStemSeries("fdeaths")
+#'
 #' lungDeaths <- cbind(mdeaths, fdeaths)
 #' dygraph(lungDeaths) %>%
-#'   dyShadow('fdeaths')
-#' 
+#'   dyShadow("fdeaths")
+#'
 #' lungDeaths <- cbind(mdeaths, fdeaths)
 #' dygraph(lungDeaths) %>%
-#'   dyFilledLine('fdeaths')
+#'   dyFilledLine("fdeaths")
 #'
 #' ## A bunch of different plotters together:
-#' 
-#' lungDeaths <- cbind(fdeaths, mdeaths, ldeaths, foo = fdeaths/2, bar = fdeaths/3)
+#'
+#' lungDeaths <- cbind(fdeaths, mdeaths, ldeaths, foo = fdeaths / 2, bar = fdeaths / 3)
 #' dygraph(lungDeaths) %>%
 #'   dyRangeSelector() %>%
-#'   dyBarSeries('bar') %>% 
-#'   dyStemSeries('mdeaths') %>% 
-#'   dyShadow('foo') %>% 
-#'   dyFilledLine('fdeaths')
+#'   dyBarSeries("bar") %>%
+#'   dyStemSeries("mdeaths") %>%
+#'   dyShadow("foo") %>%
+#'   dyFilledLine("fdeaths")
 #'
 #' ## Group-based plotters:
-#'   
-# lungDeaths <- cbind(mdeaths, fdeaths, ldeaths)
-# dygraph(lungDeaths) %>%
-#   dyMultiColumnGroup(c('fdeaths', 'mdeaths'))
+#'
+#' # lungDeaths <- cbind(mdeaths, fdeaths, ldeaths)
+#' # dygraph(lungDeaths) %>%
+#' #   dyMultiColumnGroup(c('fdeaths', 'mdeaths'))
 #'
 #' ## Candlestick plotters:
-#'   
+#'
 #' library(xts)
 #' data(sample_matrix)
 #' library(dygraphs)
 #' dygraph(sample_matrix) %>%
 #'   dyCandlestick()
-#'   
-#' sample<-data.frame(sample_matrix)
-#' sample_2<-sample*2
-#' names(sample_2)<-c('O', 'H', 'L', 'C')
-#' sample<-cbind(sample, sample_2)
-#' dygraph(sample) %>% 
-#'   dyOptions(stackedGraph = TRUE) %>% 
-#'   dyCandlestickGroup(c('Open', 'High', 'Low', 'Close')) %>% 
-#'   dyCandlestickGroup(c('O', 'H', 'L', 'C'))
-#'
-#' ## Stacked Bar and Ribbon Graphs:  
-#' 
-#' dygraph(lungDeaths) %>% 
-#'   dySeries('mdeaths', axis = 'y2') %>%
-#'   dyAxis('y', valueRange = c(-100, 1000)) %>% 
-#'   dyStackedBarGroup(c('ldeaths', 'fdeaths'))
-#'   
-#' lungDeaths <- cbind(ldeaths, fdeaths, mdeaths, 
-#'                     additive = rep.int(200, length(ldeaths)),
-#'                     line = rep.int(3000, length(ldeaths)))
-#' dygraph(lungDeaths) %>% 
-#'   dySeries('line', strokePattern = 'dashed') %>% 
-#'   dySeries('ldeaths', stepPlot = TRUE) %>% 
-#'   dyStackedBarGroup(c('additive', 'mdeaths')) %>% 
-#'   dyStackedRibbonGroup(c('fdeaths', 'ldeaths'))
+#'
+#' sample <- data.frame(sample_matrix)
+#' sample_2 <- sample * 2
+#' names(sample_2) <- c("O", "H", "L", "C")
+#' sample <- cbind(sample, sample_2)
+#' dygraph(sample) %>%
+#'   dyOptions(stackedGraph = TRUE) %>%
+#'   dyCandlestickGroup(c("Open", "High", "Low", "Close")) %>%
+#'   dyCandlestickGroup(c("O", "H", "L", "C"))
+#'
+#' ## Stacked Bar and Ribbon Graphs:
+#'
+#' dygraph(lungDeaths) %>%
+#'   dySeries("mdeaths", axis = "y2") %>%
+#'   dyAxis("y", valueRange = c(-100, 1000)) %>%
+#'   dyStackedBarGroup(c("ldeaths", "fdeaths"))
+#'
+#' lungDeaths <- cbind(ldeaths, fdeaths, mdeaths,
+#'   additive = rep.int(200, length(ldeaths)),
+#'   line = rep.int(3000, length(ldeaths))
+#' )
+#' dygraph(lungDeaths) %>%
+#'   dySeries("line", strokePattern = "dashed") %>%
+#'   dySeries("ldeaths", stepPlot = TRUE) %>%
+#'   dyStackedBarGroup(c("additive", "mdeaths")) %>%
+#'   dyStackedRibbonGroup(c("fdeaths", "ldeaths"))
 NULL
 
 #' @rdname Plotters
 #' @export
 dyBarChart <- function(dygraph) {
-  if (length(dygraph$x$data)>2) {
-    dygraph <- dyPlotter(dygraph = dygraph,
-              name = "MultiColumn",
-              path = system.file("plotters/multicolumn.js", package = "dygraphs"))
-    
+  if (length(dygraph$x$data) > 2) {
+    dygraph <- dyPlotter(
+      dygraph = dygraph,
+      name = "MultiColumn",
+      path = system.file("plotters/multicolumn.js", package = "dygraphs")
+    )
   } else {
-    dygraph <- dyPlotter(dygraph = dygraph,
-              name = "BarChart",
-              path = system.file("plotters/barchart.js", package = "dygraphs"))
+    dygraph <- dyPlotter(
+      dygraph = dygraph,
+      name = "BarChart",
+      path = system.file("plotters/barchart.js", package = "dygraphs")
+    )
   }
-  
-  return (dygraph)
+
+  return(dygraph)
 }
 
 
 #' @rdname Plotters
 #' @export
 dyStackedBarChart <- function(dygraph) {
-  dygraph <- dyPlotter(dygraph = dygraph,
-              name = "StackedBarChart",
-              path = system.file("plotters/stackedbarchart.js", package = "dygraphs"))
-  
-  names<-dygraph$x$attrs$labels[-1]
-  
+  dygraph <- dyPlotter(
+    dygraph = dygraph,
+    name = "StackedBarChart",
+    path = system.file("plotters/stackedbarchart.js", package = "dygraphs")
+  )
+
+  names <- dygraph$x$attrs$labels[-1]
+
   dygraph <- computeYaxisRange(dygraph, names)
-  dygraph 
-  
+  dygraph
 }
 
 
 #' @rdname Plotters
 #' @export
 dyMultiColumn <- function(dygraph) {
-  dyPlotter(dygraph = dygraph,
-            name = "MultiColumn",
-            path = system.file("plotters/multicolumn.js", package = "dygraphs"))
+  dyPlotter(
+    dygraph = dygraph,
+    name = "MultiColumn",
+    path = system.file("plotters/multicolumn.js", package = "dygraphs")
+  )
 }
 
 
@@ -182,10 +189,9 @@ dyMultiColumn <- function(dygraph) {
 dyBarSeries <- function(dygraph, name, ...) {
   file <- system.file("plotters/barseries.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
+
   dots <- list(...)
-  do.call('dySeries', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
-  
+  do.call("dySeries", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 }
 
 
@@ -194,9 +200,9 @@ dyBarSeries <- function(dygraph, name, ...) {
 dyStemSeries <- function(dygraph, name, ...) {
   file <- system.file("plotters/stemplot.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
+
   dots <- list(...)
-  do.call('dySeries', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+  do.call("dySeries", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 }
 
 
@@ -205,9 +211,9 @@ dyStemSeries <- function(dygraph, name, ...) {
 dyShadow <- function(dygraph, name, ...) {
   file <- system.file("plotters/fillplotter.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
+
   dots <- list(...)
-  do.call('dySeries', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+  do.call("dySeries", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 }
 
 
@@ -216,9 +222,9 @@ dyShadow <- function(dygraph, name, ...) {
 dyFilledLine <- function(dygraph, name, ...) {
   file <- system.file("plotters/filledline.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
+
   dots <- list(...)
-  do.call('dySeries', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+  do.call("dySeries", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 }
 
 
@@ -227,9 +233,9 @@ dyFilledLine <- function(dygraph, name, ...) {
 dyErrorFill <- function(dygraph, name, ...) {
   file <- system.file("plotters/errorplotter.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
+
   dots <- list(...)
-  do.call('dySeries', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+  do.call("dySeries", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 }
 
 
@@ -238,9 +244,9 @@ dyErrorFill <- function(dygraph, name, ...) {
 dyMultiColumnGroup <- function(dygraph, name, ...) {
   file <- system.file("plotters/multicolumngroup.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
+
   dots <- list(...)
-  do.call('dyGroup', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+  do.call("dyGroup", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 }
 
 
@@ -249,9 +255,9 @@ dyMultiColumnGroup <- function(dygraph, name, ...) {
 dyCandlestickGroup <- function(dygraph, name, ...) {
   file <- system.file("plotters/candlestickgroup.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
+
   dots <- list(...)
-  do.call('dyGroup', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+  do.call("dyGroup", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 }
 
 
@@ -259,138 +265,141 @@ dyCandlestickGroup <- function(dygraph, name, ...) {
 #' @export
 dyStackedBarGroup <- function(dygraph, name, ...) {
   dots <- list(...)
-  
-  if(length(name) < 2) {
-    dygraph <- do.call('dyBarSeries', c(list(dygraph = dygraph, name = unlist(name)), dots))
+
+  if (length(name) < 2) {
+    dygraph <- do.call("dyBarSeries", c(list(dygraph = dygraph, name = unlist(name)), dots))
     return(dygraph)
   }
-  
+
   file <- system.file("plotters/stackedbargroup.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
-  dygraph <- do.call('dyGroup', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+
+  dygraph <- do.call("dyGroup", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 
   dygraph <- computeYaxisRange(dygraph, name)
-  dygraph 
+  dygraph
 }
 
 #' @rdname Plotters
 #' @export
 dyStackedLineGroup <- function(dygraph, name, ...) {
   dots <- list(...)
-  
-  if(length(name) < 2) {
+
+  if (length(name) < 2) {
     # just rely on the base package
     return(dygraph)
   }
-  
+
   file <- system.file("plotters/stackedlinegroup.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
-  dygraph <- do.call('dyGroup', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+
+  dygraph <- do.call("dyGroup", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 
   dygraph <- computeYaxisRange(dygraph, name)
-  dygraph 
+  dygraph
 }
- 
- 
+
+
 #' @rdname Plotters
 #' @export
 dyStackedRibbonGroup <- function(dygraph, name, ...) {
   dots <- list(...)
-  
-  if(length(name) < 2) {
-    dygraph <- do.call('dyFilledLine', c(list(dygraph = dygraph, name = name), dots))
+
+  if (length(name) < 2) {
+    dygraph <- do.call("dyFilledLine", c(list(dygraph = dygraph, name = name), dots))
     return(dygraph)
   }
-  
+
   file <- system.file("plotters/stackedribbongroup.js", package = "dygraphs")
   plotter_ <- paste0(readLines(file, skipNul = T), collapse = "\n")
-  
-  dygraph <- do.call('dyGroup', c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
+
+  dygraph <- do.call("dyGroup", c(list(dygraph = dygraph, name = name, plotter = plotter_), dots))
 
   dygraph <- computeYaxisRange(dygraph, name)
-  dygraph 
+  dygraph
 }
 
-computeYaxisRange <- function(dygraph, name){ 
-  # most of what happens from here on out is a simplified version of the 
+computeYaxisRange <- function(dygraph, name) {
+  # most of what happens from here on out is a simplified version of the
   # stackPoints and computeYaxis functions in the underlying dygraph package.
   # Since we can't modify the Yaxis range from within the specialized plotter,
   # we need to calculate an appropriate valueRange for the group's axis here, then
   # reconcile that against user-provided ranges and then pass into the widget... this
-  # way we ensure that the newly stacked data (but initially unstacked to the widget) 
+  # way we ensure that the newly stacked data (but initially unstacked to the widget)
   # doesn't get cutoff by an axis range - computed by the widget - that won't consider
   # the points stacked
   attrs <- dygraph$x$attrs
 
   data <- attr(dygraph$x, "data")
   cols <- which(names(data) %in% name)
-  
-  #get all the series, minus the x axis, that are not part of the group
+
+  # get all the series, minus the x axis, that are not part of the group
   data_ <- data[-c(1, cols)]
   name_ <- names(data)[which(!names(data) %in% name)][-1]
-  
-  #grab the axis for the group, we'll calculate the new range only on this axis  
+
+  # grab the axis for the group, we'll calculate the new range only on this axis
   series <- attrs$series[[name[1]]]
   axisNm <- series$axis
   if (!is.null(axisNm)) {
     axis <- attrs$axes[[axisNm]]
     valueRange <- axis$valueRange
   } else {
-    axisNm<-"y"
+    axisNm <- "y"
     axis <- attrs$axes[[axisNm]] <- NULL
     valueRange <- NULL
   }
-  
-  if(is.null(valueRange)) {
+
+  if (is.null(valueRange)) {
     valueRange <- c(0, 0)
   }
- 
+
   # get the group data fields
   data <- data[cols]
- 
-  for(i in 1:length(data)) {
-      # get the data points
-      points <- data[i][[1]]
-      # fill NAs... we're not saving this data back into the graph, so this is OK
-      is.na(points) <- 0
-      
-      # add to cumulativeList
-      if(!exists('cumulativeYval')) cumulativeYval <- points
-      else cumulativeYval <- cumulativeYval + points
-      # calculate extremes
-      extremes <- range(cumulativeYval)
+
+  for (i in 1:length(data)) {
+    # get the data points
+    points <- data[i][[1]]
+    # fill NAs... we're not saving this data back into the graph, so this is OK
+    is.na(points) <- 0
+
+    # add to cumulativeList
+    if (!exists("cumulativeYval")) {
+      cumulativeYval <- points
+    } else {
+      cumulativeYval <- cumulativeYval + points
+    }
+    # calculate extremes
+    extremes <- range(cumulativeYval)
   }
-  
-  for(i in 1:length(data_)) {
-    if (length(data_)==0) break
-    
+
+  for (i in 1:length(data_)) {
+    if (length(data_) == 0) break
+
     # ranges are calcuated separately, so skip those from other axes
     series_ <- attrs$series[[name_[i]]]
     if (!is.null(series_$axis) && series_$axis != axisNm) next
-    
+
     points <- data_[i][[1]]
-  
+
     # fill NAs
     is.na(points) <- 0
-    
+
     # getExtremes
     extremes_ <- range(points)
-    extremes[1] <- min(extremes[1], extremes_[1])  
-    extremes[2] <- max(extremes[2], extremes_[2])  
+    extremes[1] <- min(extremes[1], extremes_[1])
+    extremes[2] <- max(extremes[2], extremes_[2])
   }
-  
+
   valueRange[1] <- min(extremes[1], valueRange[1])
   valueRange[2] <- max(extremes[2], valueRange[2])
-    
+
   # add a little padding since we're hard-setting the range
   valueRange[2] <- valueRange[2] + 0.05 * abs(valueRange[2] - valueRange[1])
-  
+
   axis$options$valueRange <- valueRange
-  attrs$axes[[axisNm]] <- axis$options  
-  
+  attrs$axes[[axisNm]] <- axis$options
+
   # return modified dygraph
   dygraph$x$attrs <- mergeLists(dygraph$x$attrs, attrs)
-  return (dygraph)
+  return(dygraph)
 }
diff --git a/R/plugins.R b/R/plugins.R
index 349b1a6..2933e75 100644
--- a/R/plugins.R
+++ b/R/plugins.R
@@ -11,9 +11,8 @@
 #' dygraph(ldeaths) %>%
 #'   dyRangeSelector() %>%
 #'   dyUnzoom()
-#'
 #' @export
-dyUnzoom <-function(dygraph) {
+dyUnzoom <- function(dygraph) {
   dyPlugin(
     dygraph = dygraph,
     name = "Unzoom",
@@ -37,7 +36,6 @@ dyUnzoom <-function(dygraph) {
 #' dygraph(ldeaths) %>%
 #'   dyRangeSelector() %>%
 #'   dyCrosshair(direction = "vertical")
-#'
 #' @export
 dyCrosshair <- function(dygraph, direction = c("both", "horizontal", "vertical")) {
   dyPlugin(
@@ -65,7 +63,7 @@ dyCrosshair <- function(dygraph, direction = c("both", "horizontal", "vertical")
 #' \dontrun{
 #' library(quantmod)
 #'
-#' getSymbols("SPY", from = "2016-12-01", auto.assign=TRUE)
+#' getSymbols("SPY", from = "2016-12-01", auto.assign = TRUE)
 #'
 #' difference <- SPY[, "SPY.Open"] - SPY[, "SPY.Close"]
 #' decreasing <- which(difference < 0)
@@ -78,19 +76,23 @@ dyCrosshair <- function(dygraph, direction = c("both", "horizontal", "vertical")
 #' ribbonData[increasing] <- 1
 #'
 #' dygraph(dyData) %>%
-#'     dyRibbon(data = ribbonData, top = 0.1, bottom = 0.02)
+#'   dyRibbon(data = ribbonData, top = 0.1, bottom = 0.02)
 #' }
-#' 
+#'
 #' @export
 dyRibbon <- function(dygraph, data = NULL, palette = NULL, parser = NULL, top = 1, bottom = 0) {
   dyPlugin(
     dygraph = dygraph,
     name = "Ribbon",
     path = system.file("plugins/ribbon.js", package = "dygraphs"),
-    options = list(data = data,
-                   parser = JS(parser),
-                   options = list(palette = palette,
-                                  top = top,
-                                  bottom = bottom))
+    options = list(
+      data = data,
+      parser = JS(parser),
+      options = list(
+        palette = palette,
+        top = top,
+        bottom = bottom
+      )
+    )
   )
 }
diff --git a/R/range-selector.R b/R/range-selector.R
index e78b7ea..c94e22d 100644
--- a/R/range-selector.R
+++ b/R/range-selector.R
@@ -1,79 +1,80 @@
 #' dygraph interactive range selection and zooming
-#' 
-#' Add a range selector to the bottom of the chart that allows users to pan and 
+#'
+#' Add a range selector to the bottom of the chart that allows users to pan and
 #' zoom to various date ranges.
-#' 
+#'
 #' @inheritParams dyOptions
-#' 
+#'
 #' @param dygraph Dygraph to add range selector to
-#' @param dateWindow Initially zoom in on a section of the graph. Is a two 
-#'   element vector [earliest, latest], where earliest/latest objects 
+#' @param dateWindow Initially zoom in on a section of the graph. Is a two
+#'   element vector [earliest, latest], where earliest/latest objects
 #'   convertible via \code{as.POSIXct}.
 #' @param height Height, in pixels, of the range selector widget.
-#' @param fillColor The range selector mini plot fill color. This can be of the 
+#' @param fillColor The range selector mini plot fill color. This can be of the
 #'   form "#AABBCC" or "rgb(255,100,200)" or "yellow". You can also specify ""
 #'   to turn off fill.
-#' @param strokeColor The range selector mini plot stroke color. This can be of 
-#'   the form "#AABBCC" or "rgb(255,100,200)" or "yellow". You can also specify 
+#' @param strokeColor The range selector mini plot stroke color. This can be of
+#'   the form "#AABBCC" or "rgb(255,100,200)" or "yellow". You can also specify
 #'   "" to turn off stroke.
 #' @param keepMouseZoom Keep mouse zoom when adding a range selector
-#' 
+#'
 #' @return A dygraph that displays a range selector
-#'   
+#'
 #' @examples
 #' library(dygraphs)
-#' 
-#' dygraph(nhtemp, main = "New Haven Temperatures") %>% 
-#'   dyRangeSelector()   
-#'  
-#' dygraph(nhtemp, main = "New Haven Temperatures") %>% 
-#'   dyRangeSelector(dateWindow = c("1920-01-01", "1960-01-01"))   
-#'     
-#' dygraph(nhtemp, main = "New Haven Temperatures") %>% 
-#'   dyRangeSelector(height = 20, strokeColor = "")     
 #'
+#' dygraph(nhtemp, main = "New Haven Temperatures") %>%
+#'   dyRangeSelector()
+#'
+#' dygraph(nhtemp, main = "New Haven Temperatures") %>%
+#'   dyRangeSelector(dateWindow = c("1920-01-01", "1960-01-01"))
+#'
+#' dygraph(nhtemp, main = "New Haven Temperatures") %>%
+#'   dyRangeSelector(height = 20, strokeColor = "")
 #' @note See the
 #' \href{https://rstudio.github.io/dygraphs/gallery-range-selector.html}{online
 #' documentation} for additional details and examples.
-#' 
+#'
 #' Shiny applications can respond to changes in the \code{dateWindow}
-#' via a special date window shiny input value. For example, if the 
+#' via a special date window shiny input value. For example, if the
 #' output id of a dygraph is `series` then the current date window
-#' can be read from \code{input$series_date_window} as an array of 
+#' can be read from \code{input$series_date_window} as an array of
 #' two date values (from and to).
-#' 
+#'
 #' @export
 dyRangeSelector <- function(dygraph,
-                            dateWindow = NULL, 
+                            dateWindow = NULL,
                             height = 40,
                             fillColor = " #A7B1C4",
-                            strokeColor = "#808FAB", 
+                            strokeColor = "#808FAB",
                             keepMouseZoom = TRUE,
                             retainDateWindow = FALSE) {
-  
   selector <- list()
-  selector$showRangeSelector = TRUE
+  selector$showRangeSelector <- TRUE
   if (!is.null(dateWindow)) {
-    if (length(dateWindow) != 2)
+    if (length(dateWindow) != 2) {
       stop("dateWindow must be vector of length 2 that is convertible to POSIXct")
-    if (dygraph$x$format == "date")
+    }
+    if (dygraph$x$format == "date") {
       selector$dateWindow <- sapply(USE.NAMES = FALSE, dateWindow, asISO8601Time)
-    else
+    } else {
       selector$dateWindow <- dateWindow
+    }
   }
   selector$rangeSelectorHeight <- height
   selector$rangeSelectorPlotFillColor <- fillColor
   selector$rangeSelectorPlotStrokeColor <- strokeColor
-  if (!missing(retainDateWindow))
+  if (!missing(retainDateWindow)) {
     selector$retainDateWindow <- retainDateWindow
-  
-  if(keepMouseZoom)
-    selector$interactionModel= JS("Dygraph.Interaction.defaultModel")
-  
+  }
+
+  if (keepMouseZoom) {
+    selector$interactionModel <- JS("Dygraph.Interaction.defaultModel")
+  }
+
   # merge selector
   dygraph$x$attrs <- mergeLists(dygraph$x$attrs, selector)
-  
+
   # return modified dygraph
   dygraph
 }
-
diff --git a/R/rebase.R b/R/rebase.R
index 020c2a1..ec8a2b8 100644
--- a/R/rebase.R
+++ b/R/rebase.R
@@ -35,8 +35,10 @@ dyRebase <- function(dygraph, value = 100, percent = FALSE) {
     stop("value must be of numeric type", call. = FALSE)
   }
 
-  dyPlugin(dygraph = dygraph,
-           name = "Rebase",
-           path = system.file("plugins/rebase.js", package = "dygraphs"),
-           options = base)
+  dyPlugin(
+    dygraph = dygraph,
+    name = "Rebase",
+    path = system.file("plugins/rebase.js", package = "dygraphs"),
+    options = base
+  )
 }
diff --git a/R/roller.R b/R/roller.R
index d5393cc..371940c 100644
--- a/R/roller.R
+++ b/R/roller.R
@@ -1,37 +1,35 @@
 #' dygraph rolling average period text box
-#' 
-#' Add a rolling average period text box to the bottom left of the plot. Y 
+#'
+#' Add a rolling average period text box to the bottom left of the plot. Y
 #' values are averaged over the specified number of time scale units.
-#' 
+#'
 #' @param dygraph Dygraph to add roller to
 #' @param showRoller Whether to show the roller
-#' @param rollPeriod Number of time scale units (e.g. days, months, years) to 
+#' @param rollPeriod Number of time scale units (e.g. days, months, years) to
 #'   average values over.
-#'   
+#'
 #' @return A dygraph that displays a range selector
-#'   
-#' @examples 
+#'
+#' @examples
 #' library(dygraphs)
-#' 
-#' dygraph(discoveries, main = "Important Discoveries") %>% 
+#'
+#' dygraph(discoveries, main = "Important Discoveries") %>%
 #'   dyRoller(rollPeriod = 5)
-#' 
 #' @note See the
 #' \href{https://rstudio.github.io/dygraphs/gallery-roll-periods.html}{online
 #' documentation} for additional details and examples.
-#' 
+#'
 #' @export
 dyRoller <- function(dygraph,
                      showRoller = TRUE,
                      rollPeriod = 1) {
-  
   roller <- list()
   roller$showRoller <- showRoller
   roller$rollPeriod <- rollPeriod
-  
+
   # merge roller
   dygraph$x$attrs <- mergeLists(dygraph$x$attrs, roller)
-  
+
   # return modified dygraph
   dygraph
 }
diff --git a/R/series.R b/R/series.R
index 8059e0f..81385ae 100644
--- a/R/series.R
+++ b/R/series.R
@@ -1,34 +1,34 @@
 #' dygraph data series
-#' 
-#' Add a data series to a dygraph plot. Note that options will use the default 
-#' global setting (as determined by \code{\link{dyOptions}}) when not specified 
-#' explicitly. When no \code{dySeries} is specified for a plot then all series 
+#'
+#' Add a data series to a dygraph plot. Note that options will use the default
+#' global setting (as determined by \code{\link{dyOptions}}) when not specified
+#' explicitly. When no \code{dySeries} is specified for a plot then all series
 #' within the underlying data are plotted.
-#' 
+#'
 #' @inheritParams dyOptions
-#'   
+#'
 #' @param dygraph Dygraph to add a series definition to
-#' @param name Name of series within data set. If no name is specified then 
-#'   series are bound to implicitly based on their order within the underlying 
+#' @param name Name of series within data set. If no name is specified then
+#'   series are bound to implicitly based on their order within the underlying
 #'   time series object. This parameter can also be a character vector of length
 #'   3 that specifies a set of input column names to use as the lower, value,
 #'   and upper for a series with a shaded bar drawn around it.
 #' @param label Label to display for series (uses name if no label defined)
-#' @param color Color for series. These can be of the form "#AABBCC" or 
-#'   "rgb(255,100,200)" or "yellow", etc. If not specified then the global 
-#'   colors option (typically based on equally-spaced points around a color wheel). 
+#' @param color Color for series. These can be of the form "#AABBCC" or
+#'   "rgb(255,100,200)" or "yellow", etc. If not specified then the global
+#'   colors option (typically based on equally-spaced points around a color wheel).
 #' @param axis Y-axis to associate the series with ("y" or "y2")
-#' @param stepPlot When set, display the graph as a step plot instead of a line 
+#' @param stepPlot When set, display the graph as a step plot instead of a line
 #'   plot.
 #' @param stemPlot When set, display the graph as a stem plot instead of a line
 #'   plot.
-#' @param fillGraph Should the area underneath the graph be filled? This option 
+#' @param fillGraph Should the area underneath the graph be filled? This option
 #'   is not compatible with error bars.
 #' @param drawPoints Draw a small dot at each point, in addition to a line going
 #'   through the point. This makes the individual data points easier to see, but
 #'   can increase visual clutter in the chart.
-#' @param pointSize The size of the dot to draw on each point in pixels. A dot 
-#'   is always drawn when a point is "isolated", i.e. there is a missing point 
+#' @param pointSize The size of the dot to draw on each point in pixels. A dot
+#'   is always drawn when a point is "isolated", i.e. there is a missing point
 #'   on either side of it. This also controls the size of those dots.
 #' @param pointShape The shape of the dot to draw. Can be one of the following:
 #'   "dot" (default), "triangle", "square", "diamond", "pentagon", "hexagon",
@@ -37,39 +37,38 @@
 #'   used to increase the contrast or some graphs.
 #' @param strokePattern A predefined stroke pattern type ("dotted", "dashed", or
 #'   "dotdash") or a custom pattern array where the even index is a draw and odd
-#'   is a space in pixels. If \code{NULL} then it draws a solid line. The array 
-#'   should have an even length as any odd length array could be expressed as 
+#'   is a space in pixels. If \code{NULL} then it draws a solid line. The array
+#'   should have an even length as any odd length array could be expressed as
 #'   a smaller even length array.
-#' @param strokeBorderWidth Draw a border around graph lines to make crossing 
+#' @param strokeBorderWidth Draw a border around graph lines to make crossing
 #'   lines more easily distinguishable. Useful for graphs with many lines.
-#' @param strokeBorderColor Color for the line border used if 
+#' @param strokeBorderColor Color for the line border used if
 #'   \code{strokeBorderWidth} is set.
-#' @param plotter A function which plots the data series. May also be set on on 
-#'   a global basis using \code{dyOptions}. See the 
-#'   \href{http://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
+#' @param plotter A function which plots the data series. May also be set on on
+#'   a global basis using \code{dyOptions}. See the
+#'   \href{https://dygraphs.com/tests/plotters.html}{dygraphs documentation} for
 #'   additional details on plotting functions.
-#'   
+#'
 #' @return Dygraph with additional series
-#'   
+#'
 #' @examples
 #' library(dygraphs)
-#' 
+#'
 #' lungDeaths <- cbind(ldeaths, mdeaths, fdeaths)
-#' 
+#'
 #' dygraph(lungDeaths, main = "Deaths from Lung Disease (UK)") %>%
 #'   dySeries("mdeaths", drawPoints = TRUE, color = "blue") %>%
-#'   dySeries("fdeaths", stepPlot = TRUE, color = "red")   
-#'   
-#' @note See the 
+#'   dySeries("fdeaths", stepPlot = TRUE, color = "red")
+#' @note See the
 #'   \href{https://rstudio.github.io/dygraphs/gallery-series-options.html}{online
 #'   documentation} for additional details and examples.
-#'   
+#'
 #' @export
 dySeries <- function(dygraph,
-                     name = NULL, 
+                     name = NULL,
                      label = NULL,
                      color = NULL,
-                     axis = "y", 
+                     axis = "y",
                      stepPlot = NULL,
                      stemPlot = NULL,
                      fillGraph = NULL,
@@ -81,53 +80,58 @@ dySeries <- function(dygraph,
                      strokeBorderWidth = NULL,
                      strokeBorderColor = NULL,
                      plotter = NULL) {
-  
+
   # get a reference to the underlying data and labels
   data <- attr(dygraph$x, "data")
   labels <- names(data)
-  
-  # when setting up the first color, we start handling colors here 
+
+  # when setting up the first color, we start handling colors here
   if (!is.null(color) && is.null(dygraph$x$attrs$colors)) {
-      colors <- dygraphColors(dygraph, length(labels) - 1)
-      dygraph$x$attrs$colors <- colors
+    colors <- dygraphColors(dygraph, length(labels) - 1)
+    dygraph$x$attrs$colors <- colors
   }
 
-  # prepare the colors list for processing 
+  # prepare the colors list for processing
   if (!is.null(dygraph$x$attrs$colors)) {
-     colors <- dygraph$x$attrs$colors
-     names(colors) <- dygraph$x$attrs$labels[-1]
+    colors <- dygraph$x$attrs$colors
+    names(colors) <- dygraph$x$attrs$labels[-1]
   }
-   
+
   # auto-bind name if necessary
   autobind <- attr(dygraph$x, "autoSeries")
-  if (is.null(name))
+  if (is.null(name)) {
     name <- labels[[autobind]]
+  }
   attr(dygraph$x, "autoSeries") <- autobind + length(name)
-  
+
   # ensure that name is of length 1 or 3
-  if (length(name) != 1 && length(name)  != 3) {
-    stop("The name parameter must either be a character vector ",
-         "of length one or three")
+  if (length(name) != 1 && length(name) != 3) {
+    stop(
+      "The name parameter must either be a character vector ",
+      "of length one or three"
+    )
   }
-  
+
   # Get the cols where this series is located and verify that they are
   # available within the underlying dataset
   cols <- which(labels %in% name)
   if (length(cols) != length(name)) {
-    stop("One or more of the specified series were not found. ",
-         "Valid series names are: ", paste(labels[-1], collapse = ", "))
+    stop(
+      "One or more of the specified series were not found. ",
+      "Valid series names are: ", paste(labels[-1], collapse = ", ")
+    )
   }
-  
-  
+
+
   # Data series named here are "consumed" from the automatically generated
   # list of series (they'll be added back in below)
   cols <- which(dygraph$x$attrs$labels %in% name)
   dygraph$x$data <- dygraph$x$data[-c(cols)]
   dygraph$x$attrs$labels <- dygraph$x$attrs$labels[-c(cols)]
-   
+
   # Resolve stemPlot into a custom plotter if necessary
   plotter <- resolveStemPlot(stemPlot, plotter)
-  
+
   # create series object
   series <- list()
   series$name <- name
@@ -144,92 +148,102 @@ dySeries <- function(dygraph,
   series$options$strokeBorderColor <- strokeBorderColor
   series$options$plotter <- JS(plotter)
 
- 
+
   # copy attrs for modification
   attrs <- dygraph$x$attrs
-  
+
   # resolve multi-series
   if (length(series$name) == 3) {
-    
+
     # find column indexes within the data
     cols <- integer(3)
     for (i in 1:3) {
       col <- which(labels == series$name[[i]])
-      if (length(col) != 1)
+      if (length(col) != 1) {
         stop("Series name '", series$name[[i]], "' not found in input data")
+      }
 
       cols[[i]] <- col
     }
-    
+
     # mark attrs as containing custom bars
     attrs$customBars <- TRUE
-    
+
     # fixup name
     series$name <- series$name[[2]]
-    
+
     # compute series data
-    seriesData <- toMultiSeries(data[[cols[[1]]]],
-                                data[[cols[[2]]]],
-                                data[[cols[[3]]]])
-    
+    seriesData <- toMultiSeries(
+      data[[cols[[1]]]],
+      data[[cols[[2]]]],
+      data[[cols[[3]]]]
+    )
   } else {
     # select series data
     seriesData <- data[[series$name]]
   }
-  
+
   # grab the colors for the series being processed
   if (!is.null(dygraph$x$attrs$colors)) {
     currColors <- colors[names(colors) %in% name]
 
-    if (!is.null(color)) 
-			currColors[[series$name]] <- color
-    
+    if (!is.null(color)) {
+      currColors[[series$name]] <- color
+    }
+
     colors <- colors[!names(colors) %in% name]
     colors[[series$name]] <- currColors[[series$name]]
-    
+
     # compensating for the bug whereas a single series dygraph with specified color
     # shows up as black since the DateTime series tries to take the first color
     if (length(colors) == 1) colors <- c(colors, colors)
-    
+
     attrs$colors <- colors
     names(attrs$colors) <- NULL
   }
-  
-  
+
+
   # default the label if we need to
-  if (is.null(series$label))
-    series$label <- series$name  
-   
+  if (is.null(series$label)) {
+    series$label <- series$name
+  }
+
   # add label
   attrs$labels <- c(attrs$labels, series$label)
-   
+
   # set options
   attrs$series[[series$label]] <- series$options
- 
+
   # set attrs
   dygraph$x$attrs <- attrs
 
   # set point shape
   if (!is.null(pointShape)) {
-    shapes <- c("dot", "triangle", "square", "diamond", "pentagon",
-                "hexagon", "circle", "star", "plus", "ex")
+    shapes <- c(
+      "dot", "triangle", "square", "diamond", "pentagon",
+      "hexagon", "circle", "star", "plus", "ex"
+    )
 
     if (!is.element(pointShape, shapes)) {
-      stop("Invalid value for pointShape parameter. ",
-           "Should be one of the following: ",
-           "'dot', 'triangle', 'square', 'diamond', 'pentagon', ",
-           "'hexagon', 'circle', 'star', 'plus' or 'ex'")
+      stop(
+        "Invalid value for pointShape parameter. ",
+        "Should be one of the following: ",
+        "'dot', 'triangle', 'square', 'diamond', 'pentagon', ",
+        "'hexagon', 'circle', 'star', 'plus' or 'ex'"
+      )
     }
 
     if (pointShape != "dot") {
-      dygraph$x$pointShape <- list()
+      if (is.null(dygraph$x$pointShape)) {
+        dygraph$x$pointShape <- list()
+      }
       dygraph$x$pointShape[[series$label]] <- pointShape
     }
   }
-  
+
   # add data
   dygraph$x$data[[length(dygraph$x$data) + 1]] <- seriesData
-  
+
   # if we are using custom bars then fixed non custom-bar data
   # series to still display
   if (isTRUE(attrs$customBars)) {
@@ -240,58 +254,61 @@ dySeries <- function(dygraph,
       }
     }
   }
-  
+
   # return modified dygraph
   dygraph
 }
 
 
 #' Add series data to dygraph
-#' 
+#'
 #' Add an additional column of series data to a dygraph. This
 #' is typically used in the construction of custom series types
 #' (e.g. log scaled, smoothed, etc.)
-#' 
+#'
 #' @param dygraph Dygraph to add data to
 #' @param name Name of series
 #' @param values Data values
-#' 
-#' @return Dygraph with additional series data 
-#' 
-#' @export 
+#'
+#' @return Dygraph with additional series data
+#'
+#' @export
 dySeriesData <- function(dygraph, name, values) {
-  
+
   # add values
   data <- attr(dygraph$x, "data")
   data[[name]] <- values
   attr(dygraph$x, "data") <- data
-  
+
   # return modified dygraph
   dygraph
 }
 
 
-# return a list of three element arrays 
-toMultiSeries <- function(lower, value, upper) {  
+# return a list of three element arrays
+toMultiSeries <- function(lower, value, upper) {
   series <- vector(mode = "list", length = length(value))
-  for (i in 1:length(series))
+  for (i in 1:length(series)) {
     series[[i]] <- c(lower[[i]], value[[i]], upper[[i]])
+  }
 
   series
 }
 
 # provide a custom plotter if stemPlot has been specified
 resolveStemPlot <- function(stemPlot, plotter) {
-  
+
   # check for stemPlot argument
   if (isTRUE(stemPlot)) {
-    
+
     # verify that a custom plotter hasn't been specified
     if (!is.null(plotter)) {
       stop("stemPlot provides it's own plotter so is incompatible with ",
-           "specifying a custom plotter", call. = FALSE)
+        "specifying a custom plotter",
+        call. = FALSE
+      )
     }
-    
+
     # provide custom plotter JS
     "function stemPlotter(e) { 
        var ctx = e.drawingContext; 
@@ -323,28 +340,26 @@ dygraphColors <- function(dygraph, num) {
   sat <- dygraph$x$attrs$colorSaturation %||% 1.0
   val <- dygraph$x$attrs$colorValue %||% 0.5
   half <- ceiling(num / 2)
-  
-  colors<-c()
-  
-  for (i in 0:(num-1)) {
+
+  colors <- c()
+
+  for (i in 0:(num - 1)) {
     # alternate colors for high contrast.
     idx <- ifelse(i %% 2, (half + (i + 1) / 2), ceiling((i + 1) / 2))
     hue <- (1.0 * idx / (1 + num))
     color <- hsvToRGB(hue, sat, val)
     colors <- c(colors, color)
-
   }
 
   return(colors)
 }
 
 #' @importFrom grDevices rgb
-hsvToRGB <- function (hue, saturation, value) {
+hsvToRGB <- function(hue, saturation, value) {
   if (saturation == 0) {
-    red = value
-    green = value
-    blue = value
-
+    red <- value
+    green <- value
+    blue <- value
   } else {
     i <- floor(hue * 6)
     f <- (hue * 6) - i
@@ -352,11 +367,11 @@ hsvToRGB <- function (hue, saturation, value) {
     q <- value * (1 - (saturation * f))
     t <- value * (1 - (saturation * (1 - f)))
 
-    # converting the switch from the JS library to a vector selection    
+    # converting the switch from the JS library to a vector selection
     red <- c(value, q, p, p, t, value, value)
     green <- c(t, value, value, q, p, p, t)
     blue <- c(p, p, t, value, value, q, p)
-    
+
     r <- red[i + 1]
     g <- green[i + 1]
     b <- blue[i + 1]
@@ -365,11 +380,12 @@ hsvToRGB <- function (hue, saturation, value) {
   red <- floor(255 * r + 0.5)
   green <- floor(255 * g + 0.5)
   blue <- floor(255 * b + 0.5)
-  return (rgb(red, green, blue, maxColorValue = 255))
+  return(rgb(red, green, blue, maxColorValue = 255))
 }
 
-`%||%` <- function(a, b){
-  if(!is.null(a)) return(a)
+`%||%` <- function(a, b) {
+  if (!is.null(a)) {
+    return(a)
+  }
   return(b)
 }
-
diff --git a/R/shading.R b/R/shading.R
index d77a121..0ce6cc9 100644
--- a/R/shading.R
+++ b/R/shading.R
@@ -1,7 +1,7 @@
 #' dygraph region shading
-#' 
+#'
 #' Specify that a region of a dygraph be drawn with a background shading
-#' 
+#'
 #' @param dygraph Dygraph to add shading to
 #' @param from Date/time or numeric to shade from (for date/time this must be a
 #'   \code{as.POSIXct} object or another object convertible via
@@ -9,42 +9,43 @@
 #' @param to Date/time or numeric to shade to (for date/time this must be a
 #'   \code{as.POSIXct} object or another object convertible via
 #'   \code{as.POSIXct}).
-#' @param color Color of shading. This can be of the form "#AABBCC" or 
+#' @param color Color of shading. This can be of the form "#AABBCC" or
 #'   "rgb(255,100,200)" or "yellow". Defaults to a very light gray.
 #' @param axis Axis to apply shading.  Choices are "x" or "y".
-#'   
+#'
 #' @return A dygraph with the specified shading
-#'  
-#' @examples 
+#'
+#' @examples
 #' library(dygraphs)
-#' 
-#' dygraph(nhtemp, main = "New Haven Temperatures") %>% 
+#'
+#' dygraph(nhtemp, main = "New Haven Temperatures") %>%
 #'   dyShading(from = "1920-1-1", to = "1930-1-1") %>%
 #'   dyShading(from = "1940-1-1", to = "1950-1-1")
-#'   
-#' dygraph(nhtemp, main = "New Haven Temperatures") %>% 
+#'
+#' dygraph(nhtemp, main = "New Haven Temperatures") %>%
 #'   dyShading(from = "48", to = "52", axis = "y") %>%
 #'   dyShading(from = "50", to = "50.1", axis = "y", color = "black")
-#'     
 #' @note See the
 #'   \href{https://rstudio.github.io/dygraphs/gallery-annotations.html}{online
 #'   documentation} for additional details and examples.
-#'   
+#'
 #' @export
 dyShading <- function(dygraph, from, to, color = "#EFEFEF", axis = "x") {
-  
+
   # create shading
   shading <- list()
   shading$from <- ifelse(axis == "x" && dygraph$x$format == "date",
-                         asISO8601Time(from), from)
+    asISO8601Time(from), from
+  )
   shading$to <- ifelse(axis == "x" && dygraph$x$format == "date",
-                       asISO8601Time(to), to)
+    asISO8601Time(to), to
+  )
   shading$color <- color
   shading$axis <- axis
- 
+
   # add it to list of shadings
   dygraph$x$shadings[[length(dygraph$x$shadings) + 1]] <- shading
-  
+
   # return modified dygraph
   dygraph
 }
diff --git a/R/utils.R b/R/utils.R
index 290a2ff..bcf0e54 100644
--- a/R/utils.R
+++ b/R/utils.R
@@ -1,21 +1,23 @@
 
 
-mergeLists <- function (base_list, overlay_list, recursive = TRUE) {
-  if (length(base_list) == 0)
+mergeLists <- function(base_list, overlay_list, recursive = TRUE) {
+  if (length(base_list) == 0) {
     overlay_list
-  else if (length(overlay_list) == 0)
+  } else if (length(overlay_list) == 0) {
     base_list
-  else {
+  } else {
     merged_list <- base_list
     for (name in names(overlay_list)) {
       base <- base_list[[name]]
       overlay <- overlay_list[[name]]
-      if (is.list(base) && is.list(overlay) && recursive)
+      if (is.list(base) && is.list(overlay) && recursive) {
         merged_list[[name]] <- mergeLists(base, overlay)
-      else {
+      } else {
         merged_list[[name]] <- NULL
-        merged_list <- append(merged_list,
-                              overlay_list[which(names(overlay_list) %in% name)])
+        merged_list <- append(
+          merged_list,
+          overlay_list[which(names(overlay_list) %in% name)]
+        )
       }
     }
     merged_list
@@ -23,38 +25,44 @@ mergeLists <- function (base_list, overlay_list, recursive = TRUE) {
 }
 
 asISO8601Time <- function(x) {
-  if (!inherits(x, "POSIXct"))
+  if (!inherits(x, "POSIXct")) {
     x <- as.POSIXct(x, tz = "GMT")
-  format(x, format = "%04Y-%m-%dT%H:%M:%OS3Z", tz = 'GMT')
+  }
+  format(x, format = "%04Y-%m-%dT%H:%M:%OS3Z", tz = "GMT")
 }
 
 resolveStrokePattern <- function(strokePattern) {
   if (is.character(strokePattern)) {
-    if (strokePattern == "dotted") 
+    if (strokePattern == "dotted") {
       strokePattern <- c(2, 2)
-    else if (strokePattern == "dashed")
+    } else if (strokePattern == "dashed") {
       strokePattern <- c(7, 3)
-    else if (strokePattern == "dotdash")
+    } else if (strokePattern == "dotdash") {
       strokePattern <- c(7, 2, 2, 2)
-    else if (strokePattern == "solid")
+    } else if (strokePattern == "solid") {
       strokePattern <- c(1, 0)
-    else
-      stop("Invalid stroke pattern: valid values are dotted, ",
-           "dashed, and dotdash")
+    } else {
+      stop(
+        "Invalid stroke pattern: valid values are dotted, ",
+        "dashed, and dotdash"
+      )
+    }
   }
   strokePattern
 }
 
 #' @importFrom stats end start
-defaultPeriodicity <- function (data) {
+defaultPeriodicity <- function(data) {
   periodicity <- structure(
-    list(difftime = structure(0, units = "secs", class = "difftime"),
-         frequency = 0,
-         start = start(data),
-         end = end(data),
-         units = "secs",
-         scale = "seconds",
-         label = "second"),
-    class = "periodicity")
+    list(
+      difftime = structure(0, units = "secs", class = "difftime"),
+      frequency = 0,
+      start = start(data),
+      end = end(data),
+      units = "secs",
+      scale = "seconds",
+      label = "second"
+    ),
+    class = "periodicity"
+  )
 }
-
diff --git a/debian/changelog b/debian/changelog
index b393cb1..e964305 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+r-cran-dygraphs (1.1.1.6+git20210303.1.70b60ab+dfsg-1) UNRELEASED; urgency=low
+
+  * New upstream snapshot.
+
+ -- Debian Janitor <janitor@jelmer.uk>  Thu, 10 Nov 2022 19:57:58 -0000
+
 r-cran-dygraphs (1.1.1.6+dfsg-4) unstable; urgency=medium
 
   * Team upload.
diff --git a/inst/htmlwidgets/dygraphs.js b/inst/htmlwidgets/dygraphs.js
index 3cd0391..dbc7e1e 100644
--- a/inst/htmlwidgets/dygraphs.js
+++ b/inst/htmlwidgets/dygraphs.js
@@ -56,7 +56,7 @@ HTMLWidgets.widget({
         
         // convert non-arrays to arrays
         for (var index = 0; index < attrs.file.length; index++) {
-          if (!$.isArray(attrs.file[index]))
+          if (!Array.isArray(attrs.file[index]))
             attrs.file[index] = [].concat(attrs.file[index]);
         }
             
diff --git a/man/dyAnnotation.Rd b/man/dyAnnotation.Rd
index 9d52425..7bc8fe2 100644
--- a/man/dyAnnotation.Rd
+++ b/man/dyAnnotation.Rd
@@ -4,10 +4,22 @@
 \alias{dyAnnotation}
 \title{Annotation for dygraph chart}
 \usage{
-dyAnnotation(dygraph, x, text, tooltip = NULL, width = NULL,
-  height = NULL, cssClass = NULL, tickHeight = NULL,
-  attachAtBottom = FALSE, clickHandler = NULL, mouseOverHandler = NULL,
-  mouseOutHandler = NULL, dblClickHandler = NULL, series = NULL)
+dyAnnotation(
+  dygraph,
+  x,
+  text,
+  tooltip = NULL,
+  width = NULL,
+  height = NULL,
+  cssClass = NULL,
+  tickHeight = NULL,
+  attachAtBottom = FALSE,
+  clickHandler = NULL,
+  mouseOverHandler = NULL,
+  mouseOutHandler = NULL,
+  dblClickHandler = NULL,
+  series = NULL
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add an annotation to}
diff --git a/man/dyAxis.Rd b/man/dyAxis.Rd
index 8b5da8c..996e4dd 100644
--- a/man/dyAxis.Rd
+++ b/man/dyAxis.Rd
@@ -4,13 +4,30 @@
 \alias{dyAxis}
 \title{dygraph axis}
 \usage{
-dyAxis(dygraph, name, label = NULL, valueRange = NULL, logscale = NULL,
-  ticker = NULL, rangePad = NULL, labelWidth = NULL, labelHeight = NULL,
-  axisHeight = NULL, axisLineColor = NULL, axisLineWidth = NULL,
-  pixelsPerLabel = NULL, axisLabelColor = NULL, axisLabelFontSize = NULL,
-  axisLabelWidth = NULL, axisLabelFormatter = NULL, valueFormatter = NULL,
-  drawGrid = NULL, gridLineColor = NULL, gridLineWidth = NULL,
-  independentTicks = NULL)
+dyAxis(
+  dygraph,
+  name,
+  label = NULL,
+  valueRange = NULL,
+  logscale = NULL,
+  ticker = NULL,
+  rangePad = NULL,
+  labelWidth = NULL,
+  labelHeight = NULL,
+  axisHeight = NULL,
+  axisLineColor = NULL,
+  axisLineWidth = NULL,
+  pixelsPerLabel = NULL,
+  axisLabelColor = NULL,
+  axisLabelFontSize = NULL,
+  axisLabelWidth = NULL,
+  axisLabelFormatter = NULL,
+  valueFormatter = NULL,
+  drawGrid = NULL,
+  gridLineColor = NULL,
+  gridLineWidth = NULL,
+  independentTicks = NULL
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add an axis definition to}
@@ -36,7 +53,7 @@ generate tick marks on an axis. The tick marks are an array of (value,
 label) pairs. The built-in functions go to great lengths to choose good 
 tick marks so, if you set this option, you'll most likely want to call one 
 of them and modify the result. See dygraph-tickers.js and the 
-\href{http://dygraphs.com/options.html}{dygraphs documentation} for 
+\href{https://dygraphs.com/options.html}{dygraphs documentation} for 
 additional details).}
 
 \item{rangePad}{Add the specified amount of extra space (in pixels) around 
@@ -75,12 +92,12 @@ labels, both x- and y-axis. This may also be set globally using
 
 \item{axisLabelFormatter}{JavaScript function to call to format the tick 
 values that appear along an axis (see the 
-\href{http://dygraphs.com/options.html}{dygraphs documentation} for 
+\href{https://dygraphs.com/options.html}{dygraphs documentation} for 
 additional details).}
 
 \item{valueFormatter}{JavaScript function to call to provide a custom display
 format for the values displayed on mouseover (see the 
-\href{http://dygraphs.com/options.html}{dygraphs documentation} for 
+\href{https://dygraphs.com/options.html}{dygraphs documentation} for 
 additional details).}
 
 \item{drawGrid}{Whether to display grid lines in the chart.}
diff --git a/man/dyCSS.Rd b/man/dyCSS.Rd
index 949ae4c..30249c7 100644
--- a/man/dyCSS.Rd
+++ b/man/dyCSS.Rd
@@ -17,7 +17,7 @@ dygraph with additional CSS styles
 }
 \description{
 Apply custom CSS to the text drawn within a dygraph. See the 
-\href{http://dygraphs.com/css.html}{CSS documentation} on the dygraphs 
+\href{https://dygraphs.com/css.html}{CSS documentation} on the dygraphs 
 website for additional details on which styles are available.
 }
 \note{
diff --git a/man/dyCallbacks.Rd b/man/dyCallbacks.Rd
index 4133d5d..9d6c396 100644
--- a/man/dyCallbacks.Rd
+++ b/man/dyCallbacks.Rd
@@ -4,13 +4,22 @@
 \alias{dyCallbacks}
 \title{Callbacks for dygraph events}
 \usage{
-dyCallbacks(dygraph, clickCallback = NULL, drawCallback = NULL,
-  highlightCallback = NULL, pointClickCallback = NULL,
-  underlayCallback = NULL, unhighlightCallback = NULL,
-  zoomCallback = NULL, drawHighlightPointCallback = NULL,
-  drawPointCallback = NULL, annotationClickHandler = NULL,
-  annotationMouseOverHandler = NULL, annotationMouseOutHandler = NULL,
-  annotationDblClickHandler = NULL)
+dyCallbacks(
+  dygraph,
+  clickCallback = NULL,
+  drawCallback = NULL,
+  highlightCallback = NULL,
+  pointClickCallback = NULL,
+  underlayCallback = NULL,
+  unhighlightCallback = NULL,
+  zoomCallback = NULL,
+  drawHighlightPointCallback = NULL,
+  drawPointCallback = NULL,
+  annotationClickHandler = NULL,
+  annotationMouseOverHandler = NULL,
+  annotationMouseOutHandler = NULL,
+  annotationDblClickHandler = NULL
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add callbacks to}
@@ -63,6 +72,6 @@ Dygraph with callbacks
 }
 \description{
 Set JavaScript callbacks for various dygraph events. See the 
-\href{http://dygraphs.com/options.html}{dygraph options} reference for 
+\href{https://dygraphs.com/options.html}{dygraph options} reference for 
 additional details on the signature of each callback.
 }
diff --git a/man/dyEvent.Rd b/man/dyEvent.Rd
index f833a54..5bcd578 100644
--- a/man/dyEvent.Rd
+++ b/man/dyEvent.Rd
@@ -4,8 +4,15 @@
 \alias{dyEvent}
 \title{dygraph event line}
 \usage{
-dyEvent(dygraph, x, label = NULL, labelLoc = c("top", "bottom"),
-  color = "black", strokePattern = "dashed", date)
+dyEvent(
+  dygraph,
+  x,
+  label = NULL,
+  labelLoc = c("top", "bottom"),
+  color = "black",
+  strokePattern = "dashed",
+  date
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add event line to}
diff --git a/man/dyGroup.Rd b/man/dyGroup.Rd
index 1db362b..9282f53 100644
--- a/man/dyGroup.Rd
+++ b/man/dyGroup.Rd
@@ -4,11 +4,24 @@
 \alias{dyGroup}
 \title{dygraph series group}
 \usage{
-dyGroup(dygraph, name = NULL, label = NULL, color = NULL, axis = "y",
-  stepPlot = NULL, stemPlot = NULL, fillGraph = NULL, drawPoints = NULL,
-  pointSize = NULL, pointShape = NULL, strokeWidth = NULL,
-  strokePattern = NULL, strokeBorderWidth = NULL,
-  strokeBorderColor = NULL, plotter = NULL)
+dyGroup(
+  dygraph,
+  name = NULL,
+  label = NULL,
+  color = NULL,
+  axis = "y",
+  stepPlot = NULL,
+  stemPlot = NULL,
+  fillGraph = NULL,
+  drawPoints = NULL,
+  pointSize = NULL,
+  pointShape = NULL,
+  strokeWidth = NULL,
+  strokePattern = NULL,
+  strokeBorderWidth = NULL,
+  strokeBorderColor = NULL,
+  plotter = NULL
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add a series definition to}
@@ -64,7 +77,7 @@ lines more easily distinguishable. Useful for graphs with many lines.}
 \code{strokeBorderWidth} is set.}
 
 \item{plotter}{A function which plots the series group. See the 
-\href{http://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
+\href{https://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
 additional details on plotting functions.}
 }
 \value{
diff --git a/man/dyHighlight.Rd b/man/dyHighlight.Rd
index 31c6093..e41c1dc 100644
--- a/man/dyHighlight.Rd
+++ b/man/dyHighlight.Rd
@@ -4,9 +4,13 @@
 \alias{dyHighlight}
 \title{dygraph series mouse-over highlighting}
 \usage{
-dyHighlight(dygraph, highlightCircleSize = 3,
-  highlightSeriesBackgroundAlpha = 0.5, highlightSeriesOpts = list(),
-  hideOnMouseOut = TRUE)
+dyHighlight(
+  dygraph,
+  highlightCircleSize = 3,
+  highlightSeriesBackgroundAlpha = 0.5,
+  highlightSeriesOpts = list(),
+  hideOnMouseOut = TRUE
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to configure highlighting behavior for.}
diff --git a/man/dyLegend.Rd b/man/dyLegend.Rd
index 49c5f38..0de6a0a 100644
--- a/man/dyLegend.Rd
+++ b/man/dyLegend.Rd
@@ -4,9 +4,15 @@
 \alias{dyLegend}
 \title{dygraph legend}
 \usage{
-dyLegend(dygraph, show = c("auto", "always", "onmouseover", "follow",
-  "never"), width = 250, showZeroValues = TRUE, labelsDiv = NULL,
-  labelsSeparateLines = FALSE, hideOnMouseOut = TRUE)
+dyLegend(
+  dygraph,
+  show = c("auto", "always", "onmouseover", "follow", "never"),
+  width = 250,
+  showZeroValues = TRUE,
+  labelsDiv = NULL,
+  labelsSeparateLines = FALSE,
+  hideOnMouseOut = TRUE
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to configure legend options for.}
diff --git a/man/dyLimit.Rd b/man/dyLimit.Rd
index 095e289..026996d 100644
--- a/man/dyLimit.Rd
+++ b/man/dyLimit.Rd
@@ -4,8 +4,14 @@
 \alias{dyLimit}
 \title{dygraph limit line}
 \usage{
-dyLimit(dygraph, limit, label = NULL, labelLoc = c("left", "right"),
-  color = "black", strokePattern = "dashed")
+dyLimit(
+  dygraph,
+  limit,
+  label = NULL,
+  labelLoc = c("left", "right"),
+  color = "black",
+  strokePattern = "dashed"
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add limit line to}
diff --git a/man/dyOptions.Rd b/man/dyOptions.Rd
index 4a25f79..927041d 100644
--- a/man/dyOptions.Rd
+++ b/man/dyOptions.Rd
@@ -4,24 +4,57 @@
 \alias{dyOptions}
 \title{dygraph options}
 \usage{
-dyOptions(dygraph, stackedGraph = FALSE, fillGraph = FALSE,
-  fillAlpha = 0.15, stepPlot = FALSE, stemPlot = FALSE,
-  drawPoints = FALSE, pointSize = 1, pointShape = c("dot", "triangle",
-  "square", "diamond", "pentagon", "hexagon", "circle", "star", "plus", "ex"),
-  drawGapEdgePoints = FALSE, connectSeparatedPoints = FALSE,
-  strokeWidth = 1, strokePattern = NULL, strokeBorderWidth = NULL,
-  strokeBorderColor = "white", plotter = NULL, colors = NULL,
-  colorValue = 0.5, colorSaturation = 1, drawXAxis = TRUE,
-  drawYAxis = TRUE, includeZero = FALSE, drawAxesAtZero = FALSE,
-  logscale = FALSE, axisTickSize = 3, axisLineColor = "black",
-  axisLineWidth = 0.3, axisLabelColor = "black", axisLabelFontSize = 14,
-  axisLabelWidth = 60, drawGrid = TRUE, gridLineColor = NULL,
-  gridLineWidth = 0.3, titleHeight = NULL, rightGap = 5,
-  digitsAfterDecimal = 2, labelsKMB = FALSE, labelsKMG2 = FALSE,
-  labelsUTC = FALSE, maxNumberWidth = 6, sigFigs = NULL,
-  panEdgeFraction = NULL, animatedZooms = FALSE,
-  mobileDisableYTouch = TRUE, timingName = NULL, useDataTimezone = FALSE,
-  retainDateWindow = FALSE, disableZoom = FALSE)
+dyOptions(
+  dygraph,
+  stackedGraph = FALSE,
+  fillGraph = FALSE,
+  fillAlpha = 0.15,
+  stepPlot = FALSE,
+  stemPlot = FALSE,
+  drawPoints = FALSE,
+  pointSize = 1,
+  pointShape = c("dot", "triangle", "square", "diamond", "pentagon", "hexagon",
+    "circle", "star", "plus", "ex"),
+  drawGapEdgePoints = FALSE,
+  connectSeparatedPoints = FALSE,
+  strokeWidth = 1,
+  strokePattern = NULL,
+  strokeBorderWidth = NULL,
+  strokeBorderColor = "white",
+  plotter = NULL,
+  colors = NULL,
+  colorValue = 0.5,
+  colorSaturation = 1,
+  drawXAxis = TRUE,
+  drawYAxis = TRUE,
+  includeZero = FALSE,
+  drawAxesAtZero = FALSE,
+  logscale = FALSE,
+  axisTickSize = 3,
+  axisLineColor = "black",
+  axisLineWidth = 0.3,
+  axisLabelColor = "black",
+  axisLabelFontSize = 14,
+  axisLabelWidth = 60,
+  drawGrid = TRUE,
+  gridLineColor = NULL,
+  gridLineWidth = 0.3,
+  titleHeight = NULL,
+  rightGap = 5,
+  digitsAfterDecimal = 2,
+  labelsKMB = FALSE,
+  labelsKMG2 = FALSE,
+  labelsUTC = FALSE,
+  maxNumberWidth = 6,
+  sigFigs = NULL,
+  panEdgeFraction = NULL,
+  animatedZooms = FALSE,
+  mobileDisableYTouch = TRUE,
+  timingName = NULL,
+  useDataTimezone = FALSE,
+  retainDateWindow = FALSE,
+  disableZoom = FALSE
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add options to}
@@ -88,7 +121,7 @@ per-series basis.}
 
 \item{plotter}{A function (or array of functions) which plot each data series
 on the chart. May also be set on a per-series basis. See the 
-\href{http://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
+\href{https://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
 additional details on plotting functions.}
 
 \item{colors}{Character vector of colors for the data series. These can be of
diff --git a/man/dyRangeSelector.Rd b/man/dyRangeSelector.Rd
index 8e498ed..1a2fe93 100644
--- a/man/dyRangeSelector.Rd
+++ b/man/dyRangeSelector.Rd
@@ -4,9 +4,15 @@
 \alias{dyRangeSelector}
 \title{dygraph interactive range selection and zooming}
 \usage{
-dyRangeSelector(dygraph, dateWindow = NULL, height = 40,
-  fillColor = " #A7B1C4", strokeColor = "#808FAB", keepMouseZoom = TRUE,
-  retainDateWindow = FALSE)
+dyRangeSelector(
+  dygraph,
+  dateWindow = NULL,
+  height = 40,
+  fillColor = " #A7B1C4",
+  strokeColor = "#808FAB",
+  keepMouseZoom = TRUE,
+  retainDateWindow = FALSE
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add range selector to}
diff --git a/man/dyRibbon.Rd b/man/dyRibbon.Rd
index 0ffd218..1e66390 100644
--- a/man/dyRibbon.Rd
+++ b/man/dyRibbon.Rd
@@ -7,8 +7,14 @@ can be useful to visualize categorical variables
 (http://en.wikipedia.org/wiki/Categorical_variable) that change over time (along
 the x-axis).}
 \usage{
-dyRibbon(dygraph, data = NULL, palette = NULL, parser = NULL, top = 1,
-  bottom = 0)
+dyRibbon(
+  dygraph,
+  data = NULL,
+  palette = NULL,
+  parser = NULL,
+  top = 1,
+  bottom = 0
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add plugin to}
diff --git a/man/dySeries.Rd b/man/dySeries.Rd
index cd949f0..e28e6f4 100644
--- a/man/dySeries.Rd
+++ b/man/dySeries.Rd
@@ -4,11 +4,24 @@
 \alias{dySeries}
 \title{dygraph data series}
 \usage{
-dySeries(dygraph, name = NULL, label = NULL, color = NULL, axis = "y",
-  stepPlot = NULL, stemPlot = NULL, fillGraph = NULL, drawPoints = NULL,
-  pointSize = NULL, pointShape = NULL, strokeWidth = NULL,
-  strokePattern = NULL, strokeBorderWidth = NULL,
-  strokeBorderColor = NULL, plotter = NULL)
+dySeries(
+  dygraph,
+  name = NULL,
+  label = NULL,
+  color = NULL,
+  axis = "y",
+  stepPlot = NULL,
+  stemPlot = NULL,
+  fillGraph = NULL,
+  drawPoints = NULL,
+  pointSize = NULL,
+  pointShape = NULL,
+  strokeWidth = NULL,
+  strokePattern = NULL,
+  strokeBorderWidth = NULL,
+  strokeBorderColor = NULL,
+  plotter = NULL
+)
 }
 \arguments{
 \item{dygraph}{Dygraph to add a series definition to}
@@ -65,7 +78,7 @@ lines more easily distinguishable. Useful for graphs with many lines.}
 
 \item{plotter}{A function which plots the data series. May also be set on on 
 a global basis using \code{dyOptions}. See the 
-\href{http://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
+\href{https://dygraphs.com/tests/plotters.html}{dygraphs documentation} for 
 additional details on plotting functions.}
 }
 \value{
diff --git a/man/dygraph.Rd b/man/dygraph.Rd
index f17d245..80167d8 100644
--- a/man/dygraph.Rd
+++ b/man/dygraph.Rd
@@ -4,8 +4,17 @@
 \alias{dygraph}
 \title{dygraph interactive plot for time series data}
 \usage{
-dygraph(data, main = NULL, xlab = NULL, ylab = NULL, periodicity = NULL,
-  group = NULL, elementId = NULL, width = NULL, height = NULL)
+dygraph(
+  data,
+  main = NULL,
+  xlab = NULL,
+  ylab = NULL,
+  periodicity = NULL,
+  group = NULL,
+  elementId = NULL,
+  width = NULL,
+  height = NULL
+)
 }
 \arguments{
 \item{data}{Either time series data or numeric data. For time series, this 
@@ -39,7 +48,7 @@ Interactive dygraph plot
 }
 \description{
 R interface to interactive time series plotting using the 
-\href{http://dygraphs.com}{dygraphs} JavaScript library.
+\href{https://dygraphs.com}{dygraphs} JavaScript library.
 }
 \note{
 See the \href{https://rstudio.github.io/dygraphs/}{online documentation} for
diff --git a/tests/testthat/test-callbacks.R b/tests/testthat/test-callbacks.R
index c6be666..2c3b12d 100644
--- a/tests/testthat/test-callbacks.R
+++ b/tests/testthat/test-callbacks.R
@@ -5,4 +5,3 @@ test_that("callback creation", {
   d <- dygraph(ldeaths) %>% dyCallbacks(clickCallback = "function(e, x, points) {}")
   expect_is(d$x$attrs$clickCallback, "JS_EVAL")
 })
-
diff --git a/tests/testthat/test-dygraph.R b/tests/testthat/test-dygraph.R
index 43440f9..3f68acb 100644
--- a/tests/testthat/test-dygraph.R
+++ b/tests/testthat/test-dygraph.R
@@ -5,4 +5,3 @@ test_that("dygraph creation", {
   expect_identical(dygraph(ldeaths, xlab = "x")$x$attrs$xlabel, "x")
   expect_identical(dygraph(ldeaths, ylab = "y")$x$attrs$ylabel, "y")
 })
-
diff --git a/tests/testthat/test-event.R b/tests/testthat/test-event.R
index 76dd3b8..f36c22d 100644
--- a/tests/testthat/test-event.R
+++ b/tests/testthat/test-event.R
@@ -3,10 +3,10 @@ context("dyEvent")
 
 test_that("event creation", {
   d <- dygraph(presidents, main = "Presidential Approval") %>%
-         dyEvent(x = "1950-6-30", "Korea", labelLoc = "bottom") %>%
-         dyEvent(x = "1965-2-09", "Vietnam", labelLoc = "bottom")
+    dyEvent(x = "1950-6-30", "Korea", labelLoc = "bottom") %>%
+    dyEvent(x = "1965-2-09", "Vietnam", labelLoc = "bottom")
   dd <- dygraph(presidents, main = "Presidential Approval") %>%
-         dyEvent(x = c("1950-6-30", "1965-2-09"), c("Korea", "Vietnam"), labelLoc = "bottom")
+    dyEvent(x = c("1950-6-30", "1965-2-09"), c("Korea", "Vietnam"), labelLoc = "bottom")
   expect_equal(length(d$x$events), 2)
   expect_identical(d, dd)
   expect_identical(d$x$events[[1]]$label, "Korea")
diff --git a/tests/testthat/test-highlight.R b/tests/testthat/test-highlight.R
index 7c4c757..7db8666 100644
--- a/tests/testthat/test-highlight.R
+++ b/tests/testthat/test-highlight.R
@@ -4,9 +4,11 @@ context("dyHighlight")
 test_that("highlight creation", {
   lungDeaths <- cbind(ldeaths, mdeaths, fdeaths)
   d <- dygraph(lungDeaths, main = "Deaths from Lung Disease (UK)") %>%
-         dyHighlight(highlightCircleSize = 5, 
-                     highlightSeriesBackgroundAlpha = 0.2,
-                     hideOnMouseOut = FALSE)   
+    dyHighlight(
+      highlightCircleSize = 5,
+      highlightSeriesBackgroundAlpha = 0.2,
+      hideOnMouseOut = FALSE
+    )
   expect_identical(d$x$attrs$highlightCircleSize, 5)
   expect_identical(d$x$attrs$highlightSeriesBackgroundAlpha, 0.2)
 })
diff --git a/tests/testthat/test-legend.R b/tests/testthat/test-legend.R
index 1bc9cbe..fc79299 100644
--- a/tests/testthat/test-legend.R
+++ b/tests/testthat/test-legend.R
@@ -6,4 +6,3 @@ test_that("legend creation", {
   expect_identical(d$x$attrs$legend, "always")
   expect_identical(d$x$attrs$hideOverlayOnMouseOut, TRUE)
 })
-
diff --git a/tests/testthat/test-plotter.R b/tests/testthat/test-plotter.R
index 49d799c..5c784a4 100644
--- a/tests/testthat/test-plotter.R
+++ b/tests/testthat/test-plotter.R
@@ -3,4 +3,4 @@ context("dyOptions")
 test_that("custom plotter", {
   d <- dygraph(ldeaths) %>% dyOptions(plotter = "function(){}")
   expect_false(is.null(d$x$attrs$plotter))
-})
\ No newline at end of file
+})
diff --git a/tests/testthat/test-range-selector.R b/tests/testthat/test-range-selector.R
index d6db12d..a99a0e9 100644
--- a/tests/testthat/test-range-selector.R
+++ b/tests/testthat/test-range-selector.R
@@ -2,7 +2,7 @@
 context("dyRangeSelector")
 
 test_that("range selector creation", {
-  d <- dygraph(nhtemp, main = "New Haven Temperatures") %>% 
-         dyRangeSelector()   
+  d <- dygraph(nhtemp, main = "New Haven Temperatures") %>%
+    dyRangeSelector()
   expect_identical(d$x$attrs$showRangeSelector, TRUE)
 })
diff --git a/tests/testthat/test-roller.R b/tests/testthat/test-roller.R
index 66c01ee..38c2acd 100644
--- a/tests/testthat/test-roller.R
+++ b/tests/testthat/test-roller.R
@@ -2,8 +2,8 @@
 context("dyRoller")
 
 test_that("roller creation", {
-  d <- dygraph(discoveries, main = "Important Discoveries") %>% 
-         dyRoller(rollPeriod = 5)
+  d <- dygraph(discoveries, main = "Important Discoveries") %>%
+    dyRoller(rollPeriod = 5)
   expect_identical(d$x$attrs$showRoller, TRUE)
   expect_identical(d$x$attrs$rollPeriod, 5)
 })
diff --git a/tests/testthat/test-series.R b/tests/testthat/test-series.R
index f2d399c..8b2558c 100644
--- a/tests/testthat/test-series.R
+++ b/tests/testthat/test-series.R
@@ -6,4 +6,3 @@ test_that("series creation", {
   expect_identical(d$x$attrs$labels[[2]], "series")
   expect_identical(d$x$attrs$series[[1]]$fillGraph, FALSE)
 })
-
diff --git a/tests/testthat/test-shading.R b/tests/testthat/test-shading.R
index 5724d29..ab52e1a 100644
--- a/tests/testthat/test-shading.R
+++ b/tests/testthat/test-shading.R
@@ -2,9 +2,9 @@
 context("dyShading")
 
 test_that("shading creation", {
-  d <- dygraph(nhtemp, main = "New Haven Temperatures") %>% 
-         dyShading(from = "1920-1-1", to = "1930-1-1") %>%
-         dyShading(from = "1940-1-1", to = "1950-1-1")   
+  d <- dygraph(nhtemp, main = "New Haven Temperatures") %>%
+    dyShading(from = "1920-1-1", to = "1930-1-1") %>%
+    dyShading(from = "1940-1-1", to = "1950-1-1")
   expect_equal(length(d$x$shadings), 2)
   expect_equal(length(d$x$shadings[[1]]), 4)
   expect_equal(length(d$x$shadings[[2]]), 4)

Debdiff

[The following lists of changes regard files as different if they have different names, permissions or owners.]

Files in second set of .debs but not in first

-rw-r--r--  root/root   /usr/lib/R/site-library/dygraphs/NEWS.md
-rw-r--r--  root/root   /usr/lib/R/site-library/dygraphs/htmlwidgets/lib/jquery/AUTHORS.txt

Files in first set of .debs but not in second

-rw-r--r--  root/root   /usr/lib/R/site-library/dygraphs/NEWS

Control files: lines which differ (wdiff format)

  • Depends: r-base-core (>= 4.2.0-1), 4.2.2-1), r-api-4.0, r-cran-magrittr, r-cran-htmlwidgets (>= 0.6), r-cran-htmltools (>= 0.3.5), r-cran-zoo (>= 1.7-10), r-cran-xts (>= 0.9-7), libjs-jquery

More details

Full run details