привязка сайта к заголовку в блестящей структуре - PullRequest
1 голос
/ 25 июня 2019

Я пытаюсь связать сайт со словом «FAQ», которое встроено в подпись. Я пытаюсь привести пользователей на новую веб-страницу, когда пользователи нажимают на FAQ.

Вот мой код.

См. "Caption = (" Примечание. Дополнительную информацию о показателях сложности см. В разделе часто задаваемых вопросов. "),"

Diff_plot <- reactive({
ggplot(Diff_data(), aes(x =Difficulty_Type, y = Frequency_Difficulties)) + geom_bar(stat =
                                                                   "identity",
                                                                 position = "stack",
                                                                 fill = "#B61E2E") +
  geom_text(
    aes(label = Percentage),
    vjust = 1,
    colour = "white", 
    position = position_dodge(width=0.9),
    fontface = "bold",
    size=5,
   # angle = 90,
    hjust = 0.5
  ) +
  labs(
    x = "",
    y = "Frequecny",



caption = ("Note: See FAQ for more information on difficulties indicators."),


    face = "bold"
  ) +
  theme_bw() + scale_y_continuous(labels = scales::comma) +
  theme(plot.title = element_text(
    hjust = 0.5,
    size = 15,
    colour = "Black",
    face = "bold"
  ),
  plot.caption = element_text(hjust = 0, color = "black", face = "bold", size=12.5),
  axis.text=(blue.bold.12.text), axis.title=blue.bold.14.text, axis.text.x = element_text(angle = -75, vjust = 0, hjust=0)) +
  ggtitle(
    paste(
      "Population by Type of Difficulty in",
      input$county_Diff,
      "for",
      input$sex_diff,
      "(", 
      input$Age_Group_Diff,
      ")"
    )
  )

  })

1 Ответ

2 голосов
/ 25 июня 2019

Я считаю, что это невозможно, ggplot создает изображение, которое затем отображается в вашем блестящем приложении, и заголовок является частью изображения, а не отдельным HTML, его окружающим.Если вы запустите свое приложение и изучите исходный HTML-код, вы увидите теги <img>, в которых отображается график.

Так что вам лучше всего делать вид, что у вас есть заголовок, и вместо этого использовать другой фрагментПользовательский интерфейс в вашем блестящем приложении - что-то вроде:

ui <- fluidPage(

  plotOutput(outputId = "diff_plot"),
  div(tags$p("See the", a("FAQ", href = "...", target = "_blank"), "for more info"),
      style = "text-align: right;")

)

server <- function(input, output) {

  Diff_plot <- reactive({ ... })
  output$diff_plot <- renderPlot({ Diff_plot() })

}

Обратите внимание на target = "_blank", необходимый, если вы хотите, чтобы ссылка открывалась в новой вкладке, а не перенаправляла текущую страницу.

...