Tilbage


Delmål 16: Fred, retfærdighed og stærke institutioner

Personfarlig kriminalitet


FN 16.10.1 Anmeldte forbrydelser mod liv og legeme
# Import
KRDAN1_raw <- 
  statgl_url("KRXAN1", lang = language) |> 
  statgl_fetch(
    station = px_all(),
    `type of offence` = px_all(),
    time = px_top(10),
    .col_code = T
  ) |> 
  as_tibble() |> 
  drop_na()
# Transform
KRDAN1 <- 
  KRDAN1_raw |> 
  filter(`type of offence` %in% c("Vold", "Trussel på livet", "Husfredskrænkelse", "Forsøg på manddrab", "Kriminallov andet", "Manddrab")) |> 
  summarise(value = sum(value), .by = c(`type of offence`, time))

# Plot
KRDAN1 |> 
  ggplot(aes(
    x = time,
    y = value,
    fill = `type of offence`
  )) + 
  geom_col() + 
  theme_statgl() +
  scale_fill_statgl(reverse = T, guide = guide_legend(nrow = 3, reverse = T)) +
  theme(plot.margin = margin(10, 10, 10, 10)) +
  labs(
    title = sdg16$figs$fig1$title[language],
    x = " ",
    y = colnames(KRDAN1_raw)[1],
    fill = " ",
    caption = sdg16$figs$fig1$cap[language]
  )

Statistikbanken

Metode


# Transform
KRDAN1 <- 
  KRDAN1_raw |> 
  filter(time >= year(Sys.time()) - 5 & `type of offence` %in% c("Vold", "Trussel på livet", "Husfredskrænkelse", "Forsøg på manddrab", "Kriminallov andet", "Manddrab")) |> 
  summarise(value = sum(value), .by = c(`type of offence`, time)) |> 
  rename("Overtrædelsens art" = 1) |> 
  spread(time, value)

# Table
KRDAN1 |> 
  statgl_table()
Overtrædelsens art 2020 2021 2022 2023 2024
Forsøg på manddrab 8 10 12 27 21
Husfredskrænkelse 51 46 56 45 32
Kriminallov andet 92 104 96 107 97
Manddrab 7 3 10 6 6
Trussel på livet 245 211 259 236 189
Vold 1.475 1.454 1.170 1.276 1.072

Seksuelle overgreb


FN 16.2.3 Andel af unge kvinder og mænd mellem 18 og 29 år, som har oplevet seksuel vold inden de fyldte 18 år
# Import
SIF_raw <-
  data.frame(overgreb = c(32.8, 32.8, 27.0),
             tid = c("2005-2010", "2014", "2018")) %>%
  as_tibble()

# Transform
SIF <-
  SIF_raw %>%
  rename(`Andel 18-29-årige, der har vøret udsat for seksuelle overgreb inden 18-årsalderen` = overgreb) %>%
  gather(indikatorer, værdi, -tid)

# Plot
SIF_overgreb_plot <-
  SIF %>%
  mutate(tid = as.character(tid)) %>% 
  ggplot(aes(x = tid, y = værdi, fill = indikatorer)) +
  geom_col() +
  scale_y_continuous(labels  = scales::percent_format(scale = 1, accuracy = 1, big.mark = ".",
    decimal.mark = ",")) +
  theme_statgl() + scale_fill_statgl(reverse = TRUE) +
  theme(legend.position = "None") +
  labs(
    title = sdg16$figs$fig2$title[language],
    x = " ",
    y = " ",
    caption = sdg16$figs$fig2$cap[language]
  )

SIF_overgreb_plot

Befolkningsundersøgelse


# Import
SIF_raw <-
  data.frame(overgreb = c(32.8, 32.8, 27.0),
             tid = c("2005-2010", "2014", "2018")) %>%
  as_tibble()

# Transform
SIF <-
  SIF_raw %>%
  rename(`Andel 18-29-årige, der har været udsat for seksuelle overgreb inden 18-årsalderen` = overgreb) %>%
  gather(indikatorer, værdi, -tid)

