Overview

The Data Visualization Wizard provides a fast way to get data visualizations online using Drupal. It provides the following visualizations after a quick upload of a spreadsheet:

  • Geo-spatial map - Geocoded data can displayed on an interactive map with each data element as a point on the map (with optional pop-ups).
  • Pie and bar graphs - Any individual factor can be displayed as a pie or bar graph.
  • Summary listings - Each data row is listed in a sortable table below the maps and graphs.
  • Detail pages - Each data row from the summary listing links to a customizable detail page to provide a full view of each data entity.
  • Searchable and filterable listings - The data can be searched and filtered on a configurable amount of factors you choose for the listings. All elements on a data visualization respond to these filters creating an easy-to-use analysis tool.
  • Downloadable data - Data can be offered to the user in CSV, JSON, GeoJSON and XML formats.
  • Lightweight API - The downloadable data formats respond to the search and filtering abilities, so this can provide a lightweight API for uploaded data sets.

Dependancies

The Data Visualization Wizard is dependent on three modules:

Quick Start Instructions

1.) Install and enable the dependancies above and the DataVizWiz module.
2.) Ensure the publishing users have Importer upload and administer DataVizWiz rights.
3.) Upload a CSV file via Importer (Administer -> Content Management -> Importer). Upload is the bottom option on the Importer screen. Next, create a table from that imported file.
4.) Next, to create a data visualization, start by creating a DataVizWiz node (Create Content -> DataVizWiz Dataset).
5.) Fill out information about your dataset: title and basic description (these will appear on the dataset page). Choose the data table created using the Importer module from your CSV. Page size is the number of records displayed on the summary page and summary pane height is in pixels for the maps and charts section. The four checkboxes enable "open data" in CSV, JSON, GeoJSON and XML formats. Click Save when finished.
6.) After the node is created, click on the "Manage Dataset tab". The tabs help design the following:
a.) Manage Fields - configure the fields that show in the summary, detail and open datasets. You can rename the fields for display purposes to easier understanding by the end user. Here, you can also designate which fields can have filters for searching of the data. For mapping purposes, be sure to designate which filters are latitude and longitude.
b.) Summary Page - choose the order fields are displayed in the summary table (by drag and drop), fields that are sortable and link to the drill-down detail page.
c.) Detail Page - choose the order fields are displayed in the detail page (by drag and drop), optionally the detail page title and fields which should take up one column (as default fields appear in two column display).
e.) Summary Panes - add maps, pie charts and bar graphs to the summary page above the listing table. The freeform HTML option allows adding any HTML content such as YouTube videos or other embedded content.
f.) View Dataset - view the dataset after updating the configuration.
7.) The Data Visualization Module is intended to provide the capability to "play around" with the visualization until it meets your expectation. Feel free to bounce between Manage Dataset and View Dataset until it looks right to you. In the node configuration page, uncheck Publish and it will not be viewable to the public while under development. Best of luck and feel free to ask questions of the maintainers!

Background

This module has been constructed from the two years of data visualization practices. We found in time that our using of modules such as Views, OpenLayers, Charts and Graphs and others provided a quick way to show data online without custom programming, but became a maintenance burden in the long run, often taking 8-32 hours to create a new visualization. For this reason, we distilled the best practices from these patterns into a single module. The end goal is to lower the technical complexity required to create new visualizations and decrease the time required to do so.

Project Information

Downloads