Successful PhD Defense!

I recently successfully defended my PhD. Yay! It was almost 3 hours, as there were many questions. There have since been many congratulations and questions from others.  The most common question is:

How did you complete a part-time PhD in 5 years?

This is a really good question. I had previously completed a part-time masters degree in the 1990’s which unfortunately took my 6 years to do. Doing any kind of independent research it’s easy to fall into a hole where you get side-tracked on something not important, over-work some code more than necessary, design a poor experiment, complete a task without being aware of prior work, and so on. Back when I started the PhD, I specifically made a list of things to avoid/improve so that I wouldn’t fall into the same trap as before.

  1. Meet with your supervisor frequently. It’s easy to have scheduling conflicts, but in the days of Skype, web meetings, Slack, etc., it’s pretty easy to reschedule and do live meetings. My supervisor and I both agreed on meeting at least once a month and we’d reschedule as needed so the meetings didn’t get missed. This is really important to to avoid the above pitfalls.
  2. Lots of small tasks instead of really big tasks. Decomposing a big research project into small tasks is a good idea regardless of the circumstances. However, when part-time, this is really important. Small tasks can be chunked into a weekend or two.
  3. Know your limitations. You’re not on campus, you don’t have the same access to resources, you don’t have the same access to big blocks of time. I would have liked to do a evaluation study, but it had more overhead (e.g. experiment design, ethics committee), less access to students, and it would have been a big task. Instead, I did a number of small surveys.
  4. Submit, submit, submit. Submit posters, talks, papers, journals and so on. The submission process means that you have to organize your ideas, perform some focused research, analyse results — all of which are good. Then, you get reviews. Sometimes these are disappointing rejections (I got a -3 on a 1-5 score range on one paper), but there are lots of good nuggets of useful information in each rejection.
  5. Workshops. Instead of really big conferences, workshops and side-conferences are a great venue to get feedback on work in progress. Workshop papers are smaller scale making it easier to do the work and write the paper rather than the big conference. The workshops also provide for a more collaborative environment to get feedback from your direct peers specifically interested in your topic, as opposed to the mega-conference where questions can be somewhat random. If you do a really good job on a workshop paper, you might get invited to submit to a journal too. Overall, I had 12 peer-reviewed publications during my PhD vs. 2 for my masters (which was longer duration).
  6. Solicit cross-disciplinary feedback. Likely whatever you’re working on has applications across domains or at least there are different constituents of stakeholders. Directly approach those different stakeholders and get their input. They have different viewpoints. In my case, I reached out to typographers and cartographers a couple years into my thesis; and both these groups helped identify significant gaps in my work. I might have been able to get away without their feedback since my thesis reviewers were not typographers nor cartographers, but it made for a much stronger, much more defensible thesis because I’d incorporated their feedback.
  7. Background. Too many papers that I review seem to be missing related relevant research. Google Scholar has made search through a lot of current peer review research relatively easy. But don’t stop there: there is likely older relevant research that can also be found: many of the world’s largest libaries and museums are online, old websites and old texts can be found on, and so on.
  8. Blog! I used the blog as means of forcing me to always write about something related to my research (Ahem, I did not always achieve one post per month). It’s great to get feedback from the Internet at-large and see what resonates across the Internet. I thought my posting about Pokemon would have more reposts than it did. I got more reposts on my discussion regarding 500 years of separation than expected.
  9. Time-outs. There are unplanned events that always occur and need to be accommodated. My wife’s step father passed away. My mom sold her house and downsized. I had pneumonia for a couple months. You have to take some time out, but then you need mechanisms to get started again so that you don’t lose momentum. Always having a paper submitted  somewhere means you’ll get a response. Having commitments such as supervisor meetings or blog posts to do gets you back on track.

In case it’s not obvious yet, rapid iteration with frequent feedback is at the core of almost all the above tasks. Essentially, it’s about putting in place mechanisms to keep you on track, guided and focused.  It worked fairly well for me so far – now I just need to do the “minor revisions” and keep focused on getting those done.

