library(shiny) library(ggplot2) library(ggpsychro) ui <- fluidPage( titlePanel("Psychrometric Chart"), sidebarLayout( sidebarPanel( numericInput("temperature", "Temperature (°C):", value = 25), numericInput("humidity", "Relative Humidity (%):", value = 50), actionButton("plotButton", "Plot") ), mainPanel( plotOutput("psychrometricChart") ) ) ) server <- function(input, output) { observeEvent(input$plotButton, { output$psychrometricChart <- renderPlot({ temperature <- input$temperature humidity <- input$humidity ggplot() + geom_psychro_chart(aes(drybulb = temperature, humidity = humidity)) + theme_psychro_chart() }) }) } shinyApp(ui, server)