Interesting point of view. Choices of style apart, there are situations where textures are useful. Like for example the case faced by swayvil (see the comment), or when you need b/w printable images.
Another good reference is "Semiology of Graphics" of Jacques Bertin, he has a good opinion about textures.
"Semiology of Graphics" is a great book, but this was published in the 1960s when those graphs where drafted by hand and color printing was probably not an option.
I am ignorant as to what tools a draft-mans hand for shading then, but I am sure hatching would be easier than creating a fine range of halftone grays.
> Can optical art effects ever produce a better graphic? Bertin exhorts: “It is the designer’s duty to make the most of this variation; to obtain the resonance [of moiré vibration] without provoking an uncomfortable sensation: to flirt with ambiguity without succumbing to it.” But can statistical graphics successfully “flirt with ambiguity”? It is a clever idea, but no good examples are to be found. The key difficulty remains: moiré vibration is an undisciplined ambiguity, with an illusive, eye-straining quality that contaminates the entire graphic. It has no place in data graphical design.
An initial config object would probably be ideal, and then you could have the chaining to supplement those values. You could have the initial method take in the config and use the values in that in place of the defaults. So
In my opinion the "right" way for static things. Keeps the browser from computing, no need for the original data and libs. Of course being able to inspec other people's d3 code is fun on the other hand.
Thanks for the update! I was unaware of the power of geoJSON (also githubs neat mapping of them) and access to data from places such as gadm.org. Is that where you source the data?
Pykov implements the computation of some of the most common quantities related to discrete-time finite regular Markov Chains, namely: steady state, mean first passage times and absorbing times. The calculation are performed by means of the analytic formulas described on Kemeny&Snell, and the steady state is derived with the inverse iteration method. If you are interested on random walkers, pykov offers a handy way to generate them and evaluate their probability.
Sorry, I do not know PyMC well enough to say if the above quantities can be calculated also with it.
I coded this library during my PhD, where I applied Markov Chains to the study of protein folding dynamics. I am quite confident with it, but as far as I know few others used it. At that time, I used pykov with networks of around 100k nodes and 500k links. Only recently I replaced pysparse with scipy sparse solvers. Entire methods are comment out because they are heuristics that do not belong to the standard Markov Theory, and they can be removed.