Posted in Data Visualization | Tagged | Leave a comment

Building a Better Table of Contents

As I near the completion of my thesis, I find it challenging to navigate through 250 pages of prose and remember where certain arguments or certain pieces of evidence are located; or challenging to get a broad overview of the narrative sequence.

Search is only effective if I can recall the name of reference or if the search term is suitably unique. Unfortunately technical terms are frequently repeated – for example – preattentive occurs 46 times. Even using keyword in context (KWIC) in the search panel still provides an excessively long list and perhaps the associated words of interest aren’t within a few words of the search term. Furthermore, search doesn’t work for the broad overview.

A Table of Contents should help, but not as much as I had hoped. A few problems:

  • On a large document, the table of contents is spread out across many pages, requiring paging and requiring the use of short term memory to hold onto relevant headings.
  • Headings tend to be terse, so it may not be obvious what the content is associated with a heading.
  • Furthermore, headings reduce information down to a few words – the narrative stringing the pieces of the argument together are lost.
  • While there are different levels of headings, overall, the representation of a table of contents is fairly uniform and undifferentiated, thereby not providing landmarks to facilitate navigation back and forth across the pages.

Table of Contents: an ordered list of headings without connective narrative and minimal landmarks spread across many pages. 

It may be suggested that the gist of document should instead be conveyed by the abstract. An abstract is more terse and provides the narrative sequence of the document – however – the abstract does not facilitate navigation of the document as it does not provide any links or page references. Furthermore, the length of abstracts tend to be quite limited: meaning that only the broadest overview can be described in the abstract.

Instead, I decided to use a very old technique. Chambers’ Cyclopaedia from 1728 creates a View of Knowledge – a unique narrative description of contents of his encyclopedia, all neatly organized in a hierarchical word-tree. Here’s a subset – you can read it left to right as a continuous narrative:


So, instead of a Table of Contents, perhaps Chambers’ approach is more useful. Here is a a narrative Description of Contents  for my thesis:


In one page, this description provides a brief readable narrative, outlining all the major arguments of the thesis, using FULL CAPS (and whitespace) to indicate major parts of the thesis. SmallCaps indicate each major heading. Superscripts (in blue) are links to page numbers.

[Aside: Note that word trees tend to use word size to indicate data. Unfortunately, word size uses alot of space; Full caps, small caps, superscripts and color can all be used to indicate data while offering higher data density and improved readability.]

The approach can be applied recursively: each part of the thesis has its own description of contents. For example, here’s the description of Part II:

In this example, the description contains many thumbnail images providing cues to the contents associated with each section (e.g. what’s the difference between text semantics and typographic semantics? – hint: comic book text is the image associated with typographic semantics). The large image at the bottom is a diagrammatic representation summarizing the design space derived in from the preceding sections.  Other cues (e.g. lines) can be added too to connect relations between items further apart.  Images also act as landmarks and commonality between different types of images help visually separate out various sections as well.

Does it work? I created the Descriptions to help me clarify how the pieces fit together. A couple of reviewers have commented how the descriptions have helped them understand the document – acting as a preview to each part and as a quick reference to navigate around the document. Obviously, more effort is required to create the description than a table of contents or abstract – but I’ve found it much more useful than either the abstract or table of contents to both navigate the document and to help move portions of the thesis into a better topics and flows.


Posted in Data Visualization, Design Space, Search | Leave a comment

Color in Text Visualization

Highlighting text via bold or italic is less noticeable than color. There is an incredibly long history of the use of color in a continuum from medieval times to present. From a visualization perspective, color is scoped to the level of words, or Proper Nouns, such as keywords in context (KWIC).  Color ranks highly in a study by Strobelt et al. Color is already among the most highly used attribute for encoding data into text (as of Jan 2016: 71 of 249 text visualizations at used color, only size was slightly higher at 76, and the next closest was orientation down at 10). And color has a strong visceral appeal – note all the tag clouds that vary word color randomly.

So, what more can be said about color in text?

