Mathematica has very powerful visualization techniques. However, I'm at a loss at how to best make the following chart readable.
BarChart3D[{viewerCount1, viewerCount2, viewerCount3},
ChartLabels -> {Placed[{word1, word2}, None],
Placed[filelist, None]}, ChartLayout -> "Grid",
BarSpacing -> {0.5, 0},
LabelingFunction -> (Tooltip[Row[Flatten[{#3, #1}], " - "]] &)]
Each row (i.e. each viewerCount) is the number of times a given word appears across a large corpus of files (so if viewerCount1
was the count for the word 'coffee,' the first row would show what files are most relevant for that word at a glance). The goal is that very quickly, an archivist could see what files are best without having to parse textual data, etc. The preprocessing of all this data has taken place in Mathematica so I would like to keep visualizations in there too (as opposed to learning Processing or another language).
There are 385 files being searched here, so each of those is a long list of numbers.
I have terrible handwriting, I'm afraid, but here is what I have been trying to create:
What's different in my 'dream' rather than what I have?
- Bars are more distinctive, not as flimsy
- If the value is zero, still see a little flag rectangle that can draw user to tooltip it
- spacing between the different rows, just to visually distinguish them
I suspect BarChart3D
isn't the best command for this, but I've struggled to get other visualization techniques working. Alternatively, perhaps the problem with this visualization lies before the visualization stage itself...
An Appendix for convenience:
viewerCount1={0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 10, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1, 8, 0, 2, 0, 0, 0, 4, 0, 1, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 9, 0, 0, 2, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10,
0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 3, 2, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 3, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 1, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}
ArrayPlot
be better? In my field, we consider 3d bar and ribbon charts to be evil. $\endgroup$ – Verbeia Feb 17 '12 at 21:09ArrayPlot
. I will check it out shortly to see what I can make of it.. $\endgroup$ – canadian_humanist Feb 17 '12 at 21:41