Subscribe to our Blog

Visualizing Arkansas traffic fatalities

Nathan here again with another guest post. I recently started a master's program at UALR in information science, so I've been following several blogs on statistical programming and visualization. One of the best sites I've found is R-bloggers, which is dedicated to the popular statistical programming language R.

A recent post on R-bloggers by Lucas Puente on mapping traffic fatalities in the US caught my eye. While in private practice, I helped several Arkansas counties through the election process of voting from dry to wet. One of the often-debated issues in those races was whether the highways are safer in dry counties or wet counties. Some people believe roads are safer when alcohol is less available; other people believe that less availability means more stockpiling and more driving drunk over long distances to liquor stores after knocking a few back.

So, I decided to adapt Mr. Puente's R program to create an Arkansas-centric map. In the R-bloggers tradition, I'll explain the code and then present the results.

Part I: The Data

The data comes from two separate sources. First, the traffic fatality data comes from National Highway and Transportation Safety Administration open records, available at As instructed by Mr. Puente, I downloaded the file and unzipped it. 

Next, I had to get the wet/dry status of each Arkansas county. To do this, I created my own CSV (comma-separated value) file from the Arkansas Department of Finance and Administration's wet/dry status page. I uploaded it to a Github public repository so others can use it.

library(foreign) # required to use read.dbf method
accidents <- read.dbf("accident.dbf")
wet_status <- read.csv(file="Ark_counties_wet_dry_status.csv")

Part II: Subsetting and Summarizing the Data

As Mr. Puente did, we're only going to use a portion of the NHTSA's information. However, instead of using the lower 48 states, we're just going to use data for Arkansas. We'll then sum the number of fatalities for all wrecks by county.

ark_accidents <- subset(accidents, STATE == 5)
ark_summary_all <- aggregate(FATALS ~ COUNTY, ark_accidents, sum) 

 Next, we'll create a vector from the wreck subset to identify just the drunk driving wrecks. We'll use that vector to sum drunk driving fatalities per county, then calculate a percentage of wrecks involving drunk driving fatalities for each county.

ark_accidents_drunk <- ark_accidents$DRUNK_DR > 0
ark_summary_drunk <- aggregate(FATALS ~ COUNTY, ark_accidents, sum, subset=ark_accidents_drunk)
rk_summary <- merge(ark_summary_all, ark_summary_drunk, by="COUNTY", all=TRUE)
ark_summary$percent_drunk <- ark_summary$FATALS.y / ark_summary$FATALS.x * 100

We'll merge that data with the wet/dry status of each county. So we can color the scale differently for wet counties and dry counties, we'll multiply the percentage by -1 for wet counties.

ark_summary <- merge(ark_summary, wet_status, by.x="COUNTY", by.y="FIPS")
ark_summary$percent_drunk <- ifelse(ark_summary$wet, ark_summary$percent_drunk * -1, ark_summary$percent_drunk)

Finally, we'll get the midpoint of the number of drunk drivers, which we'll use to color parts of our map later.

mid <- (which.max(accidents$DRUNK_DR) - which.min(accidents$DRUNK_DR)) / 2

Part III: Preparing the Map Data

The functions Mr. Puente describes in his tutorial have nice features that allow you to subset county and state map data by state.

county_map_data <- map_data("county", region = "arkansas")
state_map <- map_data("state", region = "arkansas")

I merged the county-level information with the wet-dry status. Then (and this is important), I reordered the path information in the county file. Otherwise the plotting function draws extra lines between counties.

county_map_data <- merge(county_map_data, ark_summary, by.x="subregion", by.y="county")
library(plyr) # necessary for arrange function
county_map_data <- arrange(county_map_data, order) # required to draw lines properly

Part IV: Creating the Map

The goal with the visualization was to show the wet/dry status of counties having drunk driving fatalities. So, the percent_drunk column we created earlier, which contains percentages from -100 to 100, serves as the fill. We'll define a continuous scale in different colors to differentiate between wrecks occurring in wet counties and dry counties; by choosing white as the midpoint, we'll be able to see which counties had no drunk driving wrecks in 2015, and it will also give us a gradient that shows some idea of how many wrecks occurred.

