Skip to end of metadata
Go to start of metadata

Consider a sample graph (|V|=4, |E|=3), 'sample_graphs/':

digraph Simple {
A [pos=4] # node 'A'
B [pos=8] # node 'B'
C [pos=16] # node 'C'
D [pos=2] # node 'D'
A -> B [cost=4] # edge from 'A' to 'B'
B -> C [cost=8] # edge from 'B' to 'C'
C -> D [cost=14] # edge from 'C' to 'D'


Create a hive plot with default settings

To visualize this network as a hive plot, load this DOT file into jhive by either:

  • dragging the DOT file into the thumbnails list of the main window, or
  • dragging the DOT file into the Graph Files Manager, or
  • locating the DOT file from 'Open Graph Files...' in the 'File' menu.


The hive plot would be generated using the default coordinate system:



This is the default hive plot:

Label nodes on a hive plot

There are tooltips for node names as you hover the cursor over the node. If you like, you can label all nodes with the format rule:

n() [label]

Remember to click the "Apply" button after adding/removing format rules!


Clone an axis to reveal intra-axial edges

You see 4 nodes but only 2 edges here. So, where is the edge between nodes B and C?

By default, jhive only shows inter-axial edges. To reveal intra-axial edges, double-click the label for axis 2 "a2" to clone axis 2:

The edge between nodes B and C is revealed.

Double-click the axis labels, either "a2" or "a2'", to collapse the cloned axis.

Define a new coordinate system

You can define a new coordinate system using a completely different combination of node properties or attributes.

Let's use the node attribute pos for both axis and positions assignments.


Node attributes are blue and have a dollar sign prefix in the Axis and Position drop-down lists.

In the Axis column, select $pos in the drop-down list and enter these conditions into the 3 textfields:

x>5 && x<=10



The blank a3 condition is intentional. It is equivalent to the condition "x>10".

A blank condition is the wild card for nodes not satisfying the conditions for the other axes.


In the Position column, select $pos in the top-most drop-down list.


The other 3 drop-down lists are axis-specific. It is possible to assign a different parameter for each axis.

This is the resulting hive plot:

Normalize the scale of axes

By default, the 3 axes are in the same scale. Normalization would magnify each axis to the smallest non-disjoint interval that contains all nodes assigned to the axis.

In the Position column, check the "normalize" checkbox. This is the resulting hive plot:


Reverse the axis orientation

Like a Cartesian coordinate system, position values increase as moving away from the origin, regardless of which node property/attribute was chosen for each axis. The axis orientation can be reversed.

In the Reverse column, check the top-most checkbox. This is the resulting hive plot:

Notice here that nodes A and D have swap their positions.

Change the opacity of nodes and edges

The default opacity for nodes and edges is 50%. The opacity for all nodes and edges in the hive plot can be set with the "min opacity" sliders under the Edge and Node columns.

Let's set the opacity of all nodes and edges to 100%:

Notice that the colors appear more saturated now.

Change the thickness of edges and size of nodes

Edges have a default thickness of 1 pixel and nodes have a default radius of 5 pixels.

The thickness for all edges can be set with the "thickness" slider.

The radius of all nodes can be set with the "size" slider.

Let's set the edge thickness to 3 pixels and the node radius to 10 pixels:

Change the color of edges, nodes, and the background

ItemDefault Color

The color of all edges can be set with the Edge "color" drop-down list.

The color of all nodes can be set with the Node "color" drop-down list.

The background color can be reversed (black) by checking from "Reverse background color" checkbox in the "View" menu.


Notice the color of axes, labels, and the graph name is white when the background color is reversed.

  • No labels