Graph to visualize common attributes

Feb 20, 2014 at 9:20 PM
Hello all,

I have a basic graph visualization question (I'm very new to this):

From what I found till now I get the idea how to make graphs of the type:
"Alice is a friend of Bob" and "Bob is a friend of Charlie"
Then the corresponding graph shows three nodes (A,B,C) connecting A to B and B to C, and not A to C.

Now I would like to make a graph with different type of data:
Alice - female - Pizza
Bob - male - Pizza
Charlie - male - Pasta

It should display three nodes (A,B,C), connecting A to B because both Alice and Bob like pizza. But the graph should not display a node "pizza", i.e. Alice and Bob have a kind of 2nd order connection through their common love for pizza.
Also I would like to see B connected to C because Bob and Charlie are both male (but with a different edge color than for the food preference)

Moreover, I don't want to specify manually that Alice and Bob are connected by defining an edge between them. Because for that I have to compare all members of the database by their attributes. i.e. I want to introduce members in a database with their individual attributes, and then I want to automatically generate a graph to visualize relations between database members.

Could someone help me with this? Or perhaps is graph software not the best tool for this?
Feb 24, 2014 at 2:23 PM
Edited Feb 24, 2014 at 2:24 PM

Thank you for the interest in NodeXL.

Networks can be composed of a single type of entity (unimodal) or multiple types of entities (multimodal).

Connections in a network can all be of the same type (uniplex) or contain many types of connections (multiplex).

Networks are expressed in NodeXL in the form of:
 Entity 1, Entity 2, Connection type, Connection Attributes, Entity 1 Attributes, Entity 2 Attributes
I would rewrite the relationships you describe above in the following form:
 Alice, Pizza, (Alice is) Female
 Bob, Pizza, (Bob is) Male
 Charlie, Pasta, (Charlie is) Male
In this case the Vertex Gender is an attribute of the Vertex but is not represented as a connection to a Vertex called "Male" or "Female".

If you do want "Male" and "Female" to be an Entity in the network (which would be odd but you may have your reasons), you would create the following edges:
 Alice, Pizza
 Alice, Female
 Bob, Pizza
 Bob, Male
 Charlie, Pasta
 Charlie, Male
But now you have the issue of have not just two modes of Entities (People and Foods), now you have three modes of Entities (People, Foods, and Genders).

Hope this helps!