The scope of text in visualization doesn’t need to be constrained to words: color can be applied to entire phrases, or down to individual glyphs. Certainly medieval authors were fond of illuminating initial letters of paragraphs and rubrication for the leading letter in sentences:


Colorful leading letters: Illuminated initials leading paragraphs, rubrication on lead initials of sentences. (bonus, note the sparkline at top right)

Note also that color does not need be constrained to a single color. In the above manuscript, the illuminated initials are blue set on an ornate red background. The idea of varying both foreground and background color of text has certainly occurred to some visualization designers as well:


Spatiotemporal tags vary both foreground and background color.

Mixing different foreground and background colors can result in illegible type: the words architecture and alemania are hard to read in the above example, as are some of the foreground/background combinations in this stem&leaf timetable:



Red text on an orange bar isn’t particularly readable.

Typographers have different ways of combining multiple colors into letters. Chromatic fonts contain complementary shapes, each printed in a separate color, each layer carefully aligned on a press. Consider this historic poster:

Chromatic fonts on historic poster: colored outlines and drop shadows. Image courtesy of  Gerry Leonidas, Department of Typography & Graphic Communication, University of Reading. 

Chromatic fonts emerged in the mid-1800’s, along with large sizes, many weights, wide variety of serifs and decorations. For the first 40 years of computer screens 72-96 DPI probably wasn’t sufficient for chromatic fonts and likely would have resulted in visual artifacts (i.e. jagged bits of high contrast colors interfering with legibility).  Support for chromatic fonts on computers is very recent and currently not consistent across browsers.
But, computer-based chromatic fonts open up interesting design possibilities. Wood letters with ink-based printing are limited: the approach scales to only a few discrete ink colors.  Instead, with software-based chromatic fonts, many hues and gradients are feasible and can be applied to portions of letters. The implication for visualization is that color can be applied to any subset of letters or parts of glyphs; potentially used to indicate quantities; still maintain legibility; and have a much more dynamic aesthetic than plain text. Some of the examples of computer-based chromatic fonts hint at very interesting future visualization possibilities:



Sample chromatic fonts via


It would be very interesting to see what new ideas some visualization research or graphic design programs might come up with!
(Title image conveniently cropped from Specimens of Chromatic Wood Type… 1874)

Posted in Data Visualization, Font Visualization, Text Visualization | Tagged , | Leave a comment

Text Visualization and Code Editors

Long before I started investigating typographic attributes for data visualization, Aaron Marcus and Ron Baecker were doing the same thing for software code. Back in the mid 1980s there weren’t integrated development environments, no integrated debugging tools and so on. My first coding environment in the mid 80s consisted of green text on a black background: 24 x 80 characters at maybe 72 dpi (*).


Old school: low resolution green-screen display.

If you wanted to better understand what was happening in a few blocks of code, there was no windowing system: you had to rely on flipping back and forth between code sections and carrying a lot of detail in short term memory – which is difficult.

So, instead, we printed it out. High speed line printers printed out large amounts of text on fan fold paper. You can cross reference between a few hundred of lines of code on paper much more easily than 24 lines on screen. And, on paper, you can use a highlighter to indicate variable declarations, underline conditionals, add squiggles or boxes around code and so on.

Baecker and Marcus realized that the then new Apple Laserwriter offered great resolution (300dpi) and excellent typographic capabilities. It could automate the tasks of differentiating types of statements using typographic attributes, instead of manually marking up the print out after the fact. They itemized the typographic attributes available, wrote routines to format and print code, did numerous studies and created recommendations through the 1980’s (e.g. CHI paper) – all before the academic research field of data visualization got started. Here’s some code from their book Human Factors and Typography for More Readable Programs formatted following their recommendations.

Baecker Marcus Code Formatting

1980’s laser printer-based code formatting using font weight, size, italics, shading, even smallcaps.

It’s a great example of visualization using typography. Italics, bold, background shading, slightly larger size for the function name, even smallcaps on the constant.

Over time, the display resolutions got better, code writing software got better, typography on desktops got better. Leading code editors nowadays do syntax highlighting reminiscent of Baecker and Marcus’s work – notice the many typographic attributes at work:


