Archive for the ‘Charts’ Category

Ggplot2 Quickref

Wednesday, January 6th, 2016

Ggplot2 Quickref by Selva Prabhakaran.

If you use ggplot2, map this to a “hot” key on your keyboard.


d3.compose [Charts as Devices of Persuasion]

Friday, December 11th, 2015


Another essential but low-level data science skill, data-driven visualizations!

From the webpage:


Create small and sharp charts/components that do one thing one well (e.g. Bars, Lines, Legend, Axis, etc.) and compose them to create complex visualizations.

d3.compose works great with your existing charts (even those from other libraries) and it is simple to extend/customize the built-in charts and components.

Automatic Layout

When creating complex charts with D3.js and d3.chart, laying out and sizing parts of the chart are often manual processes.
With d3.compose, this process is automatic:

  • Automatically size and position components
  • Layer components and charts by z-index
  • Responsive by default, with automatic scaling

Why d3.compose?

  • Customizable: d3.compose makes it easy to extend, layout, and refine charts/components
  • Reusable: By breaking down visualizations into focused charts and components, you can quickly reconfigure and reuse your code
  • Integrated: It’s straightforward to use your existing charts or charts from other libraries with d3.compose to create just the chart you’re looking for

Don’t ask me why but users/executives are impressed by even simple charts.

(shrugs) I have always assumed that people use charts to avoid revealing the underlying data and what they did to it before making the chart.

That’s not very charitable but I have never been disappointed in assuming either incompetence and/or malice in chart preparation.

People prepare charts because they are selling you a point of view. It may be a “truthful” point of view, at least in their minds but it is still an instrument of persuasion.

Use well-constructed charts to persuade others to your point of view and be on guard for the use of charts to persuade you. Both of those principles will serve you well as a data scientist.

Visualizing History

Saturday, February 8th, 2014

Visualizing History by Ben Jones.

From the post:

When studying history, we ask questions of the past, seeking to understand what happened in the lives of the people who have gone before us, and why. A data visualization of history suggests and answers a thousand questions. Sometimes, the value in a chart or graph of history is that it proposes new questions to ask of the past, questions that we wouldn’t have thought to ask unless the information were presented to us in a visual way.

Ben makes imaginative use of Gantt charts to illustrate:

  • American Presidencies
  • History of Civilizations
  • History of the Patriarchs
  • Political History (scandal)
  • and others.

I have always thought of Gantt charts as useful for projects, etc., but they work well in other contexts as well.

Not as flashy as some charts, but also less difficult to interpret.

Create Real-Time Graphs with PubNub and D3.js

Wednesday, January 8th, 2014

Create Real-Time Graphs with PubNub and D3.js by Dan Ristic.

From the post:

Graphs make data easier to understand for any user. Previously we created a simple graph using D3.js to show a way to Build a Real-Time Bitcoin Pricing and Trading Infrastructure. Now we are going to dive a bit deeper with the power of D3.js, showing how graphs on web pages can be interactive and display an array of time plot data using a standard Cartesian coordinate system in an easily understandable fashion.

Unfortunately, once a user has loaded a web graph, the data is already stale and the user would normally need to refresh the entire page to get the latest information. However, not having the most current, updated information can be extremely detrimental to a decision making process. Thus, the need for real-time charting! This blog post will show how you can fix this problem and use the PubNub Real-Time Network to enhance D3.js with Real-Time graphing without reloading the page or polling with AJAX requests for changes.

Want to see it in action? Check out our live, working bitcoin graph demo here.

Yes, I know, it is a chart, not a graph. 😉

Maybe that should be an early vocabulary to propose. A vocabulary that distinguishes graphic representations from data structures. It would make for much better search results.


PS: Despite my quibbles about the terminology, the article has techniques you will find generally useful.

What is wrong with these charts?

Tuesday, July 16th, 2013

What is wrong with these charts? by Nathan Yau.

If you pride yourself on spotting mistakes, Nathan Yau has a chart for you!

Pair up and visit Nathan’s post. See if you and a friend spot the same errors.

Suggest you repeat the exercise with your next presentation but tell the contestants the slides are from someone else. 😉


Tuesday, November 6th, 2012


From the website:

An open source tool helping everyone create simple, correct and embeddable charts in minutes.

Generating charts while authoring a topic map or for displaying information about a topic map could be quite useful.