有没有办法在 R 中的图文旁边添加图例,而不是完全在绘图上?

2023-11-30

我大众汽车使用绘制了一个dygraphdygraph函数从一个dygraphsR 包。我想知道有没有办法将图例放在图旁边,而不是像默认情况下那样完全放在图上......

重现此图的代码如下:

library(archivist)
library(dplyr)
library(devtools)
devtools::install_github("rstudio/dygraphs")
library(dygraphs)
seriesReactive <- loadFromGithubRepo( "db914a43536d4d3f00cf3df8bf236b4a", user= "MarcinKosinski", repo="Museum", value = TRUE)
dygraph(seriesReactive, main = "Dzienna proporcja kliknięć do odsłon dla danych struktur", ylab = "Proporcja") %>% 
    dyRangeSelector()

enter image description here


是的,阅读?dygraphs::dyLegend。的描述labelsDiv论证说:

在外部 div 中显示数据标签,而不是在图表上。该值应该是一个 div 元素 id。

这很容易在shiny当然,但不是在上下文中rstudio.

例如,在闪亮ui.R文件中,我添加了这一行:

box(title = "Legend", textOutput("legendDivID"))

这会创建一个 HTML<div>带有 ID 的标签legendDivID。 然后,在闪亮server.R文件中,我使用相同的 IDdygraphs params:

dygraph(...) %>% dyLegend(labelsDiv = "legendDivID")

它就像一个魅力。

对于您的情况,结果如下:

enter image description here

和代码(只需创建app.RRStudio 中的脚本并通过调用运行它shiny::runApp()):

## app.R ##
library(shinydashboard)
library(shiny)
library(dygraphs)

ui <- dashboardPage(
  dashboardHeader(title = "Page title"),
  dashboardSidebar(sidebarMenu(menuItem("tab title", tabName = "tab", icon = icon("globe")))),
  dashboardBody(
    tabItems(
      tabItem(tabName = "tab",
              fluidRow(
                  box(dygraphOutput("graph"), width=9),
                  box(textOutput("legendDivID"), title = "Legend", collapsible = TRUE, width=3)
                )
      )
    )
  )
)

server <- function(input, output) {
  library(archivist)
  library(dplyr)
  seriesReactive <- loadFromGithubRepo( "db914a43536d4d3f00cf3df8bf236b4a", user= "MarcinKosinski", repo="Museum", value = TRUE)

  output$graph <- renderDygraph({
    withProgress(message = "Loading...", {
      dygraph(seriesReactive, main = "Dzienna proporcja kliknięć do odsłon dla danych struktur", ylab = "Proporcja") %>% 
        dyRangeSelector() %>%
        dyLegend(labelsDiv = "legendDivID")
    })
  })
}

shinyApp(ui, server)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法在 R 中的图文旁边添加图例,而不是完全在绘图上? 的相关文章

随机推荐