Introduction
In this demo, I will make an economist style plot from a multiple country regression. For my data I will use country level data from the seminal paper “Natural Resource Abundance and Economic Growth” by Sachs and Warner, which argued that the presence of natural resources in a country caused lower growth.
Setup
I install the package tidverse and I create the pand SAW (Sachs and Warner).
library(tidyverse)
SAW <- read_csv('SAW.csv')
SAW$country = str_remove_all(SAW$country, '\"')
head(SAW)
Building the Plot
Here’s the most ba
p1 <- ggplot(SAW, mapping = aes(x=sxp, y=gea7090)) + geom_point(size=2) + scale_x_continuous(limits = c(0,.55))
p1

Adding a trendline to the data makes the relationship more clear. Of course, many other factors influence GDP growth, which I did not control for, so this regression says little about real causal relationships.
p2 <- p1 + geom_smooth(method = "lm", formula = y ~ x, level = .95, fullrange=TRUE) + theme_bw()
p2

Let’s label a few of these anonymous points.
label_these <- c("JAPAN","MALAYSIA","ICELAND","FIJI","GAMIA","MAURITANIA","NICARAGUA","GUYANA","VENEZUELA","ARGENTINA","INDONESIA")
p3 <- p2 + geom_text(data=filter(SAW, country %in% label_these), mapping = aes(label=country), check_overlap = FALSE, nudge_x = .07)
p3

Looking good but it could use some style. Let’s apply the econmist style to the plot.
library(ggthemes)
p3 + theme_economist() + labs(title="Natural Resources and Growth", x="Share of Primary Products in Exports", y="Average Yearly GDP Growth 1970-1990", color="Log of GDP in 1970")

