Skip to main content

Colorful Expanding Triangulations and Sliceable Rectangular Graphs

There is a whole area of study on visualisations called cartograms - most appealing are the ones that make countries look like inflated or deflated balloons. The rectangular versions of these are less pretty, but more interesting to me from a graph theory perspective.

I came across this subject via an impressive masters thesis by Vincent Kusters : '
Characterizing Graphs with a Sliceable Rectangular Dual' … which is a title that will take some explaining. Firstly, what is a 'rectangular dual' when it's at home? Well check this out:

Clearly the thing on the left is a graph, and on the right is its rectangular dual - in fact, this is the smallest 'sliceable' dual. By sliceable, I mean that the white rectangles can be made by recursively slicing up a rectangle. For example, if a slice is like [{0, 3, 4, 5, 6}, {1, 2}] for making the first split into the areas of 1 and 2 on the right, and all the rest on the left. The next could be [{0}, {3, 4, 5, 6}] and so on.

The colors of the graph indicate a top/bottom cut in red, and a left/right cut in blue. So rectangles 0 and 1 share a left-right (blue) boundary, while 0 and 4 share a top-bottom (red) boundary. The square nodes [T, R, B, L] are the 'corners', and serve to anchor the dual. There's a lot of detail that I'm skipping here, but this is the broad picture.

Interestingly - for me - Kuster's work makes use of a program called Plantri made by none other than Gunnar Brinkmann and Brendan McKay. It generates planar triangulations - which rectangular duals are examples of - and then colors them to make proper duals. The way Plantri works is fairly familiar; canonical path augmentation but with a restricted set of operations to add vertices and edges:


Starting from K4 - the complete graph on 4 vertices - these 'expansions' are applied to graphs while rejecting duplicates using CPA. Now the thing that occurs to me is the possibility of expanding while maintaining the colorings of a rectangular dual. For example:



These are just examples of E5 from the picture before, but starting from particular colorings, and expanding only to particular colorings. As can be seen from the rectangular slices to the side of each graph, these expansions are 'compatible' in some sense with changes in the dual. Whether this is a meaningful operation or not, I'm not sure. There are a number of possible such expansions, but not a huge number. Here are a couple more:


Note that B and C are the same, but expand to different possible colorings. Also that the outer cycle colors are preserved, along with the some of the internal edges. That is no particular coincidence, since they were chosen specifically to preserve as many of the edges colors as possible.

Interesting, but not yet conclusive in any way.

Comments

Popular posts from this blog

Adamantane, Diamantane, Twistane

After cubane, the thought occurred to look at other regular hydrocarbons. If only there was some sort of classification of chemicals that I could use look up similar structures. Oh wate, there is . Anyway, adamantane is not as regular as cubane, but it is highly symmetrical, looking like three cyclohexanes fused together. The vertices fall into two different types when colored by signature: The carbons with three carbon neighbours (degree-3, in the simple graph) have signature (a) and the degree-2 carbons have signature (b). Atoms of one type are only connected to atoms of another - the graph is bipartite . Adamantane connects together to form diamondoids (or, rather, this class have adamantane as a repeating subunit). One such is diamantane , which is no longer bipartite when colored by signature: It has three classes of vertex in the simple graph (a and b), as the set with degree-3 has been split in two. The tree for signature (c) is not shown. The graph is still bipartite accordin

Király's Method for Generating All Graphs from a Degree Sequence

After posting about the Hakimi-Havel  theorem, I received a nice email suggesting various relevant papers. One of these was by Zoltán Király  called " Recognizing Graphic Degree Sequences and Generating All Realizations ". I have now implemented a sketch of the main idea of the paper, which seems to work reasonably well, so I thought I would describe it. See the paper for details, of course. One focus of Király's method is to generate graphs efficiently , by which I mean that it has polynomial delay. In turn, an algorithm with 'polynomial delay' takes a polynomial amount of time between outputs (and to produce the first output). So - roughly - it doesn't take 1s to produce the first graph, 10s for the second, 2s for the third, 300s for the fourth, and so on. Central to the method is the tree that is traversed during the search for graphs that satisfy the input degree sequence. It's a little tricky to draw, but looks something like this: At the top

General Graph Layout : Putting the Parts Together

An essential tool for graph generation is surely the ability to draw graphs. There are, of course, many methods for doing so along with many implementations of them. This post describes one more (or perhaps an existing method - I haven't checked). Firstly, lets divide a graph up into two parts; a) the blocks, also known as ' biconnected components ', and b) trees connecting those blocks. This is illustrated in the following set of examples on 6 vertices: Trees are circled in green, and blocks in red; the vertices in the overlap between two circles are articulation points. Since all trees are planar, a graph need only have planar blocks to be planar overall. The layout then just needs to do a tree layout  on the tree bits and some other layout on the embedding of the blocks. One slight wrinkle is shown by the last example in the image above. There are three parts - two blocks and a tree - just like the one to its left, but sharing a single articulation point. I had