Side Effects of Psychiatric Medications

The Data: SIDER 4.1 Side Effect Resource

From the website:

SIDER contains information on marketed medicines and their recorded adverse drug reactions. The information is extracted from public documents and package inserts. The available information include side effect frequency, drug and side effect classifications as well as links to further information, for example drug–target relations.

The Visualization: What are the most common side effects of psychiatric medications?

The Details: How the Plot was Made

This plot was made using ggplot. It uses geom_bar with coord_theta to change the bar to a circle. The color scheme is the Futurama palette from the ggsci package. Here is a glimpse of the data:

STITCH Drug MedDra_code MedDra_term freq_lb freq_ub
CID100000444 bupropion C0004093 Asthenia 0.022 0.164
CID100000444 bupropion C0009806 Constipation 0.096 0.096
CID100000444 bupropion C0011991 Diarrhoea 0.052 0.052
CID100000444 bupropion C0012833 Dizziness 0.064 0.064
CID100000444 bupropion C0015672 Fatigue 0.050 0.050
CID100000444 bupropion C0018681 Headache 0.191 0.290
CID100000444 bupropion C0027497 Nausea 0.096 0.096
CID100000444 bupropion C0042963 Vomiting 0.046 0.170
CID100000444 bupropion C0043352 Dry mouth 0.150 0.150
CID100000444 bupropion C0232462 Decreased appetite 0.051 0.051

And here is the ggplot code:

top12_psych %>% filter(freq_lb >= 0.1) %>% 
ggplot(mapping = aes(x = 1, y=freq_lb, fill = MedDra_term)) + 
  geom_bar(stat = "identity", position = "fill", width = 0.1, color = "black") +
  coord_polar(theta="y") +
  facet_wrap(~Drug, ncol=5) +
  xlim(c(0.9, 1.05)) +
  labs(title = "What are the most common side effects of psychiatric medications?",
       subtitle = " ") +
  theme_void() +
  theme(legend.position = "top",
        legend.title = element_blank(),
        plot.title = element_text(hjust=0.5, size = 20),
        plot.margin = margin(t = 20, r = 0, b = 20, l = 0, unit = "pt"),
        plot.subtitle = element_text(size=1),
        strip.background = element_rect(colour="black", fill="grey90"),
        strip.text = element_text(size = 10, vjust=1, hjust=0.5, margin=margin(3,0,3,0,"pt"))) +
  scale_fill_futurama()
Jennifer Jahncke
Jennifer Jahncke
Postdoctoral Scholar

I am a neuroscientist studying how brain cells form and maintain connections.

Related