Column

Alluvial Chart for Background of the Convicted

Geographic Map of Executions per State, 1976 - Present

Column

Death Penalty Policy vs. Murder Rate per State

Murder Rate Pre/Post Abolishment of Death Penalty

---
title: "US Incarceration / Death Penalty Data Story"
author: "Alessandra Chieff and Melanie Valentin"
output: 
  flexdashboard::flex_dashboard:
    orientation: columns
    #social: menu
    source_code: embed
---

```{r setup, include=FALSE}
library(highcharter)
library(dplyr)
library(viridisLite)
library(treemap)
library(flexdashboard)
library(magrittr)
library(dplyr)
library(tidyr)
library(devtools)
library(ggplot2)
library(ggrepel)
library(aplpack)
library(fmsb)
library(NMF)
library(GGally)
library(treemap)
library(maps)
library(mapproj)
library(plyr)
library(alluvial)

path = ("C:/Users/Class2018/Documents/EM 622/Final")
setwd(path)
data = read.csv("database.csv")
data$Year = substring(data$Date,7,10)

```

Column {data-width=500}
-----------------------------------------------------------------------

### Alluvial Chart for Background of the Convicted

```{r}
alluvial_data = subset(data[,c(4,5,8,9)])

levels(alluvial_data$Victim.Sex) = c(levels(alluvial_data$Victim.Sex), "Both")
levels(alluvial_data$Victim.Race) = c(levels(alluvial_data$Victim.Race), "Multiple")

alluvial_data$Victim.Sex[alluvial_data$Victim.Sex != c("Male", "Female")] = "Both"
alluvial_data$Victim.Race[alluvial_data$Victim.Race != c("White", "Black", "Latino", "Native American", "Asian")] = "Multiple"
alluvial_data = count(alluvial_data)

alluvial(alluvial_data[,1:4], freq=alluvial_data$freq,
         col = ifelse(alluvial_data$Race == "Black", "black", "grey"),
         border = ifelse(alluvial_data$Race == "Black", "black", "grey"),
         alpha = 0.9,
         layer = alluvial_data$Race != "Black")
mtext("Criminal/Victim Combinations of Sex/Race in Death Penalty Cases", line=3, font=2)


 
```


### Geographic Map of Executions per State, 1976 - Present

```{r}
state_data = data.frame(table(data$State))
colnames(state_data) = c("State", "Executions")
zero_states = data.frame(State = c("Arkansas",
                                   "Hawaii",
                                   "Illinois",
                                   "Indiana",
                                   "Kansas",
                                   "Maine",
                                   "Maryland",
                                   "Michigan",
                                   "Minnesota",
                                   "Mississippi",
                                   "Nevada",
                                   "New Hampshire",
                                   "New Jersey",
                                   "New York",
                                   "North Carolina",
                                   "Rhode Island",
                                   "Vermont",
                                   "Virginia",
                                   "West Virginia",
                                   "Wisconsin"
), Executions = NA)

state_data = rbind(state_data, zero_states)
levels(state_data$State) = tolower(levels(state_data$State))

states_map = map_data("state")
geo_map = merge(states_map, state_data, by.x="region", by.y="State")
geo_map = arrange(geo_map, group, order)
ggplot(geo_map, aes(x=long, y=lat, group=group, fill=Executions)) +
  geom_polygon(colour="black") +
  coord_map("polyconic") +
  ggtitle("Geographic Heat Map of Executions in the US from 1976 - Present")

theme_clean = function(base_size = 12) {
  require(grid)
  theme_grey(base_size) %+replace%theme(
    axis.title = element_blank(),
    axis.text = element_blank(),
    panel.background = element_blank(),
    panel.grid = element_blank(),
    axis.ticks.length = unit(0,"cm"),
    axis.text.x = element_text(margin=unit(0,"cm")),
    axis.text.y = element_text(margin=unit(0,"cm")),
    panel.spacing = unit(0, "lines"),
    plot.margin = unit(c(0,0,0,0), "lines"),
    complete = TRUE)
}

```

Column {.tabset data-width=500}
-----------------------------------------------------------------------

### Death Penalty Policy vs. Murder Rate per State
```{r}
data3 = read.csv("murderrate.csv")

data3 <- data.frame(state = data3$STATE, rate = data3$RATE, Category = data3$PENALTY)
ggplot(data3, aes(x = reorder(state, -rate),y = rate, fill=Category)) + geom_bar(stat = "identity") + coord_flip() + ggtitle("Executions per State in 2016") + ylab("Murder Rates per 100,000 People") + xlab("State")
```

### Murder Rate Pre/Post Abolishment of Death Penalty
```{r}
data2 = read.csv("prepost.csv")
data2 <- data.frame(state = data2$YEAR, Pre = data2$Pre.Abolishment, Post = data2$Post.Abolishment)
data2 <- gather(data2, Abolishment, Value, Post:Pre)
ggplot(data2, aes(x = state,y = Value, fill=Abolishment)) + geom_bar(stat = "identity", position = "dodge") + coord_flip() + ggtitle("Average Murder Rates Pre/Post Death Penalty Abolishment") + ylab("Murder Rates per 100,000 People") + xlab("State")

```