Activism in the U.S. via Protests 2017-2020

Final Projects, Visualization
One of the data visualizations created for this project: visualization shows a line chart of number of protests in the U.S. the last four years with call-out of significant events


The year 2020 has been a particularly tumultuous one, with the global health crisis that began nearly a year ago continuing to create vicious cycles of economic turmoils, health concerns, and other unprecedented side-effects. In the United States, perhaps another keyword representative of 2020 aside from Covid-19 may be activism. According to the Digital 2020 report by we are social, as of January 2020, there were over 3.8 billion users of social media networks, more than half of the world’s population. The Although activism is not a new phenomena, increasing presence of connective media technology allowed for higher visibility and therefore accessibility to myriad of protests both on and off-line. News about social injustices circulated fast and online communication forums allowed for easier mobilization of different masses. In fact, in a study by Pew Research center, “over half of social media users ages 18 to 29 (54%) say they have used these sites in the past month to look for information about rallies or protests happening in their area” (Auxier, 2020). In conjunction with continued Black Lives Matter movement, the presidential election, and Covid-19 related legislations (or lack of), various protests arose across different states and for diverse causes.

I have briefly explored U.S.’ protest landscape for an earlier project which included visualizations around number of protests across states and point-in-time comparisons. As the end of 2020 nears and with the November presidential election sparking discourse across topics, an exploration, analysis, and visualization of the updated protest dataset could present interesting findings around trends in activism. With news about social injustices traveling fast and vastly via technology, is there actually an upward trend in terms of the frequency of protests as many media articles claim the year 2020 to be? Or have there just been an increased exposure–have people simply become more aware of protests without there being any significant increase in numbers of protests? Have certain events actually influenced the frequency and size of off-line activism-if so, what events and to what extent? The visualizations hope to act as a mini-research article for those interested in learning about the activism landscape in the U.S. The following were explored to better answer the questions:

  1. Is there a potential cause-and-effect-like relationship between publicized events and protests?
  2. Has the activist landscape in the U.S. changed during the 45th president’s presidency?
  3. How about in the most recent year with Covid-19, BLM, and the election? If yes, what are people protesting about and are they for or against respective causes?

Methodology-Data and Visualization

The core dataset used was from (Count Love protest dataset) that quantified protests in the U.S. from 2017. The dataset contains more than 30,000+ events and includes information around the time of the protest, location, number of participants, and reason for protest. Having downloaded the latest version of the csv file, the dataset included additional rows for protests that occurred in the past three months. The data was cleaned initially via OpenRefine, an open-source easy-data cleaning tool that can ingest various formats of data. A column was added splitting out just the state abbreviations so that Tableau can automatically ingest it as a geo-location column. An additional column ‘For Against’ was created based on the ‘Protest Causes’ column to easily slice the data in Tableau to check for distribution of for vs. against. Column ‘Protest Category’ was created based on the original ‘Tags’ column to standardize and group the protest reason to the highest level available. Minor tweaks and corrections were made across columns regarding trailing spaces, inconsistent capitalization, and typos.

Screenshot showing the data-cleaning process for the Count Love dataset on Open Refine

To normalize the number of attendees data in the Count Love dataset, I downloaded the state-level population data from the 2018 American Community Survey (ACS), run by the U.S. Census Bureau and publicly available on their website. ACS data was then cleaned in Google Sheets. A mapping column for state abbreviations was manually added for an easy join onto the Count Love dataset. All other columns were removed aside from the mapping column and population. As there are no huge fluctuations in state populations in the U.S., I assumed that the 2018 survey results (which takes into account five-years estimates with small margin of error) can be taken as the population denominator for the years 2017-2020. Annotations were gathered from research. Data related to Covid-19 lockdown legislations were taken from a website ‘time and date’ that summarized all state-wide government issued Covid-19 orders. Data related to Black Lives Matter and police brutality were collected from a New York Times article and the Pew Research Center survey article. Data related to gun control movement were collected from another New York Times article. Data related to abortion rights was taken from a Vox article and white nationalism data was gathered from a CNN Article.

Tableau Public was used to visualize the dataset and ultimately tell the story of protests in the U.S. the past four years. First, both the cleaned Count Love data and the ACS data files were connected as datasources and linked together by the states abbreviation columns so that the population column could be mapped onto the protest data. Once done, a calculated measure, ‘Attendees as % pop,’ was added to create a normalized view of protests across states. The column was, as the heading reads, [number of attendees at a given protest] / [respective state population]. Limitations existed in that the metric assumes that all attendees are from in-state, which probably is not always true given that there are many annual and large-scale protests that calls for participants across nation (i.e. Women’s March).

A screenshot of Tableau’s UI after connecting to both the Count Love and ACS datasets and linking them via the state columns

