textOutput(), como juntar valor de saída e texto?

Tenho um saída textOutput() onde quero apresentar um valor numérico com sua unidade de medicas em km2, por exemplo 1.234,345 km2.

No lado do servidor usei o seguinte código.

 output$area <- renderText({
     x <- area_municipal %>% 
       filter(Município == input$demo1muni) %>% 
       select(AR_MUN_2021) %>% pull() %>% 
       format( big.mark = ".", big.interval = 3L)
     sprintf("<b>%s</b> km<sup>2</sup>",x)
   })

Na saída tenho isso:

Desde já obrigado pela atenção.

Roni, você provavelmente está usando textOutput() para exibir os resultados; neste caso, toda a saída será exibida como um texto, não um código HTML. Basta substituir essa função de saída por htmlOutput().

P.S.: Evite colocar duas funções de uma pipeline em uma mesma linha, como no caso do select() %>% pull(), porque isso pode confundir a pessoa que está lendo seu código. Nesta situação específica você pode trocar as duas funções por pull(AR_MUN_2021), já que a pull() vai puxar só essa coluna mesmo.

Usei o pull() pois no meu selectinput() aparecia o nome da coluna

1


Com o pull() ficou assim.

Testei a sua dia e deu super certo, muito obrigado. :smiley: :+1:

Sim, estou sugerindo que você use pull(AR_MUN_2021) ao invés de select(AR_MUN_2021) %>% pull(). Fica um pouco mais simples :slight_smile:

Entendi, realmente ficou redundante. Obrigado!