首页 > 解决方案 > Highcharter R 包:在进行拖动选择后防止图表上的缩放事件

问题描述

我想在不缩放的情况下对列进行拖动选择。我知道 R 中的 highcharter 包使用 javascript highcharts 包装器,所以我尝试在 R 中应用 javascript highcharts 逻辑,但它似乎不起作用。我也知道我必须使用“event.preventDefault()”来阻止highcharts中的缩放选项,但我不知道如何在R中使用它。这就是我的代码的样子:

 library(shiny)
 library(highcharter)
 data("citytemp")

 hc <- highchart() %>%
  hc_chart(type="column",
           event= list(
             selection = JS(
               "function selectPointsByDrag(e) {

                 // Select points
                 Highcharts.each(this.series, function (series) {
                   Highcharts.each(series.points, function (point) {
                     if (point.x >= e.xAxis[0].min && point.x <= e.xAxis[0].max &&
                         point.y >= e.yAxis[0].min && point.y <= e.yAxis[0].max) {
                       point.select(true, true);
                     }
                   });
                 });

                 // Fire a custom event
                 Highcharts.fireEvent(this, 'selectedpoints', { points: this.getSelectedPoints() });

                 return false; // Don't zoom
               }"
             )
           ),
           zoomType= "xy") %>%
  hc_xAxis(categories = citytemp$month) %>%
  hc_plotOptions(
    series = list(
      borderWidth=0,
      dataLabels=list(enabled=TRUE),
      allowPointSelect= TRUE
    )
  ) %>%
  hc_add_series(name = "Tokyo", data = citytemp$tokyo) 
hc

请帮助我,我已经尝试了一切!

标签: javascriptrjsonhighchartsr-highcharter

解决方案


推荐阅读