The following visualizations were created as sheets prior to combining them into dashboard (where applicable) and ultimately tying them as a story:

  1. Point map of number of protests across states with an underlying population chloropleth map
    • The point map was created using the state field as the geo-location and overlaying points sized by the number of protests by state. In order to allow users to visualize the change and consistencies across time, a filter slider for month-year were added. Animation was avoided over slider to allow users without access to Tableau software to be able to equally visualize the over-time changes. Dark map background created a better contrast with the points, allowing users to focus on the protest data and more easily discern the differences among states. Color was chosen to best account for users with color vision deficiency (CVD) and thus a gradient scale or contrasting usage of red-green were avoided. Red-blue scale was also avoided to refrain from giving users political connotations. To provide more detail to users on population distribution, a map layer was added using Tableau’s built-in 2018 U.S. State population data. The underlying population chloropleth map were set to be in grayscale to minimize clashing and to allow users to still focus on the number of protests over the population.
  2. Chloropleth map of average number of protest attendees at a given month-year as percentage of state population
    • The chloropleth map was also created using the state field as the geo-location. However, the map was colored by the calculated measure ‘Attendees as % pop’ (methodology explained above) to show whether there are differences 1. among states and 2. between this visualization (normalized values) and the point map (actual values). As noted in the visualization, data for DC was excluded as 1. it is not necessarily a state, 2. it greatly skewed the overall map visualization, and 3. being the capital and one of the most frequented sites for nation-wide protests, likely contains many attendees from out-of-state. Same logic stated for the point map justified the usage of month-year filter slider over animation. Values were converted to actual percentages over decimals for better readability in both the hover-over tool tip and the legend. Again, color was chosen to best account for users with color vision deficiency (CVD). Red-blue scale was also avoided to refrain from giving users political connotations. The same teal-color used in the point map was avoided to indicate that the values represented are not equal.
  3. Line chart of total protests in the US overtime (actual and forecasted) with annotations of major events
    • The line chart was created using the total protests aggregated at the country level across month-year. Tableau’s Analysis-Forecast function was used to create a forecast based on actual values for the following year (Dec 2020-2021). Again, color was chosen to best account for users with color vision deficiency (CVD) and was kept uniform with the point map to indicate that the numbers represented are both raw, non-normalized counts of protests. Estimates were highlighted in another color. Annotations were added based on research of current and past events to connect the data to social context.
  4. Bar chart showing protests distribution by causes and for vs. against
    • The chart was created using the protest category and aggregating the number of protests to the filtered year. The created column ‘For Against’ was added as a color variable to indicate the stance of which the protests took and represent the distribution across protest categories. Bar chart was preferred over the column chart due to the horizontal layout of Tableau Story. As month-year views did not show meaningful differences due to fluctuating numbers of protests, yearly view was selected. Again, color was chosen to best account for users with color vision deficiency (CVD). Red-blue scale was also avoided to refrain from giving users political connotations.
  5. Multiple area charts of protests by granular causes associated with election topics, racial topics, and Covid-19
    • An area chart and line chart containing all causes related to the election, racial justice, and the pandemic proved to be too cluttered and hard to decipher due to multitude of colors. Thus, I created separate custom filter sets for each focus area to create a “multiple-are chart” using Tableau’s dashboard feature to put into a single story board. Legends and charts were sized equally to best fit the story-view on a laptop screen. Automatic-sizing option was selected in Story to allow for flexibility in user-access to visualizations. Annotations were added based on research of current and past events to put the visualization into context. Again, color was chosen to best account for users with color vision deficiency (CVD), although the numerousness of the protest causes related to election topics made it difficult to cherrypick non-ambiguous colors. The Tableau functionality for custom dates were not available-dates ideally would have worked best in abbreviated MM-YY format given the size of the story page, but had to be left at the automatic month-year ‘MMMM-YYYY’ format.

The visualizations were then combined as a story–a dark background helped distinguish the title from the visualizations. White text boxes were used to aid the narrative around activism in the U.S. and steer users towards certain insights. Findings were incorporated into aforementioned text boxes.

Methodology-UX Research

Usability testing were designed and executed to help improve the resulting visualization. I ran a poll on Instagram seeking participants interested in activism and recruited three participants for the usability testing of my visualization. As my project’s goal is to offer users interested in societal news an easy way of understanding the landscape of activism and trends in recent years, I was selective in recruiting participants. Among the volunteers, I chose those who 1. have varying interest in U.S. political landscape and 2. are interested in activism whether they follow the news or are active participants. Two users have occupation in politics and one has personal high interest in activism. The three users all reside in different states and are millennials with access to social networking sites and thus previous exposure to political news and data visualization.

Usability testing was executed using Zoom and with agreement–the public Tableau story link was shared prior to the meeting and users were asked to spend some time familiarizing themselves with the story prior to the meeting (ideally for about 5-10 minutes). Users were asked to verbally walk-through their process of interacting with the dashboards. Usability assessment questions were asked around the visualization: color, amount of data per dashboard, intuitiveness of the interaction elements, quality of information provided, and lingering questions and other feedback around the design of the visualization. Although the questions were majorly conversational and differed case-by-case, the three common questions asked were:

  1. Give me a walkthrough of your interaction process
  2. Were there any interesting insights drawn or observed?
  3. Any comments on the visual aspects of the charts?