Snapshot of WebStorm – syntax highlighting varies underline, italics, bold, colors aid understanding. 

While the rich typographic formatting of in-line contextual highlights is the norm in software editors; typographic formatting to convey data is not normal in data visualization. Two years ago I went through all the text visualizations then listed at the Text Visualization Browser and cataloged which visual attributes were used to add data to text. Out of 249 visualizations then listed:

  • 40 didn’t have any text in the main visualization at all – they were visualizations such as point clouds, graphs, etc.
  • 103 used plain text without indicating any additional information, not even color coding – essentially plain labels.
  • Only 106 out of 249 (40%) used any kind of additional formatting(!) And what kinds of formatting did they use? Almost entirely size and color were used (often both). Only very rarely were typographic attributes – such as bold, italics, caps or underlines  – used, as indicated in this table:


Notice, for example, that varying font intensity is more common (occurred 9 times) than varying font weight (occurred 6 times). This is a bad design choice, because fonts come in a wide variety of weights which are more legible than varying font intensity:


Changing brightness reduces text legibility…


while, changing weight maintains text legibility.

What makes this particularly interesting is that the researchers designing and coding these visualizations were spending long hours staring at code editors full of typographic cues like the WebStorm snapshot — but then didn’t use any typographic cues in their visualizations! Possibly they had become accustomed to the typographic manipulation and no longer consciously aware of it, or, perhaps because it was situated in a different (non-visualization) context, the mental connection to visualization was never made (because visualization research rarely talks about typography).

This is just one example of a kind of “design blindness” (like change blindness, but without the change – i.e. missing something that is clearly visible). What other cues are UI designers seeing but completely missing?

Posted in Data Visualization, Font Visualization, Legibility, Text Visualization | Leave a comment

Visualizations of Many Variables

Underlying many of the posts on typographic visualization in this blog is the notion of visualization of many variables. Many modern visualizations only tackle a few variables beyond x,y layout. Treemaps use color and size; choropleth maps use color; tag clouds use size. Even Hans Rosling’s engaging TED talk is a bubble plot with only size, color and animation. Yes, parallel coordinate plots scale up to potentially a dozen or more variables but interactive techniques are often required to reveal the crooked path that corresponds to one particular item — it’s not feasible to do so through a mass of cluttered lines. And furthermore, most visualization techniques work with homogeneous data: not messy heterogeneous data at different scales, different entities, differing qualities and not necessarily easy ways to computationally join the disparate data together.

Tufte’s  Envisioning Data has quite a few examples of the latter; and many more variants are available on the Internet. Maps with many layers, exploded or cutaway drawings, dance notation, graphic timetables and many other kinds of detailed charts:

Bertin considered these types of visualizations graphical inventories – not for visual perception of patterns but rather a means to graphically organize a lot of related information. And so, inventory-style visualizations are not commonly used because most visualization tools are focused on the easy perception of patterns without the clutter.

But can inventory-visualizations be also used for rapid preattentive perception of patterns? At the outset they may seem cluttered, but they can still use attributes such as color to draw fast attention, and then still provide all the detailed context. Presumably this use of visualization as inventory plus preattentive highlights is already used today in real-time operational settings such as factories, pipelines and electric grids: the blinking box requires attention, but all the rich graphical detail around the blinking box indicates other assets that can be manipulated to rectify the situation. Something to consider for 2018.

Posted in Data Visualization | Leave a comment

Stem & Leaf Bigrams

Stem & leaf plots are quirky alphanumeric data visualizations. In typical usage they show distributions of numeric values. Here’s a simple dataset of heights of my family on the left, transformed into a stem and leaf plot on the right:


The resulting stem & leaf plot, at a macro level, shows a distribution. At a micro-level, you can easily read off the minimum value (152), the maximum value (187), and probably make a reasonable guess to the medium value – or in this case – the median is explicitly indicated with an added underline (172).

Character-based Stem & Leaf Plots

So can stem & leaf plots be extended to plot text-based data?

