top of page

Visual Analysis System for Latent Networks of Policy Diffusion in United States

Project primarily funded by NSF (National Science Foundation)


Policy diffusion has been a topic of focus across the social sciences for several decades, but due to limitations of data and computational technology, researchers have not taken a comprehensive look at patterns of diffusion across many different policies.


In this project, we combine cutting-edge methods of text and network analysis to understand how policies, as represented in digitized text, spread through networks connecting the American states. 

Our visual system visualizes network, map, and text metadata, presenting the pattern of how information flow among objects involved, and providing functionalities that enable users to explore potential factors that may affect the flow.


Three major parts, naming cascade, metadata, and network, are integrated to form our database.

Cascade dataset contains policy’s adoption year of 50 states for all 187 policies, which can be found at Replication Data for: Persistent Policy Pathways: Inferring Diffusion Networks in the American States.

Network is fixed, inferred from cascade data, which is generated using R language.



  • Visualization: D3.js

  • Framework: Backbone.js

  • UI library: Bootstrap

  • Building tools: webpack, npm;


  • Server: Flask

  • Data persistency: MySQL



Status: Implemented (This is the real snapshot)

 System Logo

 Policy Name

Conducted research on algorithms of policy network inferred
Surveyed on network visualization approaches
Discussed with politician scientists, having requirement analysis
Designed components based on each requirement, giving mockup by Sketch
Implemented inferred networks using R language
Implemented each views and system (In progress)

 Subject Name


Status: Implemented (This is the real snapshot)

Metadata presents six features of all states from 1960 to 1999, with one exception that no data exists for NE (Nebraska). The six features are Per capita income, Minority diversity, Legislative professionalism, Citizen ideology, Total population and Population density. The first five features of all six are extracted from paper mentioned above, with the last one Population density generated by us.

Policy Data

Cascade Data


 Search box

 Subject filter

 Policy filter

Status: In progress (This is the mockup)

This is the cluster panel, which allows users to discover the similarities and differences among policies. Policies will be arranged by specific cluster method.

Right now we've implemented two methods. 

First, we give clustering based on policy text.

Also, we cluster the policies based on P-Rank and SimRank similarity.

Status: In progress (This is the mockup)

This is the policy description, which is retrieved from relative website by Python.


This is the geographical view, which indicates the adoption sequence by color opacity in the U.S. map.

U.S. has been administratively divided by several regions. Here we give three mode to discover the adoption sequence, namely NORMAL, REGIONAL 1 and 2.

Map can be clicked to highlight specific state.

Status: Implemented (This is real snap shot)

Status: Implemented (This is real snap shot)

This is the network view, presenting the diffusion network of policies.

Along with geographic view, users can have a deep understanding about policy diffusion filtered by specific conditions.

Status: In progress (This is the mockup)

Once users click on specific state, here will appear the state name.

Once users click on specific state, here will show the similar state with similar adoption or diffusion pattern. We calculate the similarity based on Tree Edit Distance and implement it in Python.


Status: Implemented (This is real snap shot)

This is the cascade view, which shows policy adoption details. States are represented by small squares with their abbreviation name on the right. States that adopted the selected policy is shown vertically, grouped by the year of adoption, and ranked from the earliest the the latest, which also represented by the color from the darkest to the lightest.

Status: Implemented (This is real snap shot)

This is the Arc view, concluding the diffusion flow for specific policy. X Axis and Y Axis respectively contain 50 states, but arranged in different sequence. Users can assign the sequence standard by dropdown box.

Diffusion flow can be consistent or violent with the inferred network. For example, if CA is the parent node of NY in the inferred network while adopt specific policy later than NY, then it is a violence. 

We plot the violent flow below the X Axis, to distinguish with consistent ones.

This is the Comparison view. Users can take temporary snapshot for Arc view and have deep comparison.

bottom of page