如何让用户在散点图上手动绘制一条线并使用 R 中的 shiny 和/或 plotly 打印斜率和截距?

问题描述 投票:0回答:0

我第一次问所以请和我裸露!当用户在散点图上手动绘制一条线时,我试图获得斜率和截距。

我尝试使用

layout(dragmode = 'drawline')
但它不起作用。相反,我使用了
layout(dragmode = 'select')
并且可以得到斜率和截距。但是不允许用户画线。

这是我试过的

library(shiny)
library(plotly)

ui <- fluidPage(
  plotlyOutput("plot"),
  verbatimTextOutput("output")
)

server <- function(input, output) {
  output$plot <- renderPlotly({
    plot_ly(mtcars, x = ~wt, y = ~mpg) %>%
      add_markers() %>%
      layout(dragmode = "select")
  })
  
  output$output <- renderPrint({
    d <- event_data("plotly_selected")
    if (is.null(d)) "Select a region by clicking and dragging on the scatter plot"
    else {
      x <- d$x
      y <- d$y
      coef(lm(y ~ x))
    }
  })
}

shinyApp(ui, server)

任何帮助、建议或不同的方法将不胜感激!

我正在尝试让用户(“手动”)绘制一条线并打印斜率和截距。

r shiny plotly
© www.soinside.com 2019 - 2024. All rights reserved.