plotly.R icon indicating copy to clipboard operation
plotly.R copied to clipboard

render ggplotly graphic - unable to start device

Open ochee opened this issue 2 months ago • 1 comments

Hello,

I try to plot dynamic graphs in a simple dashboard page, here a simple example:

ui.r part

library(shiny)
library(ggplot2)
library(plotly)
library(shinydashboard)

ui <- dashboardPage(
  dashboardHeader(title = "Basic dashboard"),
  dashboardSidebar(),
  dashboardBody(
    fluidRow(
	  plotlyOutput("plot3")
)
)
)

and server.r part

server <- function(input, output) { 
  output$plot3 <- renderPlotly({

  g <- ggplot(faithful, aes(x = eruptions, y = waiting)) +
  stat_density_2d(aes(fill = ..level..), geom = "polygon") + 
  xlim(1, 6) + ylim(40, 100)
  ggplotly(g)
  })
}

This app renders an error : unable to start PNG device. Do you think is it a problem with my R session and versions of packages ?

R version 4.1.2 (2021-11-01) Platform: x86_64-pc-linux-gnu (64-bit) Running under: Ubuntu 22.04.4 LTS

Matrix products: default BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.20.so

locale: [1] LC_CTYPE=C.UTF-8 LC_NUMERIC=C LC_TIME=C.UTF-8 [4] LC_COLLATE=C.UTF-8 LC_MONETARY=C.UTF-8 LC_MESSAGES=C.UTF-8 [7] LC_PAPER=C.UTF-8 LC_NAME=C LC_ADDRESS=C [10] LC_TELEPHONE=C LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C

attached base packages: [1] stats graphics grDevices utils datasets methods base

other attached packages: [1] maptiles_0.7.0 sf_1.0-8

loaded via a namespace (and not attached): [1] Rcpp_1.0.10 magrittr_2.0.3 units_0.8-0 tidyselect_1.2.0 [5] R6_2.5.1 rlang_1.1.1 fansi_1.0.4 dplyr_1.1.2 [9] tools_4.1.2 grid_4.1.2 KernSmooth_2.23-20 utf8_1.2.3 [13] terra_1.6-17 cli_3.6.1 e1071_1.7-12 DBI_1.1.3 [17] class_7.3-20 tibble_3.2.1 lifecycle_1.0.3 codetools_0.2-18 [21] vctrs_0.6.3 glue_1.6.2 proxy_0.4-27 compiler_4.1.2 [25] pillar_1.9.0 generics_0.1.3 classInt_0.4-8 pkgconfig_2.0.3

Many thanks,

ochee avatar Apr 16 '24 11:04 ochee

Can you recreate the error outside of shiny?

library(plotly)
g <- ggplot(faithful, aes(x = eruptions, y = waiting)) +
  stat_density_2d(aes(fill = ..level..), geom = "polygon") + 
  xlim(1, 6) + ylim(40, 100)
ggplotly(g)

cpsievert avatar Apr 16 '24 14:04 cpsievert