Rhea's Graph Analytic Tool

This program was written by Ph.D. student Sangchun Han as a response to Rhea's software bounty offer to develop a wiki analysis tool.

Rhea's Graph Analytic Tool is a Java program that analyzes the data of a MediaWiki database. More specifically, it constructs a graph representing the network of authors (i.e., the users that have contributed to the wiki). The vertices of a graph are authors; an edge is drawn between two vertices if the corresponding two authors have written on the same page of the wiki. The graph is displayed, along with different statistics about the graph. As the graph of author can be too big to effectively visualize, the program enables the user to randomly generate several types of subgraphs. The user-generated graphs can be imported.

The program shows the up-to-date information because it analyzes the database every time the program is launched. Because of this, it may take some time before the data can be seen. So if you see nothing but a blank area within the app, please be a little patient and.

How to run?

This program uses Java Web Start. Thus, in order to run it, Java must be installed on your computer. You can check whether Java is working on your computer by going to this page. Note that, if you can use Assimi, then you should not have any problem.

Please click here to launch the program. It takes time to load the program at first. Please wait until the analysis of Rhea is finished and represented in visual components; chats and graph.

Source code

You can download the complete source code here.

Note that Rhea Graph Analytic Tool is licensed under the terms of the GPL version 3.

How to use?

This program is based on coauthor network. The nodes of a graph are authors and the edges of a graph is an occurrence of writing same page. There are six tabs; Summary for Graph, Graph, Summary for Component, Charts for Component, Matrix for Component, and Growth of Rhea.

  • Component Selection: select the component to show the result of analysis.
    • The number in the parenthesis is the order of a component.
    • This is used for three tabs; Summary for Component, Charts for Component, and Matrix for Component.
  • (Tab) Summary for Graph
    • Order: the number of nodes in the graph
    • Size: the number of edges in the graph
    • # of isolated node: the number of nodes that has no edge
  • (Tab) Graph
    • Redraw: redraw the graph
    • Graph Layout
      • Random: place nodes randomly
      • Organic
      • Circle
      • Partition
      • Stack
    • +: Zoom in
    • -: Zoom out
  • (Tab) Summary for Component
    • Order: the number of nodes in the component
    • Size: the number of edges in the component
    • Radius: the minimum eccentricity
    • Diameter: the maximum eccentricity
    • Average distance
    • Max degree
    • Min degree
    • Average degree
    • Coeff(degree, avg distance)
    • Coeff(degree, eccentricity)
    • Coeff(avg degree, eccentricity)
  • (Tab) Charts for Component
  • (Tab) Matrix for Component
    • The scrollbars may not appear at first. By resizing the window, you can make use scrollbars.
  • (Tab) Growth of Rhea
    • It is recommended to use a "month" as a time interval for cumulative charts because of performance issue.
  • Operation ---> Reconnect to Rhea
  • Operation ---> Open File
    • File: file name to open
    • Year: the time of interest
    • <=: less than or equal to "Year" (if not, equal to "Year")
    • Example File: the first column is for the first node, the second column is for the second node, and the third column is for the "Year"
				4	7	0
				8	7	0
				12	7	0
				8	1	0
				6	4	0
				4	14	0
  • Simulation ---> G(n,m)
  • Simulation ---> G(n,p)
  • Simulation ---> Random Regular
  • Simulation ---> Preferential attachment

Questions or Comments

  • Write a question or a comment here
    • answer will be written here
  • write another question or a comment here
    • answer will be written here.

Back to Sangchun Han's user page

Back to software bounty page

Alumni Liaison

Recent Math PhD now doing a post-doctorate at UC Riverside.

Kuei-Nuan Lin