Skip to content

Commit 729b801

Browse files
andersficlaude
andcommitted
Fix Shinylive app: remove bslib, use coord_quickmap instead of coord_map
Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
1 parent f1bc553 commit 729b801

2 files changed

Lines changed: 31 additions & 38 deletions

File tree

app.R

Lines changed: 30 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
library(shiny)
2-
library(bslib)
32
library(ggplot2)
43
library(maps)
54
library(jsonlite)
@@ -43,27 +42,28 @@ hent_gbif <- function(taxon_key, ar_fra = 2025) {
4342
}
4443

4544
# --- UI ---
46-
ui <- page_sidebar(
47-
title = "Ferskvassfisk i Noreg – GBIF",
48-
theme = bs_theme(bootswatch = "flatly"),
49-
50-
sidebar = sidebar(
51-
width = 280,
52-
textInput("sok", "Søk etter art:", placeholder = "t.d. Salmo trutta"),
53-
actionButton("sok_btn", "Søk", class = "btn-primary w-100"),
54-
hr(),
55-
uiOutput("resultat_ui"),
56-
hr(),
57-
sliderInput("ar_fra", "Observasjonar frå og med år:",
58-
min = 2000, max = 2025, value = 2025, step = 1, sep = ""),
59-
actionButton("hent_btn", "Vis på kart", class = "btn-success w-100"),
60-
hr(),
61-
uiOutput("info_ui")
62-
),
63-
64-
card(
65-
full_screen = TRUE,
66-
plotOutput("kart", height = "680px")
45+
ui <- fluidPage(
46+
titlePanel("Ferskvassfisk i Noreg \u2013 GBIF"),
47+
48+
sidebarLayout(
49+
sidebarPanel(
50+
width = 3,
51+
textInput("sok", "S\u00f8k etter art:", placeholder = "t.d. Salmo trutta"),
52+
actionButton("sok_btn", "S\u00f8k", class = "btn-primary"),
53+
hr(),
54+
uiOutput("resultat_ui"),
55+
hr(),
56+
sliderInput("ar_fra", "Observasjonar fr\u00e5 og med \u00e5r:",
57+
min = 2000, max = 2025, value = 2025, step = 1, sep = ""),
58+
actionButton("hent_btn", "Vis p\u00e5 kart", class = "btn-success"),
59+
hr(),
60+
uiOutput("info_ui")
61+
),
62+
63+
mainPanel(
64+
width = 9,
65+
plotOutput("kart", height = "700px")
66+
)
6767
)
6868
)
6969

@@ -74,7 +74,6 @@ server <- function(input, output, session) {
7474
valt_art <- reactiveVal(NULL)
7575
obs_data <- reactiveVal(data.frame())
7676

77-
# Søk
7877
observeEvent(input$sok_btn, {
7978
req(nchar(trimws(input$sok)) > 1)
8079
res <- sok_art(trimws(input$sok))
@@ -89,14 +88,12 @@ server <- function(input, output, session) {
8988
valalternativ <- setNames(as.character(res$key), res$scientificName)
9089
tagList(
9190
selectInput("valt_key", "Vel art:", choices = valalternativ),
92-
tags$small(class = "text-muted", "Trykk 'Vis kart' for å hente data")
91+
tags$small("Trykk 'Vis p\u00e5 kart' for \u00e5 hente data")
9392
)
9493
})
9594

96-
# Hent observasjonar
9795
observeEvent(input$hent_btn, {
9896
req(input$valt_key)
99-
showNotification("Hentar data frå GBIF...", type = "message", duration = 3)
10097
data <- hent_gbif(input$valt_key, input$ar_fra)
10198
obs_data(data)
10299
res <- sokeresultat()
@@ -105,17 +102,13 @@ server <- function(input, output, session) {
105102
})
106103

107104
output$info_ui <- renderUI({
108-
obs <- obs_data()
109-
art <- valt_art()
105+
obs <- obs_data()
106+
art <- valt_art()
110107
if (is.null(art) || nrow(obs) == 0) return(NULL)
111-
tagList(
112-
tags$b(art$namn),
113-
tags$br(),
114-
tags$span(paste0(nrow(obs), " observasjonar funne"))
115-
)
108+
tagList(tags$b(art$namn), tags$br(),
109+
tags$span(paste0(nrow(obs), " observasjonar")))
116110
})
117111

118-
# Kart
119112
output$kart <- renderPlot({
120113
obs <- obs_data()
121114
art <- valt_art()
@@ -126,7 +119,7 @@ server <- function(input, output, session) {
126119
aes(x = long, y = lat, group = group),
127120
fill = "grey75", color = "grey40", linewidth = 0.3
128121
) +
129-
coord_map("mercator", xlim = c(4, 32), ylim = c(57, 72)) +
122+
coord_quickmap(xlim = c(4, 32), ylim = c(57, 72)) +
130123
scale_x_continuous(breaks = seq(4, 32, by = 4),
131124
labels = paste0(seq(4, 32, by = 4), "\u00b0\u00d8")) +
132125
scale_y_continuous(breaks = seq(58, 72, by = 2),
@@ -149,9 +142,9 @@ server <- function(input, output, session) {
149142
aes(x = decimalLongitude, y = decimalLatitude),
150143
color = "#2ca02c", size = 2.5, alpha = 0.75) +
151144
labs(title = art$namn,
152-
subtitle = paste0("GBIF Noreg n = ", nrow(obs), " observasjonar"))
145+
subtitle = paste0("GBIF \u2013 Noreg \u2013 n = ", nrow(obs), " observasjonar"))
153146
} else {
154-
p <- p + labs(title = "Søk etter ein art og trykk 'Vis kart'")
147+
p <- p + labs(title = "S\u00f8k etter ein art og trykk 'Vis p\u00e5 kart'")
155148
}
156149
p
157150
})

docs/app.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)