map<-ggplot() + 
# Add county borders:
geom_polygon(data=county_map_data, aes(x=long,y=lat,group=group, fill=percent_drunk), colour = alpha("grey", 1/4), size = 0.8) +
scale_fill_gradient2(name="Percentage of\nDrunk Drivers", midpoint=0, low="#5ab4ac", mid="white", high="#d8b365", na.value = "white", breaks=c(-100,0,100), labels=c("100% (wet county)", "No drunk driving\nfatalities", "100% (dry county)")) +
# Add state borders:
geom_polygon(data = state_map, aes(x=long,y=lat,group=group), colour = "grey", fill = NA) +

The next goal was to represent the number of fatalities in each wreck by the size of the point. The NHTSA dataset also contains an interesting data point for the number of drunk drivers involved, which we'll use for the color of the point. It appears that one wreck in Pulaski County involved 3 drunk drivers and killed several people.

# Add points (one per fatality):
geom_point(data=ark_accidents, aes(x=LONGITUD, y=LATITUDE, color=DRUNK_DR, size=FATALS), alpha=0.35) +
scale_color_gradient2(name="Number of\nDrunk Drivers\nInvolved", midpoint=mid, low="lightgoldenrod4", mid="firebrick1", high="blue3", na.value="yellow") +
scale_size(name="Number of \nFatalities", range=c(3,8)) +

Finally, we'll use Mr. Puente's other adjustments for cleaning up the map, and then plot it.

#Adjust the map projection
coord_map("albers",lat0=39, lat1=45) +

#Add a title:
ggtitle("Arkansas Traffic Fatalities in 2015") +

#Adjust the theme:
theme_classic() +
theme(panel.border = element_blank(),
axis.text = element_blank(),
line = element_blank(),
axis.title = element_blank(),
plot.title = element_text(size=40, face="bold"))

The result is a detailed graphic that shows in a glance that 21 of 75 counties had no drunk driving fatalities in 2015. I'd say that Jefferson County is the place you were most likely to die in a drunk-driving fatality in 2015. If you know anything about Arkansas highways, you can definitely see the outlines of I-30, I-40 west of Little Rock, and I-49 from Ft. Smith to Fayetteville. 

2015 Arkansas traffic fatalities. Graphic ©2016 Nathan Chaney.

What do you take away from this visualization?

The changing landscape of local option elections


After Prohibition ended in the early 1930s, Arkansas passed a couple of initiated acts that set up the framework for counties to be wet or dry. We've plugged along with more or less of the same process for generations. You gather a certain number of signatures (now 38% of registered voters) and turn them in at least 90 days before the general election every other November. If you turn in enough total signatures to qualify for the ballot, but not enough signatures are valid, you get a few extra days to collect more signatures.

Most initiative drives wind up hiring private firms to collect the thousands of signatures necessary to make the ballot, which is often funded by a mixture of donations from private individuals and retailers with a local physical presence.

Up until 2013, there were no extra requirements for paid canvassers; the Arkansas Constitution merely requires that someone be at least 18 years old to gather signatures. State law requires that the canvasser must witness a voter signing the petition, and a notary public must witness and verify the canvasser's signature on the petition. 

If the measure passes during the November election, your newly-wet county goes through a permitting process to determine who gets to open liquor stores in the county. The number of liquor stores is determined by the total population in the county as of the last census: 1 store for every 5,000 residents.

Applicants must pay a fee of $2,000, and the ABC holds a drawing to determine which applicants get the permits. Applicants who aren't selected in the drawing have half the fee refunded.

Changing Laws