# Table
SIF_overgreb_table <-
  SIF %>%
  mutate(værdi = format(værdi, digits = 3, decimal.mark = ",")) %>%
  spread(tid, værdi) %>%
  set_names(str_to_title(names(.))) %>%
  kable(align = "lrrrrrrrrrrrrrrrr") %>%
  kable_styling(bootstrap_options = c("condensed", "reactive"),
                full_width = FALSE) %>%
  add_footnote(
    sdg16$figs$fig2$foot[language],
    notation = "symbol"
  )

SIF_overgreb_table
Indikatorer 2005-2010 2014 2018
Andel 18-29-årige, der har været udsat for seksuelle overgreb inden 18-årsalderen 32,8 32,8 27,0
* Procentvis andel 18-29-årige, der har været udsat for seksuelle overgreb inden 18-årsalderen.

Drab


FN 16.1.1 Antal af ofre for overlagt mord, opdelt på køn
# Import
SUDLDM3_raw <- 
  read_csv(
    paste0("https://bank.stat.gl:443/sq/50013c7c-14d5-4d6a-96e0-df61cb3044f3", "?lang=", language),
    locale = locale(encoding = "latin1")
  )

# Transform
SUDLDM3 <- 
  SUDLDM3_raw %>% 
  rename(
    "causes" = 1,
    "sex"    = 2,
    "time"   = 3,
    "value"  = 4
  )

# Plot
SUDLDM3 %>% 
  ggplot(aes(
    x    = time,
    y    = value,
    fill = sex
  )) +
  geom_col() +
  theme_statgl() + scale_fill_statgl(reverse = TRUE) +
  scale_y_continuous(breaks = c(0, 2, 4, 6, 8, 10)) +
  labs(
    title = SUDLDM3[[1]][1],
    y = sdg16$figs$fig3$y_lab[language],
    fill = " ",
    x = " ",
    caption = sdg16$figs$fig3$cap[language]
  )

Statistikbanken


# Transform
SUDLDM3 <- 
  SUDLDM3_raw %>% 
  rename(
    "causes" = 1,
    "sex"    = 2,
    "time"   = 3,
    "value"  = 4
  ) %>% 
  spread(2, 4) %>% 
  filter(time >= year(Sys.time()) - 5) %>% 
  arrange(desc(time))

SUDLDM3 %>% 
  select(-1) %>% 
  rename(" " = 1) %>% 
  statgl_table(year_col = " ") %>% 
  pack_rows(index = table(SUDLDM3[[1]])) %>% 
  add_footnote(sdg16$figs$fig3$foot[language], notation = "symbol")
Kvinder Mænd
Drab, overfald
2023 1 0
2022 1 5
2021 1 2
2020 3 2
* Antal personer

Politiets tryghedsundersøgelse


GS Resultater fra politiets tryghedsundersøgelse
# Import
police1_raw <-
  data.frame(
    Tryg = c(82.9, 81.6),
    hverken = c(5.5, 7.3),
    Utryg = c(10.1, 10.4),
    ved_ikke = c(1.5, 0.7),
    tid = c(2018 , 2019)
  ) %>%
  as_tibble()

# Transform
police1 <-
  police1_raw %>%
  rename(`Hverken/eller` = hverken,
         `Ved ikke/ ønsker ikke at svare` = ved_ikke) %>%
  gather(svar, procent, -tid) %>% 
  mutate(tid = as.factor(tid))
  
# Plot
police1_plot <-
  police1 %>%
  ggplot(aes(x = svar,
             y = procent,
             fill = tid)) +
  geom_col(position = "dodge2") +
  expand_limits(y = 100) +
  theme_statgl() + scale_fill_statgl() +
  scale_y_continuous(labels  = scales::percent_format(scale = 1, accuracy = 1, big.mark = ".",
    decimal.mark = ",")) +
  labs(
    title = sdg16$figs$fig4$title[language],
    x = " ",
    y = " ",
    fill = " ",
    caption = sdg16$figs$fig4$cap[language]
  )

