The Bipartite Network Graph algorithm plots a bipartite network (a network with exactly two distinct types of nodes) where nodes have an attribute bipartitetype. For instance, in the images at Sample Visualizations section shows one type of nodes represents a person, and the other type represents an award. The Extract Bipartite Network algorithm is an easy way to generate networks that are graph-able by this plugin.

The nodes and edges can each be independently weighted. The algorithm chooses which column to put a node in based on a node attribute called "bipartitetype". For details on the input format, see Usage Hints below.

Pros & Cons

It's easy to see the network structure in bipartite networks, because of the obvious separation between the two different node types. However, medium to large networks (50+ nodes) may not look very good.

Menu Path

Visualization -> Networks -> Bipartite Network Graph

Input Parameters




Layout Type

Layout the resulting visualization for print use or web use

PRINT selects a version that is better for use with printing and WEB selects larger, simplier version for use in a webpage

Left Side Node Type

The value from the bipartitetype node attribute that should be used for the left side

The other value will be used for the right side See #Usage Hints for details of bipartitetype

Node Size

The node attribute by which to size the nodes

If none is selected, the nodes will be sized equally

Edge Weight

The edge attribute by which to size and color the arrows

If none is selected, the edges will be equally sized and of the same color

Title for left column

The title to put above the left side

If blank, the value of the node attribute "bipartitetype" for the left side will be used

Title for right column

The title to put above the right side

If blank, the value of the node attribute "bipartitetype" for the right side will be used





Bipartite Network Graph PS

A PS file of the visualization


Sample Visualizations

PRINT Layout

Simplified Layout

Usage Hints

This is the network file (NWB (.nwb) format) that was used to generate the example graphs above:


id*int label*string  totaldesirability*int bipartitetype*string
1   "Applicant's Proposal" 1 "Who"
2   "Kiss My Red Ruby Lips" 5 "What"
3   "Shoe My Pretty Little Feet" 10 "What"
4   "Glove My Hand" 9 "What"
5   "Be My Man" 4 "What"
6   "Papa" 9 "Who"
7   "Mama" 8 "Who"
8   "Sister" 4 "Who"
9   "No Man" 3 "Who"
source*int target*int linkdesirability*int
1   4    1
1   2    1
1   3    1
1   5    1
6   3    9
7   4    8
8   2    4
9   5    3


The nodes are required to have an attribute called "bipartitetype". Note that in the above network, the two values of "bipartitetype" are "Who and "What". These are also the titles of the columns in the graph. This attribute is used to determine which column the nodes should go in. You can generate your own network with this attribute, or you can use the Extract Bipartite Network algorithm.

The weights ("totaldesirability" and "linkdesirability") were generated using an aggregation function file with the Extract Bipartite Network algorithm. For more on this, see Extract Bipartite Network and the Extract Co-Occurrence Networkpage (for info on aggregation functions).

To generate the graph file above, I imported no-man.csv into Sci2, then ran the Extract Bipartite Network algorithm. I chose "Who" and "What" as the First and Second Column parameters, and used aggfunc-man.txt as the Aggregate Function File. I saved the resulting file as a NWB file.


See Also