DataViz Makeover 3 - Armed Conflict Location and Event Data

Visualisation makeover for geospatial data

Gabriella Pauline Djojosaputro https://www.linkedin.com/in/gabriellapauline/ (School of Information Systems, Singapore Management University)https://smu.edu.sg
03-16-2021

1. Introduction

In 1 February 2021, the military force in Myanmar launched a coup and arrested the civilian leaders, leaving the country in a dire state. The protests over the coup is one of the largest in Myanmar history, and the military have utilised water cannon, rubber bullets and live ammunition in the effort to stop the protesters (Cuddy 2021).

The country has long been led by a military junta, but a hope for democracy came when the military junta unexpectedly dissolved and appoints civilian ruler, President Then Sein. In 2015, Myanmar held an election, with Aung San Suu Kyi emerging as its de facto leader (Maizland 2021). Ms Suu Kyi is an ignitor for democracy in Myanmar, earning a Nobel Peace Prize while she was under house arrest in 1991 (Cuddy 2021). However, she lost much of her international support after her defence of the military who abuses Muslim Rohingya Minority, and led hundreds of thousands of them fleeing to Bangladesh in 2017 (News 2021).

Using the Armed Conflict Location & Event Data Project (ACLED) - a disaggregated data collection, analysis & crisis mapping platform that aims to bring clarity to crisis - we are going to examine the armed conflicts that occur in Myanmar during the course of 2015 to 2020.

2. Original Visualisation Evaluation

The original visualisation is the South East Asia Armed Conflict Analysis that is hosted in Tableau Public. It reveals the spatio-temporal patterns of armed conflict in selcted South East Asian countries between 2015 and 2020 by using a one-to-one dot-density map where each dot represent an actual event (“Dot Density Maps” 2020), with different colours used for each type of events.

Figure 1. Original Visualisation

The critiques are given in terms of clarity, aesthetics, and interactivity.

2.1 Clarity

To keep:

  1. The data is shown using map to show spatial patterns.

To improve:

  1. Because the visualisation uses opaque circles, When the points overlap, we cannot see what is behind the top layer. This might obscure the density of data, or give the wrong impression that the value is lower some event types just because it is covered. If we only look at Figure 2, it does not seem that there are a lot of violence against civilian in the southern part of Philipines, but Figure 3 shows otherwise. We need to use lower opacity, show the event type one by one, or use other types that can show the values in the viz, such as proportional symbol map, choropleth, or heatmap.
Figure 2. Philippines All Event Types
Figure 3. Philippines Only Violence Against Civilian
  1. There is no way to see the distribution of events by year, even though a time series line chart exists.

  2. The line chart that shows the time series of events is hard to compare because they are stacked vertically. Additionally, the axes are not standardized, so it does not have a fixed point of reference to compare the values.

  3. The time series is not very accurate because if an event type does not occur in a particular year, the record is shown as null rather than zero. This breaks the line into several parts instead of showing a decrease in value.

Figure 4. Null Values in Time Series
  1. Placing the legend of the colors on the right most of the dashboard introduces an unnecessary mental clutter because the users need to look back and forth between the map and the legend, as well as having to memorize what does each color represents. The best practice is to remove legend if possible, and label the data directly (“Legends” 2021).
  2. The title is quite informative, but there is no useful lead-in.
  3. The y-axis for the line chart is shown as “Count of Sheet 1” which can cause confusion. A more descriptive label should be used instead.
  4. The legends for the colours are truncated.

2.2 Aesthetics

To keep:

  1. The use of fonts is consistent and easy to read.
  2. Terrain is not shown in the background map, so it looks cleaner and highlights the data being presented, which is the armed conflict locations.
  3. The colour of less important data are less prominent than the important ones, for example the axis ticks use grey colour.

To improve:

  1. Even when we filter to display only one country, only the data points are not shown but the background map for the other countries are still shown. This is rather distracting, and would be better if we only show the country of interest.

Figure 5. Other Countries Still Shown in the Background 2. There are a lot of different colours being used to represent the different types of events.The choice of colours is too reliant on hue variation instead of value or chroma, hence increasing the visual clutter (Stone 2006). It is better to limit the colour palette to 2 or 3 hues and use variation of colour intensity to make the visualisation more aesthetically pleasing and functional.

2.3 Interactivity

To keep:

  1. Dynamic title is used that will change according to the selected filter.
  2. The event type is used as a highlighter that connects to all visualisation on the dashboard. Both the line chart and the point pattern map will highlight the selected event type.

To improve:

  1. The information shown in the tooltip is not informative. The users are unlikely to be interested with the Event ID, latitude, and longitude. The name of the location, the date or description of event might be more relevant.
Figure 6. Original Visualisation Tooltip
  1. The transition between choosing different country filter is a little bit choppy. We can use animation to make it more smooth.