Several new laws passed in the last two years changed the process. The first change was a new paid canvasser law that requires registration of paid canvassers with the Secretary of State. The registration process requires a certain amount of training for each paid canvasser. A Pulaski County Circuit Judge struck down the new law as violating the freedom of petition provision in the Arkansas Constitution. That case is currently on appeal, and a decision is expected within the next 2–4 weeks. The stricken provision only applied to the general statewide paid canvasser law, not the virtually identical law for local option elections. I expect that if Arkansas Supreme Court declares the general paid canvasser law unconstitutional, the same result would befall the local option paid canvasser law.

Another change occurred to the Arkansas Constitution in 2014. Thankfully, it only applies to statewide elections, and requires that any insufficient petition must contain at least 75% of the signatures required to be eligible for collection of more signatures during the cure period. The practical effect will be that petition drives will need to start earlier and not rely on the cure period to collect additional signatures. This new law could affect the viability of a statewide vote in 2016 to eliminate dry counties, which failed in the November 2014 election.

Several bills have been introduced in the current legislative session that would have an effect on any successful local option election. If the bills pass in time, they will likely affect both Columbia and Saline Counties, which voted wet in the 2014 general election.

HB 1024 would change the way liquor store permits are allocated. As indicated above, the law currently allows one liquor store for every 5,000 residents in the county. The new law would change that ratio to 1 store for every 7,500 people. In the 2010 census, Saline County had about 107,000 people, and Columbia County had about 24,500 people. If the law passes, Saline County will get 14 stores instead of 21, and Columbia County will get 3 stores instead of 4. Supporters of the bill say the current figure is too low and point to Benton County, where only half the available permits are being used. Opponents of the bill believe the effect would be to limit competition and increase prices to the end consumer.

SB 151 would increase the application fee from $2,000 to $25,000. Successful applicants would receive a refund of $21,000, and unsuccessful applicants would receive a refund of $23,000. Proponents argue the bill is designed to prevent family members, business partners, and friends from stacking the application process. Opponents believe the bill would prevent many people from applying for a permit in the first place.

We'll keep updating the blog as bills are introduced that could affect local option elections. Be sure and follow us to stay current on Arkansas local option law.

Columbia County votes wet after 71 years

We're proud of client Vote for Growth in Columbia County, whose local option campaign resulted in a 56%-44% win on November 4. As in 2010, the wet day foreshadowed the wet vote. Columbia County joins Saline County as newly-wet counties, bringing the total number of wet counties in Arkansas to 40. 35 counties remain dry.

The Arkansas Times has a report on the alcohol elections that took place in Arkansas earlier this week, including the failure of the statewide ballot initiative to make the entire state wet. The measure failed in all but 6 counties.

I've helped several counties with varying aspects of the local option process over the last five years, including Boone, Clark, Columbia, and Sharp Counties. Benton and Madison Counties voted wet in 2012 with Walmart support.

A local option election requires collecting signatures from 38% of registered voters in the county for submission to the county clerk. I've previously written an overview of the process, and we have several blog posts on local options/Vote for Growth and general election law for additional reading.

Today is Election Day – Please Vote!

“A man without a vote is a man without protection.” — Lyndon B. Johnson.

There are a ton of interesting and important races on the ballot this election cycle. We have one of two U.S. Senate seats up for grabs today, and the winner will head to the U.S. Capitol (pictured above).

Meanwhile, in Arkansas, the constitutional offices are closely contested. Governor, Lt. Governor, Attorney General, Secretary of State, and many others have seen tight polling over the last few weeks. Quite a few House seats are close, including one sought by a long-time friend, Jeremy Ross.

Many state races, including our local house race between incumbent Richard Womack and challenger Damon Daniels, have turned into a de facto referendum on President Obama's policies — particularly the Affordable Care Act. It will be interesting to see how Arkansas handles Medicaid expansion, since Arkansas is one of few southern states to see a substantial drop in the percentage of uninsured. Here in Clark County, we went from 25% uninsured to 13% uninsured — a 12% drop. That's phenomenal. 

