diff --git a/CHANGELOG.md b/CHANGELOG.md index c1a265b5..64c015be 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,7 +19,7 @@ This project adheres to [Semantic Versioning](http://semver.org/). ## [0.6.0] - 2020-06-17 ### Changed -- Dash for R now depends on v4.8.0 of `dashTable`, which incorporates changes and bug fixes summarized in https://github.com/plotly/dash-table/pull/787, https://github.com/plotly/dash-table/pull/785, and https://github.com/plotly/dash-table/pull/793. +- Dash for R now depends on v4.8.0 of `dashTable`, which incorporates changes and bug fixes summarized in , , and . ## [0.5.0] - 2020-05-28 ### Added @@ -95,7 +95,6 @@ This project adheres to [Semantic Versioning](http://semver.org/). - Fixes for hot reloading interval handling and refreshing apps within viewer pane [#148](https://github.com/plotly/dashR/pull/148) - `get_asset_url` checks `getAppPath()` as well as `DASH_APP_ROOT_PATH` environment variable when invoked [#161](https://github.com/plotly/dashR/pull/161) - ## [0.1.0] - 2019-07-10 ### Added - Initial release @@ -118,17 +117,14 @@ This project adheres to [Semantic Versioning](http://semver.org/). ### Fixed - CSS dependencies are now properly loaded [#94](https://github.com/plotly/dashR/pull/94) - ## [0.0.7] - 2019-04-09 ### Removed - `dependencies_set`, `dependencies_get`, and `dependencies_get_internal` methods removed from package - ### [0.0.6] - 2019-04-08 ### Added - Local asset serving implemented [#64](https://github.com/plotly/dashR/pull/64) - ### [0.0.5] - 2019-04-01 ### Added - Support for direct import of `plot_ly` and `ggplotly` figures [#71](https://github.com/plotly/dashR/pull/71) @@ -136,7 +132,6 @@ This project adheres to [Semantic Versioning](http://semver.org/). ### Changed - `layout_set` method renamed to `layout` for parity with Dash for Python - ### [0.0.4] - 2019-03-14 ### Added - Support for externally hosted CSS via `external_stylesheets` @@ -152,7 +147,6 @@ This project adheres to [Semantic Versioning](http://semver.org/). - Bug preventing remotely hosted JS resolved - Local serving of dependencies fixed when `href` attributes also present - ### [0.0.3] - 2019-03-08 ### Added - `assert_valid_callbacks` to validate callback handler definitions and ordering of `input` and `state` using @@ -163,6 +157,5 @@ This project adheres to [Semantic Versioning](http://semver.org/). - Handler function for callbacks now passed via `func` argument to `app$callback()` - `dash_renderer` updated to v0.18.0 - ### [0.0.0.9000] - 2018-07-25 - Initial development version diff --git a/README.md b/README.md index ebda18a6..0feb4857 100644 --- a/README.md +++ b/README.md @@ -8,15 +8,16 @@ #### Create beautiful, analytic web applications in R. -[Documentation](https://dashr.plotly.com/) | [Gallery](https://dash-gallery.plotly.host/Portal/) +[Documentation](https://dashr.plotly.com/) | [Gallery](https://dash-gallery.plotly.host/Portal/) ## Installation -https://dashr.plotly.com/installation + > 🛑 Make sure you're on at least version `3.0.2` of R. You can see what version of R you have by entering `version` in the R CLI. [CRAN](https://cran.r-project.org/bin/) is the easiest place to download the latest R version. As of 2020-06-04, **dash** and the currently released versions of all core component libraries are _available for download via CRAN!_ Installing `dash` and its dependencies is as simple as + ```r install.packages("dash") ``` @@ -44,11 +45,10 @@ That's it! ## Getting Started -https://dashr.plotly.com/getting-started + The R package **dash** makes it easy to create reactive web applications powered by R. It provides an [R6](https://cran.r-project.org/web/packages/R6/index.html) class, named `Dash`, which may be initialized via the `new()` method. - ```r library(dash) library(dashHtmlComponents) @@ -69,9 +69,9 @@ app$layout( ) ) -app$callback(output = list(id="outputID", property="children"), +app$callback(output = list(id="outputID", property="children"), params = list(input(id="inputID", property="value"), - state(id="inputID", property="type")), + state(id="inputID", property="type")), function(x, y) { sprintf("You've entered: '%s' into a '%s' input control", x, y) } @@ -90,8 +90,8 @@ app <- Dash$new() app$layout( htmlDiv( list( - dccInput(id = "graphTitle", - value = "Let's Dance!", + dccInput(id = "graphTitle", + value = "Let's Dance!", type = "text"), htmlDiv(id = "outputID"), dccGraph(id = "giraffe", @@ -104,46 +104,46 @@ app$layout( ) ) -app$callback(output = list(id = "giraffe", property = "figure"), - params = list(input("graphTitle", "value")), +app$callback(output = list(id = "giraffe", property = "figure"), + params = list(input("graphTitle", "value")), function(newTitle) { - + rand1 <- sample(1:10, 1) - + rand2 <- sample(1:10, 1) rand3 <- sample(1:10, 1) rand4 <- sample(1:10, 1) - + x <- c(1,2,3) y <- c(3,6,rand1) y2 <- c(rand2,rand3,rand4) - + df = data.frame(x, y, y2) - + list( - data = - list( + data = + list( list( - x = df$x, - y = df$y, + x = df$x, + y = df$y, type = "bar" ), list( - x = df$x, - y = df$y2, + x = df$x, + y = df$y2, type = "scatter", mode = "lines+markers", line = list(width = 4) - ) + ) ), layout = list(title = newTitle) ) } ) -app$callback(output = list(id = "outputID", property = "children"), +app$callback(output = list(id = "outputID", property = "children"), params = list(input("graphTitle", "value"), - state("graphTitle", "type")), + state("graphTitle", "type")), function(x, y) { sprintf("You've entered: '%s' into a '%s' input control", x, y) }