police1_plot

Tryghedsundersøgelse


# Import
police1_raw <-
  data.frame(
    Tryg = c(82.9, 81.6),
    hverken = c(5.5, 7.3),
    Utryg = c(10.1, 10.4),
    ved_ikke = c(1.5, 0.7),
    tid = c(2018 , 2019)
  ) %>%
  as_tibble()

# Transform
police1 <-
  police1_raw %>%
  rename(`Hverken/eller` = hverken,
         `Ved ikke/ ønsker ikke at svare` = ved_ikke) %>%
  gather(svar, procent,-tid)

# Table
police1_table <-
  police1 %>%
  mutate(procent = format(procent, digits = 3, decimal.mark = ",")) %>%
  spread(tid, procent) %>%
  set_names(str_to_title(names(.))) %>%
  kable(align = "lrr") %>%
  kable_styling(bootstrap_options = c("condensed", "reactive"),
                full_width = TRUE) %>%
  add_footnote(sdg16$figs$fig4$foot[language],
               notation = "symbol")

police1_table
Svar 2018 2019
Hverken/eller 5,5 7,3
Tryg 82,9 81,6
Utryg 10,1 10,4
Ved ikke/ ønsker ikke at svare 1,5 0,7
* Procent, borgernes grundlæggende tryghed i Grønland.


Spørgsmål: På en skala fra 1-7, hvor 1 er ‘jeg føler mig grundlæggende tryg i mit nabolag’ og 7 er ‘jeg føler mig grundlæggende utryg i mit nabolag’, hvor tryg eller utryg føler du dig så? Med nabolag menes det område, der umiddelbart omgiver din bopæl. I figuren er svarene grupperede, så 1-3 angiver, at borgerne er trygge i deres nabolag, 4 angiver, at borgerne hverken er trygge eller utrygge i deres nabolag, og 5-7 angiver, at borgerne er utrygge i deres nabolag.

Bemærk: Tages den statistiske usikkerhed i betragtning, er andelen af borgere, som er trygge i deres nabolag, på samme niveau.



# Import
police4_raw <-
  data.frame(
    Tryg = c(92.0, 86.8),
    hverken = c(1.5, 4.7),
    Utryg = c(4.4, 7.2),
    ved_ikke = c(2.2, 1.4),
    tid = c(2018 , 2019)
  ) %>%
  as_tibble()

# Transform
police4 <-
  police4_raw %>%
  rename(`Hverken/eller` = hverken,
         `Ved ikke/ ønsker ikke at svare` = ved_ikke) %>%
  gather(svar, procent,-tid) %>% 
  mutate(tid = as.factor(tid))

# Plot
police4_plot <-
  police4 %>%
  ggplot(aes(x = svar,
             y = procent,
             fill = tid)) +
  geom_col(position = "dodge2") +
  theme_statgl() + scale_fill_statgl() +
  expand_limits(y = 100) +
  scale_y_continuous(labels  = scales::percent_format(scale = 1, accuracy = 1, big.mark = ".",
    decimal.mark = ",")) +
  labs(
    title = sdg16$figs$fig5$title[language],
    x = " ",
    y = " ",
    fill = " ",
    caption = sdg16$figs$fig5$cap[language]
  )

police4_plot

Tryghedsundersøgelse


# Import
police4_raw <-
  data.frame(
    Tryg = c(92.0, 86.8),
    hverken = c(1.5, 4.7),
    Utryg = c(4.4, 7.2),
    ved_ikke = c(2.2, 1.4),
    tid = c(2018 , 2019)
  ) %>%
  as_tibble()

# Transform
police4 <-
  police4_raw %>%
  rename(`Hverken/eller` = hverken,
         `Ved ikke/ ønsker ikke at svare` = ved_ikke) %>%
  gather(svar, procent,-tid)

