DS25 Dashboard Week: Accessible Dashboard for NYC Council Constituent Services #Tableau

by Jesus Esquivel Roman

Wednesday 24th November 2021, DS25 final week in training. Today's dashboard week project was on Accessibility. You can access the final dashboard clicking here.

Project Background

The NYC (New York City Constituency ) open data website has been getting a lot of complaints on the accessibility of their current data dashboard. The job is to improve the portal using universal design principles as well as making the information available for keyboard only users and users of screen readers, while maintaining all functionality from the current portal.

The dashboard also needs to stay up to date automatically with the most recent data using the New York City Open Data API to keep the data fresh.

Project Objectives

✔ An Alteryx workflow that accesses and prepares the data, sending it to a Tableau data source on the TIL server

✔ A Tableau dashboard (published to the Tableau Server) that improves on the accessibility issues in the existing dashboard while maintaining its current functionality

✔ A blog that describes today's process

The Process

1. Connect to NYC Council Constituent Services API with Alteryx. Read documentation to obtain all the records available by adding '?$limit=300000' at the end of the provided json URL to obtain all the 275k records. This makes the workflow futureproof as long as the limit is not exceeded.

2. Workflow and final output from Alteryx:

3. Download tool was used to obtain the JSON records from the URL. JSON Parse tool was then used to parse the JSON records. The 'Publish to Tableau Server' tool (never used before) allowed us to publish the data to a site and project in Tableau Server (click here for instructions).

4. Opened Tableau Desktop and connected to Tableau Server NYC Council Constituent Services data source uploaded from Alteryx.

5. Conducted some data cleaning in Tableau Desktop to filtering out non-numeric or negative zipcodes and replacing empty borough values with 'Other' as these might refer to parks, moving vehicles or multiple places.

6. Built and formatted the charts in the NYC Council Constituent Services considering accessibility for users with accessibility issues (users with no vision, visually impaired, color blindness, dyslexia, neurodiversity, keyword-only users, etc.)

7. Uploaded the dashboard to Tableau Server and tested accessibility with Funkifity disability simulator and Window's screen narrator (Ctrl + Windows + Enter).


  • Allow keyboard-only users or visual impaired users to be told whether the line chart was uptrend or downtrend (calculated fields used but took time).
  • Format the dashboard considering both users with and without disabilities. This limited the dashboard interactivity tools since users such as keyboard-only users will not be able to click on charts.
  • Add and adjust captions dynamically to update as filters and/or parameters are changed so that users with accessibility issues can easily identify or be told the changes and summary of the chart.
  • Make narrator read in order. Narrator works different in Tableau Desktop app than in Tableau Server making the testing of the narrator difficult...

Final Outcome

Decisions on dashboard:

Filters kept on one side to allow narrator read them from top to bottom. Added KPIs which summarises the key takeaways from the data. Added captions and titles for screen narrator to read it out loud to visually impaired users and for Newcomers to Tableau understand the data by reading it. Lastly, used simple charts which are easy to understand by multiple users.