Можете ли вы редактировать существующий набор данных в Highcharter? - PullRequest
0 голосов
/ 08 июля 2020

Я работаю с этим блестящим документом, который нашел. Обычно я добавляю свой набор данных. К сожалению, это происходит из встроенного набора данных, который нельзя отменить. Есть ли способ отредактировать встроенный набор данных citytemp, поскольку я не могу вызвать свой собственный файл csv? Он не будет видеть Interactive.csv. Однако он вызывает citytemp, даже если в скрипте нет ссылки на него. Мне очень нравится библиотека highcharter, но получить в нее данные - это совсем другое.

библиотека (блестящая)

library(highcharter)
data<- read.csv("data/interactive.csv", as.is=T)

#data("citytemp")

ui <- fluidPage(
  h1("Highcharter Demo"),
  fluidRow(
    column(width = 4, class = "panel",
           selectInput("type", label = "Type", width = "100%",
                       choices = c("line", "column", "bar", "spline")), 
           selectInput("stacked", label = "Stacked",  width = "100%",
                       choices = c(FALSE, "normal", "percent")),
           selectInput("theme", label = "Theme",  width = "100%",
                       choices = c(FALSE, "fivethirtyeight", "economist",
                                   "darkunica", "gridlight", "sandsignika",
                                   "null", "handdrwran", "chalk")
           ),
           checkboxInput("chk_plot_line", "Add a plot line")
    ),
    column(width = 8,
           highchartOutput("hcontainer",height = "500px")
    )
  )
)

server = function(input, output) {
  
  output$hcontainer <- renderHighchart({
    
    hc <- highcharts_demo() %>%
      hc_chart(zoomType = "x", events = list(load = JS("
    function() {
      var chart = this,
        checkbox = document.querySelector('.checkbox'),
        hasPlotLine = false;
      checkbox.addEventListener('click', function() {
        if (!hasPlotLine) {
          chart.xAxis[0].setTitle({
            text: 'With a plot line'
          });
          chart.xAxis[0].addPlotLine({
            value: 5.5,
            color: 'red',
            width: 2,
            id: 'plot-line-1'
          });
        } else {
          chart.xAxis[0].setTitle({
            text: 'Sample title'
          });
          chart.xAxis[0].removePlotLine('plot-line-1');
        }
        hasPlotLine = !hasPlotLine;
      })
    }"))) %>%
      hc_rm_series("chat") %>% 
      hc_chart(type = input$type)
    
    if (input$stacked != FALSE) {
      hc <- hc %>%
        hc_plotOptions(series = list(stacking = input$stacked))
    }
    
    
    
    if (input$theme != FALSE) {
      theme <- switch(input$theme,
                      null = hc_theme_null(),
                      darkunica = hc_theme_darkunica(),
                      gridlight = hc_theme_gridlight(),
                      sandsignika = hc_theme_sandsignika(),
                      fivethirtyeight = hc_theme_538(),
                      economist = hc_theme_economist(),
                      chalk = hc_theme_chalk(),
                      handdrwran = hc_theme_handdrawn()
      )
      
      hc <- hc %>% hc_add_theme(theme)
      
    }
    
    hc
    
  })
  
}

shinyApp(ui = ui, server = server)
data()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...