Download notebook (.ipynb)

Unemployment in the US since 1967#

from datetime import datetime

import pandas as pd

from lets_plot import *
LetsPlot.setup_html()
presidential_df = pd.read_csv("https://raw.githubusercontent.com/JetBrains/lets-plot-docs/master/data/presidential.csv", parse_dates=["start", "end"])
economics_df = pd.read_csv("https://raw.githubusercontent.com/JetBrains/lets-plot-docs/master/data/economics.csv", parse_dates=["date"])
breaks = [2.5, 5, 10]

ggplot() + \
    geom_band(aes(xmin="start", xmax="end", fill="party"), data=presidential_df, \
              size=0, alpha=.4) + \
    geom_label(aes("start", label="name", color="party"), 
               data=presidential_df, 
               y=4000, alpha=0.6, 
               angle=90,
               vjust=1, show_legend=False) + \
    geom_line(aes("date", "unemploy"), data=economics_df) + \
    scale_y_continuous(r"Unemployment (x\(10^3\))", trans='log10', \
                       breaks=[b*10**3 for b in breaks], labels=[str(b) for b in breaks]) + \
    scale_fill_discrete(name="") + \
    coord_cartesian(xlim=[datetime(1966, 1, 1), datetime(2016, 1, 1)]) + \
    xlab("Year") + \
    guides(fill=guide_legend(override_aes={'alpha': 0.4, 'color': 'paper'})) + \
    ggsize(1000, 400) + \
    ggtitle("Unemployment in the US", "1967 to 2015") + \
    theme(legend_position='top', plot_title=element_text(size=18, face='bold'))