Consider a simple example based on letter pairs. Bigrams are pairs of letters. They can be analyzed across a large body of text and certain letter pairs will be common in certain languages. This can be useful for applications such as auto-detection of language and for cryptography.

Since bigrams are pairs of letters, one could split a bigram into a first letter (for the stem) and the second letter (for the leaf). The resulting stem & leaf bigram plot for all the letter pairs that occur more than 0.5% in the English language are shown here:


The stem (left side) is the leading character of the bigram; the leaves (right side) are all the trailing letters, with font weight indicating frequency. You can see that many of the most common English bigrams start with E. And you can see that ER, IN and TH are among the most frequent bigrams.

Unlike a stem & leaf plot based on numeric values, the trailing characters may be of interest. Instead we shift the stem to the trailing character when we add a second stem&leaf plot on the right:


In the second stem&leaf plot, the stem (now on the far right) indicates the trailing character; and all the leaves indicate the leading character. E is also the most common trailing letter. However, it is now a bit more visible that a trailing N is fairly high frequency.

Stem & Leaf Trigrams

And the approach can be extended to trigrams. The plot below is centered on the second letter of high frequency English language trigrams:


The trigrams are ordered from the center out – so in the top row, the top trigram is HAT, followed by EAR, followed by WAS. The most common trigram is THE, and there appear to be many trigrams with T at the center (note, dataset is from Practical Cryptography:, which didn’t consider word spaces).

Word Bigrams as Stem & Leaf Plots

Text-based stem & leaf plots can go beyond characters as units and extend to words and phrases. I did an previous blog post regarding characters and adjectives from Grimms Fairy Tales, which essentially was a stem & leaf plot.

Another variant is to use people’s names as bigrams: the typical forename-surname is a word bigram. Forename-surname is commonly used in the west can be used to construct textual stem & leaf plots. Here’s some of the families that were passengers on the Titanic. Surnames form the central stems – first class on the left half of this diagram (in a fancy serif font) – third class on the right half (in a plain sans serif font):


In this example, leaves on the left side of the stems are women (italic), leaves on the right are men. Children are indicated in ALLCAPS. Those who perished are bold. For example, top left is Ethel Fortune, a first class adult woman who survived. In the same family are Mark and Charles Fortune,  first class adult men who died. Among the first class, one can see that the women (along the far left) are almost entirely non-bold, meaning that they survived. Among the first class men, there are many more bold entries (died) although many of the survivors are allcaps (children). Thus, we see among the first class, that many women and children survived. However, in the right half of this plot we see the third class almost entirely bold: Most of the third class perished – regardless if they were women or children.

Phrases as Stem & Leaf Plots

As a final example, we expand the approach out to phrases. This example is based on the book of Psalms from the Bible, which has a number of repetitious structures. Here, we identify some of the most common phrases, indicated along the horizontal grey line. Above the grey line are the leaves that precede the common phrase, below the grey line are the leaves that follow the common phrase.


Interestingly, the phrase “I will praise thee” is common, but there is no commonality among the preceding and following phrases. However “O give thanks unto the Lord” is typically preceded by “Praise ye the Lord” and followed with “for he is good”.





Posted in Alphanumeric Chart, Data Visualization, Font Visualization, Text Visualization | Leave a comment

Lost Works of Jacques Bertin on Typography

It’s been 50 years since Jacques Bertin’s Sémiologie Graphique was published. Bertin looms large in history of both data visualization and cartography. Before we had textbooks on data visualization by Munzner (Visualization Analysis and Design), Ware (Information Visualization: Perception for Design) or even Spence (Information Visualization: Design for Interaction), Bertin provided the theoretical foundation that much of visualization relies on today. Sémiologie Graphique structures the design space of visualization with the now familiar concepts of marks (point, line, area); visual attributes (only six in his version); type of perception (quantitative, ordered, categoric and associative); and layout. Beyond these, Bertin also considered many other aspects such as spatial separation (to form small multiples) ordifferent use cases of visualization including communication, analysis, and inventory.

