Team Assist Matrix Visualization

Team Assist Matrix Visualization Edit | Quick Edit | Trash | View

Project Focus:

Data Visualization  Data Analysis  R

Project Overview

I noticed that NBA teams create offense in very different ways (as measured by assists) – for examples most of the LA Clippers offense comes through Chris Paul whereas the San Antonio Spurs take a very different approach. Consequently, I wanted to create a visualization that gave a quick snapshot of team’s offenses were run.


I scraped the data off the NBA’s individual player Pass Dashboards. From there I used R to wrangle the data so that I could export it to the heatmaps seen below. Finally, I created a Shiny application so users can easily access the data.

Below is a Shiny/RStudio app for assist visualizations of individual NBA teams. The heatmap [should] be self-explanatory – it shows which players assist others on a given team.

The Github code can be found here.



  • Assists are not normalized by games or minutes played. Consequently, the visualization favors high MPG players and non-injured players.
  • Utah’s map is probably my favorite one. It’s really cool to see how many different ways they initiate the offense, while maintaining a league average ORtg.
  • While I wish the Lakers nothing but failure, the DLo/Clarkson/Randle love is cool to see. The Nick Young/Bass connection is also too strong. It’ll be interesting to see how DLo’s assist relationship with his teammates changes in light of recent news (only half kidding).
  • Most team’s seem to converge on a 3-player core (Klay/Dray/Steph, MCW/Giannis/Middleton, CJ/Dame/Plumlee)



Leave a Reply

Your email address will not be published. Required fields are marked *