3. Alternative Graphical Representation

Although the original visualisation contains multiple countrieds in Southeast Asia, I chose to focus on Myanmar because of the recent political situation in Myanmar. The proposed design is shown in Figure 7.

Figure 7. Alternative Graphical Representation Due to the problem of the overlapping points (Clarity #1), I have decided to use another way to represent the spatial data. Initially, I thought of using a proportional symbol map with lower opacity to better represent the data, as the overlapping points will contribute to the size of the symbol. However, this method requires aggregation, and there is a problem in the mapping of the geographical data. There were hundreds of unrecognized location from the Admin 3 attribute (The third largest sub-national administrative region in which the event took place (Event Data Project (ACLED) 2019)). Aggregating on the higher level would not solve the issue. Even though the number of unrecognized location would be manageable to resolve manually, but the map will be less meaningful because it is too aggregated. Therefore, as shown in number 2 in Figure 7, I have decided to create density maps to represent the data instead.

This alternative resolves the issues shown in section 2 as the following. Numerical references in the section below are tied to the numbered items in the proposed alternative visualisation in Figure 7.

3.1 Clarity

  1. Using density maps to show the geospatial patterns of the armed conflict events can take advantage of the overlapping points (2) . However since we cannot use varying colours for the density maps, a filter for the event types (1) is used instead.nes Only Violence Against Civilian](./images/2. Philippines Violence against Civilian.png)

  2. The visualisation will use a trellis for both the density map (2) and the bar chart (3). This allows the user to see the distribution of events in the geographical location as well as by event type by year.

  3. The bar chart is broken down by year in the trellis (3). This would make is easier for the user to compare the values between event types, even though it might be difficult to compare different years. However, by standardizing the axes for the values, the user can still compare the height of the bars in different years when the difference is big.

  4. Line chart is not used.

  5. Using a filter instead of using different colours for each even type removes the need to put a colour legend.

  6. Description is provided (4).

  7. Use more descriptive axis labels (not shown in Figure 7).

  8. Adjust the size to make sure they are not truncated (not shown in Figure 7).

3.2 Aesthetics

  1. Do not use the default map background from Tableau but use the shp file for Myanmar to provide the map background (2).

  2. The different event types are no longer differentiated by colours because it is used as a filter (1,2). The bar charts will also use the same colour for the bars. A colour palette of black and red will be used for this visualisation.

3.3 Interactivity

To improve:

  1. Show the name of the location, the date or description of event in the tooltip (not shown in Figure 7).

  2. Use animation (not shown in Figure 7).

3.4 Additional Features

Other than addressing the issues in the original visualisation, there are some additional features added to the dashboard.

  1. The codebook reveals that the data also stores the number of fatalities, which may also be of interest. Therefore, a parameter to toggle between displaying the values based on the number of events or fatalities is provided (5).
  2. To provide a high-level aggregate of the data, the state with the highest number of selected measure is highlighted (6). It will be done in the state level due to the unrecognized values in lower level. Showing the data in form of a map helps the user if they do not know the areas of Myanmar well.
  3. Comparing the aggregate values by state would also help the user to see the actual number of events (7), that will complement the density map.

4. Step-by-Step Description

I will assume you have some basic knowledge of Tableau, so I will not describe into very deep details for the routine Tableau operations such as importing data. Refer to my first dataviz makeover post if you need more details.

4.0 Set Up

Join data from multiple sources together

Filter Data Source

The dataset that I have contains multiple countries in Southeast Asia, but since we are focusing on Myanmar, we can filter out the rest of the countries.

I also want to remove “Strategic Development.” As strategic development is a non-armed event. Repeat the steps, but this time we add filter for Event Type and exclude Strategic Development.

4.1 Create customised filters

We can use parameters to simulate a custom filter. I have decided to use icons as the buttons, so first we need to download the icons first. I got my icons from The Noun Project.

We also need to create an Excel file containing all the values for the icons.

I added a value called “All” on top of the existing event types.

Create Parameter

Create custom icons

Your screen should look like the screenshot below.

Your new custom icons should appear under Shape Palette. If it doesn’t, try Reload Shapes or close the workbook and open again.

Now We just have to do some adjustments to make it look nicer.

We have done the first element of the visualisation. Your screen should look like the screenshot below. The linking for the filter will be done later at the dashboard.

4.2 Density Maps

For the density maps, we will need to create another parameter and several calculated fields.

Parameter

Repeat the steps to create parameter shown in section 4.1 for a parameter called Select Measure. The values in the Excel file are “Fatalities” and “Number of Events.”

The properties of the parameter is shown below.

Calculated Fields

To create calculated fields, click the grey triangle beside the search bar like if you are going to create a parameter > Create Calculated Field… Make sure that the ACLED Data Source is selected.

The calculated fields to be created are as the following:

  1. Filtered Event ID