After consolidating feedback, there were some consensus across users visualized below:

Subsequent edits were made following usability testing based on feedback:

  1. Borders in point map was removed to allow for a smoother effect
  2. Decimals were increased to be shown up to three spaces instead of two in the chloropleth map to avoid having multiple states colored but with 0.00% shown in tool tips
  3. Bar sizes in the for vs. against chart was increased to enhance readability and to remove large white-space in story view
  4. Additional annotations around white supremacist protests and abortion rights were added for points users mentioned were interesting and note-worthy

Additional revisions could be made to the project: if the version issue is resolved, the visualization would have benefited from a more concise month-year date format to be more readable at a glance. A scavenging of data for the number of in-state and out-of-state attendees could prove helpful in accurately showing state comparisons regarding their level of activism. Additional data collection around protests regarding the Covid-19 vaccinations and healthcare in association to Covid-19 costs could have proved interesting for users to understand the effect of the pandemic on different social causes.

Result and Findings

The resulting Tableau story could be found via this link. A slideshow of the story without interactive elements is shown below.

Looking at the maps of protests (normalized and actual) alongside the forecast for the upcoming year based on four years worth of data, it can be concluded that there were no significant increase in the actual frequency and the size of the protests. Both the rather consistent range of attendees at 0~0.2% of state population and protests averaging at around 1,000 annually indicate that perhaps the peaks of high activity are the outliers. That is, despite the abundance of news around activism in 2020, it could simply be that people are more aware of protests due to connective media, publications, and increased time spent at home. Indeed, with trigger events such as shootings, election debate, and passing of legislations, certain types of protest gained momentum. However, most of the time such effect only lasted for about a month, and protests quickly dropped back to their normal frequency.

Although the peaks may be outliers, they certainly do point to the conclusion that certain events heavily influence and spur activism. The sharp increase of protests for racial justice in the recent year appears to be related to multiple unjust shootings including that of Breonna Taylor in March 2020, and other incidents of police brutality towards BIPOC publicized heavily in the last two quarters. The high school shooting in February 2018 is most likely a trigger for the peaking protest for gun control in March 2018. The issuing of stay-at-home order starting March 2020 and the acceleration of Covid-19 related legislations and deaths from March through May likely have close ties to the high number of protests against pandemic intervention in 2020. Although it is hard to determine whether the annotated events single-handedly caused the surge of activism related to the topic, it can be inferred that there is a strong correlation.

As expected, the 2020 protest landscape in the U.S. did revolve around the three major topics of Covid-19, Black Lives Matter (for racial justice), and the election. As much as the 45th president’s presidency is thought of as one that surfaced heated debate and physical clashing around various social issues, it appears that there has not been a significant change in the activist landscape in the U.S. Although it could definitely be that nothing has changed, another reason could be that protests no longer need to take place in physical gatherings. There probably are daily “protests” occurring on the Internet, whether they take form as conversations in social forums, in individual ‘vlogs’ on YouTube, or through live-streaming sessions on Instagram. Although this exploration of the Count Love dataset argues otherwise, there actually could be a significant increase in activism–just not represented by physical protests.

Future Recommendation

Briefly discussed in the Results section, a future exploration of the activist landscape in the U.S. should attempt to measure new forms of protests taking place on-line and semi-offline via video calls or livestreams. There are interesting relationships between social media, exposure to certain news, and protests that can emerge from a deeper dive into different forms of activism and across causes. An addition of previous years’ data can also help in assessing whether there truly has been an increase in protests compared to previous presidencies. Being that protests and discourse took place since the beginning of human history leading to formation of different culture, clans, etc., it would be interesting to find whether the advent of technology and increasing human connectedness have any significant effect on activist trends.


Auxier, B. (2020, August 28). Activism on social media varies by race and ethnicity, age, political party. Retrieved December 07, 2020, from

Buchanan, L., Bui, Q., & Patel, J. (2020, July 03). Black Lives Matter May Be the Largest Movement in U.S. History. Retrieved December 07, 2020, from

Bureau, U. (2018). Data Profiles. Retrieved December 07, 2020, from

First Day of Stay at Home Order in the United States. (n.d.). Retrieved December 07, 2020, from

Lemieux, S. (2019, May 15). Yes, Roe really is in trouble. Retrieved December 07, 2020, from

Loon, A., Oxford, L., Currey, H., & Robin, A. (2020, February 04). Digital 2020: 3.8 billion people use social media. Retrieved December 07, 2020, from

The New York Times. (2018, March 24). March for Our Lives Highlights: Students Protesting Guns Say ‘Enough Is Enough’. Retrieved December 07, 2020, from

Sayers, D. (2017, August 13). Virginia governor to white nationalists: ‘Go home … shame on you’. Retrieved December 07, 2020, from