# Create pie chart

dataset_complication <- dataset_complication %>%
  mutate(percentage = number / sum(number) * 100)

dataset_complication$side_effect_group <- factor(dataset_complication$side_effect_group, levels = c("no_side_effect", "ischemic_complication", "bleeding_complication"))

new_labels <- c("No complication", "Ischemia", "Bleeding")

ggplot(dataset_complication, aes(x="", y=number, fill=side_effect_group)) +
  geom_bar(stat="identity", width=1) +
  coord_polar("y", start=0) +
  theme_minimal() +
  theme(
    axis.text.x=element_blank(),
    axis.title.x=element_blank(),
    axis.title.y=element_blank(),
    panel.border = element_blank(),
    panel.grid=element_blank(),
    axis.ticks = element_blank(),
    plot.title=element_text(size=14, face="bold")
  ) +
  labs(title="", fill="Complication type") +
  scale_fill_manual(values = c(color_c, color_b, color_a), 
                    labels = new_labels
                    ) +
    geom_text_repel(aes(label = paste0(round(percentage, 0), "%")), color="black"
            ,position = position_stack(vjust = 0.5)
            ,force = 0.001
                    )

  geom_text(aes(y = number/2 + c(0, cumsum(number)[-length(number)]), 
                label = paste0(round(percentage, 1), "%")), color="white")
## mapping: y = ~number/2 + c(0, cumsum(number)[-length(number)]), label = ~paste0(round(percentage, 1), "%") 
## geom_text: parse = FALSE, check_overlap = FALSE, na.rm = FALSE
## stat_identity: na.rm = FALSE
## position_identity