if [Select Event Type] == "All"
  then [Event Id Cnty]
elseif [Select Event Type] == [Event Type]
  then [Event Id Cnty]
end

Create Density Map

We need a dual axis to create the density map if we want to remove all background maps. We will only use the National Boundary as the background map.

Your screen should look like the screenshot below.

Create Trellis Map

To create trellis map, we are going to add an additional field in the Columns shelf Tableau can automatically create the chart for us.

Edit Tooltip

We want to make the tooltip more informative, so we need to add the fields to the Tooltip on the Marks Card first.

Adjust Formatting

The final look for my density map is shown below.

4.3 Trellis Bar Charts

We will have a breakdown of the event type under each cell of density map. We will need to create several parameters and calculated fields first.

Parameter

The properties of the parameter should look as the following.

Calculated Fields

We need more calculated fields to enable the interactive functions to select the measure to be displayed, whether it is the number of events or the number of fatalities. The name of the calculated fields and the formulas are listed below.

  1. Number of Records
1
  1. Selected Measure
CASE [Select Measure]
when "Number of Events" then [Number of Records]
when "Fatalities" then [Fatalities]
END

Create Bar Chart for Selected Parameter

Your screen should look like the screenshot below.

Edit Tooltip

Adjust Formatting

Rather than repeating all the y-axis label for each cell, we will create a dynamic text to show what measure is being displayed later. * Double-click on the “Selected Measure” axis label * Delete the Title and leave it empty

The trellis bar chart should look like the screenshot below.

4.4 Top State Highlight Map

For this visualisation, we will use the State and Boundary as the Background map and highlight the state with the highest sum of measure using a red colour. The steps to highlight the max value is inpired by Rahul (2017) and Tableau Knowledge Base(2017). As with the previous visualisations, we need to create a calculated field first.

Calculated Fields

We will make use of the fixed function which disaggregates the calculation and use a fixed level of detail (Tableau 2020). Without using fixed function, we will get an error saying an aggregate field cannot be further aggregated.

  1. Selected Event Type
if [Select Event Type] == "All"
then [Selected Measure]
elseif [Select Event Type] == [Event Type]
then [Selected Measure]
else 0
end
  1. Max Measure
Max({fixed [State]: sum([Selected Event Type])})
  1. isHighestState
if {fixed [State]: sum([Selected Event Type])} == {fixed:[Max Measure]}
then "Yes"
else "No"
end

Map with Highest State Highlight

Your screen should look like the screnshot below.

Edit Tooltip

We are going to create two more calculated fields just for the tooltip. We will return a value for the highest state but return NULL for the rest. This is to prevent the tooltip from showing if the user hovers over the other states.

  1. Highest State Name
if [isHighestState] == "Yes"
then [State]
else NULL
END
  1. Highest State Measure Label
if [isHighestState] == "Yes"
then [Select Measure] + " of " + [Select Event Type] + " :      "
else NULL
END
  1. Measure of Highest State
if [isHighestState] == "Yes"
then {fixed: [Max Measure]}
else NULL
END

Adjust Formatting

As with the density map, remove the background map and remove interactive map features. Map > Map Layers… > Washout = 100% * Map > Map Options… > Uncheck all * Change the colour of the map * Double-click on Color on the Marks Card * Increase Opacity to 100% * Click Edit Colors… > Change “No” to black and “Yes” to red * Remove border by clicking Format menu > Borders > Rows > change Pane Row Divider to None * Repeat for columns

After the formatting, your screen should look similar to the screenshot below.

If the state that is being highlighted is different, it might be due to the different parameters being selected. The parameters that were selected on this screenshot is Fatalities of Protest event type. If we want to change it, we can right-click on the parameters on the Data Pane > Show Parameter.

4.5 Top States Bar Chart

Next, we are going to use the existing calculated fields to create a bar chart that displays the top 10 states in descending order by the values selected in the parameter.

Your screen should only show 10 states now.

Edit Tooltip

Adjust Formatting

The final look for top states bar chart is shown below.

4.6. Year Label

We are going to create a year label to replace the labels in the density maps and the trellis bar charts that we have removed.

Your screen should look like the screenshot below.

The formatted year label is shown in the screenshot below.

4.7 Measure Parameter Buttons

For the measure parameter buttons, we need to create each button separately in different sheets so we can move the buttons freely.

Your screen should look like the screenshot below.

The final look of the button sheet looks like the screenshot below.

Repeat the steps to create another button for Number of Events.

4.8 Dashboard

We will now combine all the different components into one dashboard.

There is also a text object at the bottom, but it is truncated due to the screen size.

Use Sheets as Custom Filter

We have 3 sheets in the dashboard that is meant to be used as a filter: Icons, Fatalities, and Number of Events. We can change the value of parameters according to actions performed on these sheet.

