BVLC/caffe — pull request #1555 by drdan14 (2014-12-10 18:54:32+00:00)
Title: Improvements to network drawing via draw_net.py

A few improvements to the aesthetics and information content of graphs created using `draw_net.py`.

Highlights:
* Use `ArgumentParser` in `draw_net.py` to parse input arguments
* Plot network horizontally (left-right) by default; yes, this confuses the standard "top" and "bottom" names, but since everyone's monitor is wider than it is tall, the advantage is that you'll be able to see over 50% more of the network on your screen at once. The top-bottom functionality is available via the `--rankdir BT` command line argument to `draw_net.py`
* Display number of outputs on edge for data, convolution and inner product layers
* In node names, add newline between layer name and layer type, to save horizontal space (only if graph rank direction is left-right or right-left)
* Include convolution and pooling parameters within node names
* Distinct colors for convolution, pooling and inner product nodes

If any of these changes are particularly offensive, I'm amenable to restoring the default behavior and exposing the changes via optional command line parameters.

# Change this drab, ho-hum-looking network graph:
![old](https://cloud.githubusercontent.com/assets/1332812/5381868/2a5606e0-805a-11e4-895e-08f63b2d62c3.png)

# To this amazing one!
![new_bt](https://cloud.githubusercontent.com/assets/1332812/5381879/4083d49c-805a-11e4-9576-f37105c71a5c.png)

# Plotted horizontally by default:
![new_lr](https://cloud.githubusercontent.com/assets/1332812/5381893/5c582470-805a-11e4-89d3-67f19582f4c4.png)