# Table
police4_table <-
  police4 %>%
  mutate(procent = format(procent, digits = 3, decimal.mark = ",")) %>%
  spread(tid, procent) %>%
  set_names(str_to_title(names(.))) %>%
  kable(align = "lrr") %>%
  kable_styling(bootstrap_options = c("condensed", "reactive"),
                full_width = TRUE) %>%
  add_footnote(
    sdg16$figs$fig5$foot[language],
    notation = "symbol"
  )

police4_table
Svar 2018 2019
Hverken/eller 1,5 4,7
Tryg 92,0 86,8
Utryg 4,4 7,2
Ved ikke/ ønsker ikke at svare 2,2 1,4
* Procent, borgernes grundlæggende tryghed i bebyggelser uden politistation.


Spørgsmål: På en skala fra 1-7, hvor 1 er ‘jeg føler mig grundlæggende tryg i mit nabolag’ og 7 er ‘jeg føler mig grundlæggende utryg i mitnabolag’, hvor tryg eller utryg føler du dig så? Med nabolag menes det område, der umiddelbart omgiver din bopæl. I figuren er svarenegrupperede, så 1-3 angiver, at borgerne er trygge i deres nabolag, 4 angiver, at borgerne hverken er trygge eller utrygge i deres nabolag, og 5-7 angiver, at borgerne er utrygge i deres nabolag.

Bemærk: Tages den statistiske usikkerhed i betragtning, er der en tendens til, at andelen af borgere, som er trygge i deres nabolag, er faldet.



# Import
police5_raw <-
  data.frame(
    tillid = c(85.0, 89.3),
    ikke_tillid = c(12.5, 7.7),
    ved_ikke = c(2.5, 3.0),
    tid = c(2018 , 2019)
  ) %>%
  as_tibble()

# Transform
police5 <-
  police5_raw %>%
  rename(
    `Tillid til politiet` = tillid,
    `Ikke tillid til politiet` = ikke_tillid,
    `Ved ikke/ ønsker ikke at svare` = ved_ikke
  ) %>%
  gather(svar, procent,-tid) %>% 
  mutate(tid = as.factor(tid))

# Plot
police5_plot <-
  police5 %>%
  ggplot(aes(x = svar,
             y = procent,
             fill = tid)) +
  geom_col(position = "dodge2") +
  theme_statgl() + scale_fill_statgl() +
  expand_limits(y = 100) +
  scale_y_continuous(labels  = scales::percent_format(scale = 1, accuracy = 1, big.mark = ".",
    decimal.mark = ",")) +
  labs(
    title = sdg16$figs$fig6$title[language],
    x = " ",
    y = " ",
    fill = " ",
    caption = sdg16$figs$fig6$cap[language]
  )

police5_plot

Tryghedsundersøgelse


# Import
police5_raw <-
  data.frame(
    tillid = c(85.0, 89.3),
    ikke_tillid = c(12.5, 7.7),
    ved_ikke = c(2.5, 3.0),
    tid = c(2018 , 2019)
  ) %>%
  as_tibble()

# Transform
police5 <-
  police5_raw %>%
  rename(
    `Tillid til politiet` = tillid,
    `Ikke tillid til politiet` = ikke_tillid,
    `Ved ikke/ ønsker ikke at svare` = ved_ikke
  ) %>%
  gather(svar, procent, -tid)

# Table
police5_table <-
  police5 %>%
  mutate(procent = format(procent, digits = 3, decimal.mark = ",")) %>%
  spread(tid, procent) %>%
  set_names(str_to_title(names(.))) %>%
  kable(align = "lrr") %>%
  kable_styling(bootstrap_options = c("condensed", "reactive"),
                full_width = TRUE) %>%
  add_footnote(sdg16$figs$fig6$foot[language],
               notation = "symbol")

police5_table
Svar 2018 2019
Ikke tillid til politiet 12,5 7,7
Tillid til politiet 85,0 89,3
Ved ikke/ ønsker ikke at svare 2,5 3,0
* Procent, borgernes tillid til politiet i Grønland.


Spørgsmål: Er du enig i følgende udsagn? Jeg har tillid til, at politiet vil hjælpe mig, hvis jeg har brug for det. I figuren er svarene kategoriseret, så Tillid til politiet svarer til de borgere, som har svaret ja på spørgsmålet og Ikke tillid til politiet svarer til de borgere, som har svaret nej på spørgsmålet.