However, only one aspect of Bertin’s work never made the translation from the French original to English: typography! Strangely, out of 450 pages+ only 4 pages on typography were not translated. In these 4 pages Bertin discusses the importance of the literal information represented by text. He notes that text is often the only encoding commonly accessible to both the textual/verbal system of encoding information; and the visualization system of encoding data.

Furthermore, Bertin points out that text is not selective. In other words, text is not preattentive, meaning that patterns do not automatically pop-out. If I ask you to find the word “six” occurring in the first paragraph, you need to linearly scan through the text – the benefits of visualization do not occur. Typographers would agree: they put significant effort in making text appear uniform with no visual anomalies to standout, carefully tweaking letterforms and kerning pairs to achieve this effect.

However, typographers also understand the need to make some words visually pop-out from surrounding text and therefore provide forms of emphasis such as italics and bold. Bertin also points out that these forms of emphasis are available and discusses them in the context of the technology of his time: pencil, pen, professional printers (which would have used phototypesetting in the late 60’s), and dry-transfer lettering (e.g. Letraset). And he nicely itemizes attributes of typography, available on page 415 of the French edition of Sémiologie Graphique:


Bertin’s font attributes included letter forms, font family, font width, spacing, size, weight, case, and slope (italic).

So, why was Bertin wildly successful, but his commentary on typography so minimal that it was dropped from the English translation? Good question!

One answer is that even though Bertin indicates the potential of text to indicate data beyond literal text; he says the incremental addition of text only helps low-level elementary reading, not the higher level of visual perception of patterns. However, Bertin is writing in the late 1960’s: 15-20 years before Edward Tufte popularizes the notion that a visualization can be read at many different levels depending on the task, which Tufte calls micro/macro reading (Tufte: Envisioning Information).


Another answer is that even though Bertin acknowledges typographic attributes such as individual letter forms, typeface, width, spacing, size, weight, case and italic – he doesn’t provide any examples of the use of these attributes. On the otherhand, he provides hundreds if not thousands of examples of the other six visual attributes (size, orientation, hue, brightness, texture, shape), making sure that his core concepts are well explained and illustrated.  A parallel can be seen in open-source visualization libraries: there were many different open-source visualization alternatives in the early 2010’s.  However, Mike Bostock not only provided a well organized library with D3.js, he also provided a lot of compelling examples of visualizations implemented in D3 with source code. Mike made it far easier to adapt and extend D3’s model by starting with examples rather than requiring the extra effort to learn some other library and then figuring out how to create those examples.

There are other possible reasons, but the unfortunately reality is that Bertin’s typographic insights were side-stepped and never exposed to the English language research community. Bertin also wrote a follow-on article (Classification typographique : Voulez-vous jouer avec mon A doi : 10.3406/colan.1980.1369) specifically on the visual attributes of type in 1980 – but again, no examples and no translation (it does provide a better organization of the typographic attributes).

In Sémiologie Graphique, Bertin made 100 different visualizations of a dataset indicating  three major occupations across 90 departments in France. None use typographic attributes (although a few use simple plain labels). I decided to make one typographic example – here’s Bertin’s ternary plot (p. 115) where the bubbles have been replaced with text, sized in proportion to population, colored based on occupation proportions. You can choose to focus on the macro patterns (e.g. most districts have an agricultural bias, or most of the agricultural districts tend to have smaller populations); or you can choose to focus on the micro details, e.g. district P (Paris) has the largest population and no agriculture; or, district 32 is the district with the highest proportion of people employed in agriculture.  (If you want more non-Bertin examples, see many of my recent postings regarding typographic visualizations).


Ternary plot, based on Bertin, using alphanumeric codes instead of dots.

According to Google Scholar, there are 6004 citations for Bertin’s Sémiologie Graphique (across the French, German and English editions); while there is only ONE citation for Classification typographique : Voulez-vous jouer avec mon A. Perhaps this short article and references will help Bertin’s ideas of typography get more recognition and citations in future visualization and cartography research work.


Posted in Alphanumeric Chart, Data Visualization, Font Visualization, Text Visualization | Tagged , | Leave a comment