VOOZH about

URL: https://plotly.com/r/range-slider/

⇱ Range sliders and selectors in R


Basic Range Slider and Selector Buttons

library(plotly)library(quantmod)# Download some datagetSymbols(Symbols=c("AAPL","MSFT"),from='2018-01-01',to='2019-01-01')
## [1] "AAPL" "MSFT"
ds<-data.frame(Date=index(AAPL),AAPL[,6],MSFT[,6])fig<-plot_ly(ds,x=~Date)fig<-fig%>%add_lines(y=~AAPL.Adjusted,name="Apple")fig<-fig%>%add_lines(y=~MSFT.Adjusted,name="Microsoft")fig<-fig%>%layout(title="Stock Prices",xaxis=list(rangeselector=list(buttons=list(list(count=3,label="3 mo",step="month",stepmode="backward"),list(count=6,label="6 mo",step="month",stepmode="backward"),list(count=1,label="1 yr",step="year",stepmode="backward"),list(count=1,label="YTD",step="year",stepmode="todate"),list(step="all"))),rangeslider=list(type="date")),yaxis=list(title="Price"))fig

What About Dash?

Dash for R is an open-source framework for building analytical applications, with no Javascript required, and it is tightly integrated with the Plotly graphing library.

Learn about how to install Dash for R at https://dashr.plot.ly/installation.

Everywhere in this page that you see fig, you can display the same figure in a Dash for R application by passing it to the figure argument of the Graph component from the built-in dashCoreComponents package like this:

library(plotly)fig<-plot_ly()# fig <- fig %>% add_trace( ... )# fig <- fig %>% layout( ... ) library(dash)library(dashCoreComponents)library(dashHtmlComponents)app<-Dash$new()app$layout(htmlDiv(list(dccGraph(figure=fig))))app$run_server(debug=TRUE,dev_tools_hot_reload=FALSE)