Difference between revisions of "FORCE DIRECTED NETWORK (SPRING ALGORITHM) GRAPH VIEWER"
Ppwikiuser (talk | contribs) (→Third Week(5.12.2014 - 12.12.2014)) |
Ppwikiuser (talk | contribs) (→Fourth Week(13.12.2014 - 18.12.2014)) |
||
Line 91: | Line 91: | ||
==Fourth Week(13.12.2014 - 18.12.2014)== |
==Fourth Week(13.12.2014 - 18.12.2014)== |
||
Report, work on Spread Layout Algorithm. Some functions parallelized if possible. |
Report, work on Spread Layout Algorithm. Some functions parallelized if possible. |
||
+ | *Worked on visualization of 2000 nodes and corresponding edges using different features: |
||
+ | **Different layouts |
||
+ | **Zooming enabled and disabled |
||
+ | **Calculating the time for rendering of the layout. |
||
==Fifth Week(19.12.2014 - 29.12 .2014)== |
==Fifth Week(19.12.2014 - 29.12 .2014)== |
Revision as of 23:12, 30 December 2014
The objective of this project is to visualize a network (large networks of >2000 nodes) in a way that the distance of a node from the rest of the network is determined by the number of nodes it is connected to => the more neighbors a node has the larger is its distance from the network. The component must allow zooming in/out, selection by the number of neighbors, coloring by various thresholds and other graph-related features.
Contents
- 1 Introduction
- 2 Mockups
- 3 Application Design
- 4 Data
- 5 RoadMap
- 5.1 Roadmap for Implementation
- 5.2 First Week(21.11.2014 - 27.11.2014)
- 5.3 Second Week(28.11.2014 - 4.12.2014)
- 5.4 Third Week(5.12.2014 - 12.12.2014)
- 5.5 Fourth Week(13.12.2014 - 18.12.2014)
- 5.6 Fifth Week(19.12.2014 - 29.12 .2014)
- 5.7 Sixth Week(30.12.2014 - 05.01 .2015)
- 5.8 08.01.2015 Final Presentation
- 5.9 15.01.2015 Submission Deadline
- 6 Source Code
- 7 People
- 8 Additional Links
Introduction
Force Directed Network is obtained by using the Force-directed graph drawing algorithms(SPRING ALGORITHM). This algorithm is mainly based on the forces assigned among the set of nodes and edges of a graph.The forces can be either atractive which is used to attract pairs of endpoints of the graph's edges towards each other or repulsive which is used to seperate all pairs of nodes.In equilibrium states for this system of forces,the edges tend to have uniform length(using spring forces) and the nodes which are not connected by any edge tend to be drawn further apart(due to electrical repulsion).
Mockups
Functionality
- Zoom in and Zoom out of the graph.
- Distance of a node from the rest of the network is determined by the number of nodes it is connected to.
- Selection by the number of neighbors
- Coloring by various thresholds
- Dividing the whole network into module based on the modularity.
- Applying filters.
- Defining the layout of your choice.
- Exporting the visualisation as an image.
Features
- Import from Text format
- Export to image
- Visualization Using FORCE DIRECTED NETWORK
Application Design
- Fancy Libraries
- d3.js
- jQuery
- JavaScript InfoVis Toolkit
https://www.youtube.com/watch?v=3qo6EqwWmS0
Data
The input data should be in json/csv format
E.g: var json = [{
"adjacencies": [ "graphnode21", { "nodeTo": "graphnode1", "nodeFrom": "graphnode0", "data": { "$color": "#557EAA" } }, { "nodeTo": "graphnode13", "nodeFrom": "graphnode0", "data": { "$color": "#909291" } }, { "nodeTo": "graphnode14", "nodeFrom": "graphnode0", "data": { "$color": "#557EAA" } }]
RoadMap
Roadmap for Implementation
Cytoscape Worker API :
https://github.com/cytoscape/cytoscape.js/blob/unstable/src/worker.js
First Week(21.11.2014 - 27.11.2014)
- Got to know what and how force directed graph works
- Deciding on the libraries to be used for the implementation
- Understood how spring layout works.
Second Week(28.11.2014 - 4.12.2014)
- Explored about cytoscape and went through the list of issues sent by Max.
- Started working on web workers.
- Got Clarified the doubts related to web workers from Max's implementation.
- Started exploring about benchmark.js and parallel.js
Third Week(5.12.2014 - 12.12.2014)
- Did parallization using circle layout with the web workers implementation
Github repository: https://github.com/Ahsanzia/FDG
- Started working on the web worker implementation for spread layout
Fourth Week(13.12.2014 - 18.12.2014)
Report, work on Spread Layout Algorithm. Some functions parallelized if possible.
- Worked on visualization of 2000 nodes and corresponding edges using different features:
- Different layouts
- Zooming enabled and disabled
- Calculating the time for rendering of the layout.
Fifth Week(19.12.2014 - 29.12 .2014)
Run the first Layout Algorithm (pick one algorithm) with multiple cores (parallelized) Test and BenchmarkJS
Sixth Week(30.12.2014 - 05.01 .2015)
08.01.2015 Final Presentation
15.01.2015 Submission Deadline
Source Code
People
- PP2_CS_2014 mentors, Björn Grüning (Galaxy) gruening. (at) .informatik.uni-freiburg.de
- Students: Kommanapalli Vasantha Kumari,Anuradha Ganapati,Ahsan ZiaUllah