We can try to click the different icons and observe how the density maps and the top states visualisation changes according to the selection. Note that the trellis bar chart will not change because it always has all event types by default.

Repeat adding parameter action for the Fatalities with the following propoerties.

Repeat again for Number of Events, keeping all the properties for Fatalities Select Measure action except changing the source sheets to Number of Events only.

Add Highlighter

We will use the year as a highlighter, but we will use hover action instead of select. * Click Dashboard menu > Actions… > Add Action > Highlight … * Set the Action as hover and source sheet as Year. * Only keep Bar Charts of Event Type and Density Map as the target sheet.

Congratulations! We have completed our dashboard.

5. Major Observations

a. Armed Conflict Events are concentrated on the northeastern and western part of Myanmar

This is consistent to the Rohingya and Shan State Army - North conflicts that we may have seen in the news.

The total number of events are highest in Shan, with more concentration on the western part of Myanmar on 2019 and 2020.

b. Protests can happen anywhere in the country, but Yangon accounts for the highest number of protests

Even though Yangon is no longer the capital city of Myanmar since 2005, people still protests the most in Yangon. Some analysts believed that the move of capital city is motivated by the desire to shield the military from people’s protests, as Yangon is highly populated. If this analysis is true, the strategy seems to be working.

c. The violence against civilians in Rakhine is the lowest in 2018

After the vast publication of Rohingya crisis in 2017, the density of violence against civilians decreases in 2018 before picking up again in 2019. This shows that media publication and protests actually helps to deter people from performing injustice, although it might be only temporary. This shows ignorance is very dangerous.

d. A conflict is rarely a one-off event, it may take years to resolve

For battles, explosions, and violence against civilians, we can see that the hotspots never disappears suddenly. It will continue to exist the subsequent years, although it may fade gradually. Riot is an exception because the number is too low, so the points in the map are individual location of a riot event. This shows that the process of conflict resolution must be pursued consistently and patiently, even when the progress seem to be close to none.

e. Battles account for the highest number of fatalities and number of events

Battle has the highest number of events and the highest number of fatalities. Violence has the second highest number of fatalities, even though the number of events ranks 4th. This is due to the spike of fatalities caused by violence against civilians in 2017. Battles is very costly, and therefore we should strive to maintain peace.

Cuddy, Alice. 2021. “Myanmar Coup: What Is Happening and Why?” BBC News; BBC News. https://www.bbc.com/news/world-asia-55902070.
“Dot Density Maps.” 2020. Axis Maps. http://www.axismaps.com.s3-website-us-east-1.amazonaws.com/guide/univariate/dot-density/.
Event Data Project (ACLED), Armed Conflict Location &. 2019. “Armed Conflict Location & Event Data Project (ACLED) Codebook.” ACLED. https://acleddata.com/download/2827/.
“Legends.” 2021. Carbon Design System; IBM. https://www.carbondesignsystem.com/data-visualization/legends/.
Maizland, Lindsay. 2021. “Myanmar’s Troubled History: Coups, Military Rule, and Ethnic Conflict.” Council on Foreign Relations. https://www.cfr.org/backgrounder/myanmar-history-coup-military-rule-ethnic-conflict-rohingya.
News, BBC. 2021. “Aung San Suu Kyi: Myanmar Democracy Icon Who Fell from Grace.” BBC News; BBC News. https://www.bbc.com/news/world-asia-pacific-11685977.
Rahul. 2017. “Tableau Tips : Highlighting Max and Min in the Chart – Data Vizzes.” Data Vizzes. https://www.vizzingdata.com/tableau-tips-highlighting-max-and-min-in-the-chart/.
Stone, M. 2006. “Choosing Colors for Data Visualization.” Perceptual Edge. http://www.perceptualedge.com/articles/b-eye/choosing_colors.pdf.
Tableau. 2017. “Finding the Dimension Member with the Highest Measure Value | Tableau Software.” Tableau Knowledge Base; Tableau. https://kb.tableau.com/articles/howto/finding-the-dimension-member-with-the-highest-measure-value.
———. 2020. “FIXED Level of Detail Expressions.” help.tableau.com. https://help.tableau.com/current/pro/desktop/en-us/calculations_calculatedfields_lod_fixed.htm.

References

Citation

For attribution, please cite this work as

Djojosaputro (2021, March 16). Gabriella Pauline: DataViz Makeover 3 - Armed Conflict Location and Event Data. Retrieved from https://gabriellapauline.netlify.app/posts/2021-03-16-dataviz-makeover-3/

BibTeX citation

@misc{djojosaputro2021dataviz,
  author = {Djojosaputro, Gabriella Pauline},
  title = {Gabriella Pauline: DataViz Makeover 3 - Armed Conflict Location and Event Data},
  url = {https://gabriellapauline.netlify.app/posts/2021-03-16-dataviz-makeover-3/},
  year = {2021}
}