With this lovely plot, my demo is complete.
LS0tDQp0aXRsZTogIkRhdGEgVml6dWFsaXphdGlvbjogVGhlIE5hdHVyYWwgUmVzb3VyY2UgQ3Vyc2UiDQphdXRob3I6ICJUaW0gTGlwdHJvdCINCm91dHB1dDoNCiAgaHRtbF9ub3RlYm9vazoNCiAgICBjb2RlX2ZvbGRpbmc6IHNob3cNCiAgICB0b2M6IG5vDQogIHBkZl9kb2N1bWVudDoNCiAgICB0b2M6IHllcw0KICBodG1sX2RvY3VtZW50Og0KICAgIGRmX3ByaW50OiBwYWdlZA0KICAgIHRvYzogeWVzDQotLS0NCg0KYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9DQprbml0cjo6b3B0c19jaHVuayRzZXQoZWNobyA9IFRSVUUsbWVzc2FnZSA9IEZBTFNFLHdhcm5pbmcgPSBGQUxTRSkNCmBgYA0KDQojIyBJbnRyb2R1Y3Rpb24NCg0KSW4gdGhpcyBkZW1vLCBJIHdpbGwgbWFrZSBhbiBlY29ub21pc3Qgc3R5bGUgcGxvdCBmcm9tIGEgbXVsdGlwbGUgY291bnRyeSByZWdyZXNzaW9uLiBGb3IgbXkgZGF0YSBJIHdpbGwgdXNlIGNvdW50cnkgbGV2ZWwgZGF0YSBmcm9tIHRoZSBzZW1pbmFsIHBhcGVyICJOYXR1cmFsIFJlc291cmNlIEFidW5kYW5jZSBhbmQgRWNvbm9taWMgR3Jvd3RoIiBieSBTYWNocyBhbmQgV2FybmVyLCB3aGljaCBhcmd1ZWQgdGhhdCB0aGUgcHJlc2VuY2Ugb2YgbmF0dXJhbCByZXNvdXJjZXMgaW4gYSBjb3VudHJ5IGNhdXNlZCBsb3dlciBncm93dGguDQoNCiMjIyBTZXR1cA0KDQpJIGluc3RhbGwgdGhlIHBhY2thZ2UgdGlkdmVyc2UgYW5kIEkgY3JlYXRlIHRoZSBwYW5kIFNBVyAoU2FjaHMgYW5kIFdhcm5lcikuDQoNCmBgYHtyfQ0KbGlicmFyeSh0aWR5dmVyc2UpDQoNClNBVyA8LSByZWFkX2NzdignU0FXLmNzdicpDQoNClNBVyRjb3VudHJ5ID0gc3RyX3JlbW92ZV9hbGwoU0FXJGNvdW50cnksICdcIicpIA0KaGVhZChTQVcpDQpgYGANCg0KDQoNCiMjIEJ1aWxkaW5nIHRoZSBQbG90DQoNCkhlcmUncyB0aGUgbW9zdCBiYQ0KDQpgYGB7ciwgZWNobz1UUlVFfQ0KcDEgPC0gZ2dwbG90KFNBVywgbWFwcGluZyA9IGFlcyh4PXN4cCwgeT1nZWE3MDkwKSkgKyBnZW9tX3BvaW50KHNpemU9MikgKyBzY2FsZV94X2NvbnRpbnVvdXMobGltaXRzID0gYygwLC41NSkpDQoNCnAxDQpgYGANCg0KQWRkaW5nIGEgdHJlbmRsaW5lIHRvIHRoZSBkYXRhIG1ha2VzIHRoZSByZWxhdGlvbnNoaXAgbW9yZSBjbGVhci4gT2YgY291cnNlLCBtYW55IG90aGVyIGZhY3RvcnMgaW5mbHVlbmNlIEdEUCBncm93dGgsIHdoaWNoIEkgZGlkIG5vdCBjb250cm9sIGZvciwgc28gdGhpcyByZWdyZXNzaW9uIHNheXMgbGl0dGxlIGFib3V0IHJlYWwgY2F1c2FsIHJlbGF0aW9uc2hpcHMuDQoNCmBgYHtyLCBlY2hvPVRSVUV9DQpwMiA8LSBwMSArIGdlb21fc21vb3RoKG1ldGhvZCA9ICJsbSIsIGZvcm11bGEgPSB5IH4geCwgbGV2ZWwgPSAuOTUsIGZ1bGxyYW5nZT1UUlVFKSArIHRoZW1lX2J3KCkNCg0KcDINCmBgYA0KDQpMZXQncyBsYWJlbCBhIGZldyBvZiB0aGVzZSBhbm9ueW1vdXMgcG9pbnRzLg0KDQpgYGB7ciwgZWNobz1UUlVFfQ0KbGFiZWxfdGhlc2UgPC0gYygiSkFQQU4iLCJNQUxBWVNJQSIsIklDRUxBTkQiLCJGSUpJIiwiR0FNSUEiLCJNQVVSSVRBTklBIiwiTklDQVJBR1VBIiwiR1VZQU5BIiwiVkVORVpVRUxBIiwiQVJHRU5USU5BIiwiSU5ET05FU0lBIikNCiAgDQpwMyA8LSBwMiArIGdlb21fdGV4dChkYXRhPWZpbHRlcihTQVcsIGNvdW50cnkgJWluJSBsYWJlbF90aGVzZSksIG1hcHBpbmcgPSBhZXMobGFiZWw9Y291bnRyeSksICBjaGVja19vdmVybGFwID0gRkFMU0UsIG51ZGdlX3ggPSAuMDcpDQoNCnAzDQoNCmBgYA0KDQpMb29raW5nIGdvb2QgYnV0IGl0IGNvdWxkIHVzZSBzb21lIHN0eWxlLiBMZXQncyBhcHBseSB0aGUgZWNvbm1pc3Qgc3R5bGUgdG8gdGhlIHBsb3QuDQoNCg0KYGBge3IsIGVjaG89VFJVRX0NCg0KbGlicmFyeShnZ3RoZW1lcykNCg0KcDMgKyB0aGVtZV9lY29ub21pc3QoKSArIGxhYnModGl0bGU9Ik5hdHVyYWwgUmVzb3VyY2VzIGFuZCBHcm93dGgiLCB4PSJTaGFyZSBvZiBQcmltYXJ5IFByb2R1Y3RzIGluIEV4cG9ydHMiLCB5PSJBdmVyYWdlIFllYXJseSBHRFAgR3Jvd3RoIDE5NzAtMTk5MCIsIGNvbG9yPSJMb2cgb2YgR0RQIGluIDE5NzAiKQ0KDQpgYGANCg0KV2l0aCB0aGlzIGxvdmVseSBwbG90LCBteSBkZW1vIGlzIGNvbXBsZXRlLg==