There are 5 issues on the statewide ballot, and you can see my thoughts on those elections here. Two counties are holding local option elections (links to results for Columbia and Saline Counties) in an attempt to change from dry to wet. If Issue 4 on the statewide ballot passes, the whole state will go wet. That would certainly be in line with what's happened in Arkansas over the past 6 years on a county-by-county basis; however, it would make Arkansas somewhat of an outlier in the South, since most other Southern states have similar wet/dry laws. I wonder if, as it did in 2010, if today's wet weather foreshadows the results of these wet/dry elections?

Out in Virginia, Hilary's brother, Brad Martin, is running for a seat on the Virginia Beach City Council.

I'll be watching closely as the evening progresses. Here's the link to the Arkansas Secretary of State's website, where voting will be reported once the polls close. Good luck to all the candidates out there.

What races have you most interested in this election?

A lawyer's take on the proposed amendments to the Arkansas Constitution

Today marks the first day of early voting. As a lawyer, I think I have a duty to discuss with my friends the meaning and implications of proposed changes to the law on the ballot.

The short version: NO on Issues 1 and 2; YES on Issues 3, 4, and 5.

Now for the long version. The legislature has the right to propose 3 constitutional amendments every 2 years, as follows:

Proposed Amendment No. 1 (referred by the Legislature):

Proposed Amendment No. 1 provides for review and approval by the Legislature of administrative rulemaking. I am voting no. I think legislative interference with administrative rulemaking takes power away from professionals and makes it part of the political process. This will further slow down the administrative process, which is already slow because it requires notice of proposed rulemaking by the legislative body that in turn permits public comment. Besides, if the Legislature doesn't like the way its laws are interpreted through administrative rulemaking, it means the law needs to be rewritten with greater clarity. I think this is a legislative power grab and, as such, is unwise. I voted no because there is no upside unless you're a legislator.

Proposed Amendment No. 2 (referred by the Legislature):

Proposed Amendment No. 2 sets additional limits on citizens who try to petition for constitutional or legislative amendments. Petitioning is the very first right reserved to the people in the Arkansas Constitution (see below for examples – 2 citizen proposals are on the ballot). It is the way the citizens propose new laws when they don't like what the government is doing. Here, the legislature is trying to limit citizens' access to government. Like Issue No. 1, I believe this is an unwise legislative power grab. I voted no.

Proposed Amendment No. 3 (referred by the Legislature):

Proposed Amendment No. 3 is really several issues in one. It contains much needed campaign finance reform, like prohibiting gifts from lobbyists and restricting legislators from becoming lobbyists for two years after elected service. It creates an independent commission to set salaries of elected constitutional officers (e.g., governor, legislators, secretary of state, judges, etc.). Finally, it extends term limits for the legislature. This amendment was a compromise between several different factions in the legislature. I voted yes because I think campaign finance reform was needed, and after speaking with legislators on both sides of the aisle, I think having legislators with additional institutional knowledge may be beneficial to the Legislature as a whole.

Proposed Amendment No. 4 (by petition of the people):

As indicated above, citizens have petitioned to get two issues on the ballot. The first is Proposed Amendment No. 4, a proposed amendment to the Arkansas Constitution that repeals initiated acts from 1935 and 1942, which established the procedure for making counties wet or dry with respect to alcohol sales. According to USA Today, in 2009 Arkansas was dead last in clarity of alcohol laws. This amendment would eliminate dry counties altogether, but would maintain laws and regulations about alcohol sales and service (e.g., liquor stores at least 1000 feet from churches and schools). I voted yes, even though part of my practice involves helping counties make the transition from dry to wet.

Proposed Issue No. 5 (by petition of the people):

Proposed Issue No. 5 deals with the minimum wage. It will increase from $6.25/hour now to $8.50/hour in 2017. Like the alcohol issue, Arkansas lags behind the rest of the nation on minimum wage. I voted for it, because more money in the pockets of working Arkansans means fewer people on public assistance.

These are just my views. Even if you disagree, please go vote. It's the most important right we have as Americans.