Bemærk: Tages den statistiske usikkerhed i betragtning, er andelen af borgere, som har tillid til politiet, steget. Når der sammenlignes, skal der dog tages forbehold for, at spørgsmålet er blevet stillet i forskellige kontekster i de to år.

Stemmeprocent


GS Stemmeprocent
# Import
SAXLANST_raw <- 
  statgl_url("SAXLANST", lang = language) %>%
  statgl_fetch(
    "constituencies" = c(0),
    "votes cast"     = c(16, 20),
    .col_code        = TRUE
  ) %>% 
  as_tibble()

# Transform
SAXLANST <- 
  SAXLANST_raw %>% 
  separate(time, c("day", "month", "year")) %>% 
  select(-c("day", "month")) %>% 
  mutate(
    year = year %>% as.numeric(),
    year = year + 1900,
    plus = case_when(
      year < 1950 ~ 100, 
      year > 1950 ~ 0),
    year = year + plus,
    `votes cast` = `votes cast` %>% fct_reorder(value, sum)
  ) %>% 
  select(-ncol(.)) %>% 
  spread(3, 4) %>% 
  rename(
    valid = 3,
    total = 4
  ) %>% 
  mutate(
    vote = valid / total * 100,
    mean = mean(vote)
  )

# Plot
SAXLANST %>% 
  ggplot(aes(
    x = year,
    y = vote
  )) +
  geom_point(size = 2) +
  geom_segment(aes(
    x = year,
    xend = year,
    y = 0,
    yend = vote
  )) +
  scale_y_continuous(labels  = scales::percent_format(
    scale        = 1,
    accuracy     = 1,
    big.mark     = ".",
    decimal.mark = ","
  )) +
  theme_statgl() + 
  scale_fill_statgl() +
  expand_limits(y = 0) +
  expand_limits(y = 100) +
  geom_hline(
    size = 15,
    alpha = 0.1, 
    color = "green",
    yintercept = SAXLANST[["mean"]][1]
    ) +
  labs(
    title    = sdg16$figs$fig9$title[language],
    subtitle = SAXLANST[[2]][1],
    y        = " ",
    x        = " ",
    caption  = sdg16$figs$fig9$cap[language]
    )

Statistikbanken


# Table
SAXLANST %>% 
  select(year, vote) %>% 
  #arrange(desc(year)) %>% 
  filter(year >= year(Sys.time()) - 20) %>% 
  mutate(
    year = year %>% factor(levels = unique(year)),
    vote = vote %>% round(1)
  ) %>% 
  spread(year, vote) %>% 
  statgl_table() %>% 
  add_footnote(sdg16$figs$fig9$foot[language], notation = "symbol")
2005 2009 2013 2014 2018 2021
74,2 72,6 73,3 72,2 71,1 64,5
* Stemmeprocent, Valg til Inatsisartut
# Import
SAXKOMST_raw <- 
  statgl_url("SAXKOMST", lang = language) %>% 
  statgl_fetch(
    municipality = c(0),
    "votes cast" = c(15, 19),
    .col_code    = TRUE
  ) %>% 
  as_tibble()

# Transform
SAXKOMST <- 
  SAXKOMST_raw %>% 
  separate(time, c("day", "month", "year")) %>% 
  select(-c("day", "month")) %>% 
  mutate(
    year = year %>% as.numeric(),
    year = year + 1900,
    plus = case_when(
      year < 1950 ~ 100, 
      year > 1950 ~ 0),
    year = year + plus,
    `votes cast` = `votes cast` %>% fct_reorder(value, sum)
    ) %>% 
  select(-ncol(.)) %>% 
  spread(3, 4) %>% 
  rename(
    valid = 3,
    total = 4
  ) %>% 
  mutate(
    vote = valid / total * 100,
    mean = mean(vote)
    )

