GravMap: Organizational Influence Visualization
Overview
GravMap is an interactive web-based tool that visualizes organizational relationships and influence through a physics-based network diagram. Unlike traditional hierarchical org charts, GravMap represents team dynamics as a gravitational system where each person's influence affects others through attractive and repulsive forces.
Features
- Physics-Based Visualization: Nodes (people) interact through simulated gravitational forces based on influence scores and relationships
- Dynamic Relationships: Connect individuals to visualize reporting lines and cross-functional relationships
- Interactive Interface: Drag, hover, and explore the network
- Real-Time Updates: Add and remove nodes
- Influence Gradient: Visual representation of influence levels through color coding and node size
- Beautiful UI: Starry background and glowing node effects
Live Demo
How It Works
GravMap uses a custom physics engine to simulate organizational dynamics:
- Nodes: Each person is represented as a node with properties:
- Name: The individual's name or role
- Influence: A score from 1-10 representing their organizational impact
- Relationships: Connections to other nodes
- Physics:
- Related nodes attract each other, with force proportional to combined influence
- The most influential node becomes the "central node" that others orbit around
- Nodes with lower influence tend to orbit those with higher influence
- Visual Cues:
- Node size represents influence
Getting Started
Prerequisites
- A modern web browser (Chrome, Firefox, Safari, or Edge)
Installation
- Clone the repository:
git clone <https://github.com/edisedis777/gravmap.git>
- Open
index.html
in your browser
That's it! No build process or dependencies to install.
Usage
- Add a Node: Enter name, influence score (1-10), and select relationships
- Remove a Node: Click the "×" button on the node in the list
- Randomize: Shuffle node positions while maintaining physics rules
- Explore: Hover over nodes to see detailed information
- Interact: Drag nodes to manually position them
Technical Details
GravMap is built with pure JavaScript, HTML and CSS. The visualization uses the Canvas API for efficient rendering.
-
script.js
: Core application logic, physics engine, and rendering -
styles.css
: Visual styling and layout -
index.html
: Application structure and UI elements
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
Credits
GravMap was inspired by the article Gravity Maps: An Alternative to Org Charts by Janna Bastow. The article describes how traditional org charts fail to capture the complex dynamics of modern organizations and proposes gravity maps as a more nuanced representation.
License
Distributed under the GNU Affero General Public License v3.0 License. See LICENSE
for more information.