奠基性的思想与表达
![](https://img3.doubanio.com/icon/u150557421-2.jpg)
这篇书评可能有关键情节透露
其实是混合了原文摘录和一点概括的阅读笔记(更新中)。豆瓣编辑器不支持markdown令人心累。
引言
- Grammar / graph
- 词源:前者 from gramma, grammat- ‘letter of the alphabet, thing written’;后者 from Greek graphē ‘writing’,衍生出了前者 - Graphics是可被感知(perceivable)的graph
- Graphics / Charts
This book SHUNs chart typologies.
- 语法上的差异是更本质的:饼图是条形图的一种(a pie is a divided bar in polar coordinates),而直方图(histogram)并不是。 - 为了代码的简洁,应考虑graphics的共同逻辑,而不是若干种看似不同的charts的。
- Object-Oriented Design
- 特点 - 对象可以复用。 - 模块化。 - 当一类对象(class or category)看起来合用的时候,应该考虑是否有更general的类型,使得前者是后者的一个实例(instance)。 - 注意 - OOD并不是一种编程语言,而且面向对象的语言(如Java)也并不一定意味着程序是OOD的。 - OOD也不是GUI或交互系统。
- OOD is a natural framework for thinking about graphics because graphics ARE objects (Hurley and Oldford, 1991)
- Object-Oriented Graphics Design
- 规范(Specification) - Frame: Cross Dimension_A with Dimension_B to produce a two-dimensional graph - Graph: line (eg. contour), dot, ... - Guide: axis, tick, label, ... - 组合(Assembly) - Inheritance: Tasks relating to guiding, such as relating numeric values to text strings, can be implemented in one Guide class. (enable them to represent themselves in a frame.) - Aggregation: A chart has a Frame, one or more Guides, and one or more Graphs. - 呈现(Display) - Add a graphic to a frame/Remove/Transform/Permute/... WITHOUT redefining the basic structure.
Unless one specifies those rules explicitly, one cannot begin to claim that a particular graphic is meaningless or not. ...
Most data mining systems still rely on pie, line, and bar charts of slices of data cubes (multi-way aggregations of a subset of a database). These charts fail to reveal the relationships among the entities they represent because they have NO deep grammar for generating them.
举例:如何绘制一个饼图
-tbc-