# Plot
SAXKOMST %>% 
  ggplot(aes(
    x = year,
    y = vote
  )) +
  geom_point(size = 2) +
  geom_segment(aes(
    x = year,
    xend = year,
    y = 0,
    yend = vote
  )) +
  scale_y_continuous(labels  = scales::percent_format(
    scale        = 1,
    accuracy     = 1,
    big.mark     = ".",
    decimal.mark = ","
  )) +
  theme_statgl() + 
  scale_fill_statgl() +
  expand_limits(y = 0) +
  expand_limits(y = 100) +
  geom_hline(
    size       = 15,
    alpha      = 0.1, 
    color      = "red",
    yintercept = SAXKOMST[["mean"]][1],
    ) +
  labs(
    title    = sdg16$figs$fig8$title[language],
    subtitle = SAXKOMST[[2]][1],
    y        = " ",
    x        = " ",
    caption  = sdg16$figs$fig8$cap[language]
    )

Statistikbanken


# Table
SAXKOMST %>% 
  select(year, vote) %>% 
  #arrange(desc(year)) %>% 
  filter(year >= year(Sys.time()) - 20) %>% 
  mutate(
    year = year %>% factor(levels = unique(year)),
    vote = vote %>% round(1)
  ) %>% 
  spread(year, vote) %>% 
  statgl_table() %>% 
  add_footnote(sdg16$figs$fig8$foot[language], notation = "symbol")
2005 2008 2013 2017 2021
66,4 61,2 57,6 60,1 62,6
* Stemmeprocent, Kommunalvalg
# Import
SAXFOLK_raw <- 
  statgl_url("SAXFOLK", lang = language) %>% 
  statgl_fetch(
    municipality = c(0),
    "votes cast" = c(12, 16),
    .col_code    = TRUE
    ) %>% 
    as_tibble()

# Transform
SAXFOLK <- 
  SAXFOLK_raw %>% 
  separate(time, c("day", "month", "year")) %>% 
  select(-c("day", "month")) %>% 
  mutate(
    year = year %>% as.numeric(),
    year = year + 1900,
    plus = case_when(
      year < 1980 ~ 100, 
      year > 1980 ~ 0
      ),
    year = year + plus,
    `votes cast` = `votes cast` %>% fct_reorder(value, sum)) %>% 
  select(-ncol(.)) %>% 
  spread(3, 4) %>% 
  rename(
    valid = 3,
    total = 4
  ) %>% 
  mutate(vote = valid / total * 100,
         mean = mean(vote))

# Plot
SAXFOLK %>% 
  ggplot(aes(
    x = year,
    y = vote
  )) +
  geom_point(size = 2) +
  geom_segment(aes(
    x = year,
    xend = year,
    y = 0,
    yend = vote
  )) +
  scale_y_continuous(labels  = scales::percent_format(
    scale        = 1,
    accuracy     = 1,
    big.mark     = ".",
    decimal.mark = ","
  )) +
  theme_statgl() + 
  scale_fill_statgl() +
  expand_limits(y = 0) +
  expand_limits(y = 100) +
  geom_hline(
    size = 15,
    alpha = 0.1,
    color = "blue",
    yintercept = SAXFOLK[["mean"]][1]
    ) +
  labs(
    title    = sdg16$figs$fig7$title[language],
    subtitle = SAXFOLK[[2]][1],
    y        = " ",
    x        = " ",
    caption  = sdg16$figs$fig7$cap[language]
    )

Statistikbanken


# Table
SAXFOLK %>% 
  select(year, vote) %>% 
  #arrange(desc(year)) %>% 
  filter(year >= year(Sys.time()) - 20) %>% 
  mutate(
    year = year %>% factor(levels = unique(year)),
    vote = vote %>% round(1)
    ) %>% 
  spread(year, vote) %>% 
  statgl_table() %>% 
  add_footnote(sdg16$figs$fig7$foot[language], notation = "symbol")
2005 2007 2011 2015 2019 2022
58,6 63,2 55 49,2 48,4 46,6
* Stemmeprocent, Folketinget