https://github.com/gephi/gephi-plugins-bootcamp
Out of the box plug-ins development suite. Contains examples for all types of plug-ins.
https://github.com/gephi/gephi-plugins-bootcamp
Last synced: 10 months ago
JSON representation
Out of the box plug-ins development suite. Contains examples for all types of plug-ins.
- Host: GitHub
- URL: https://github.com/gephi/gephi-plugins-bootcamp
- Owner: gephi
- Created: 2011-11-20T22:53:20.000Z (over 14 years ago)
- Default Branch: master
- Last Pushed: 2022-04-07T19:38:07.000Z (about 4 years ago)
- Last Synced: 2025-08-09T00:38:29.276Z (11 months ago)
- Language: Java
- Homepage:
- Size: 107 MB
- Stars: 70
- Watchers: 24
- Forks: 130
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Gephi Plugins Bootcamp
Get started with the [Gephi](http://gephi.org) Platform and start to create [Gephi Plugins](https://gephi.org/plugins/#/) by looking at these examples.
The Gephi Plugins Bootcamp is the best sources of examples and good practices to create all types of plug-ins (layout, filter, io, visualization, ...). Consult the [**Javadoc**](https://gephi.org/javadoc/0.9.3/) to discover the different APIs. Documentation is also available on the [Gephi Plugins](https://github.com/gephi/gephi-plugins) repository.

## What's inside?
Complete list of the plug-ins examples included in the bootcamp:
### Layout
* **Grid Layout**
* Place all nodes in a simple grid. Users can configure the size of the area and the speed.
* **Sorted Grid Layout**
* Same example as Grid Layout but users can sort nodes with an attribute column.
### Filter
* **Transform to Undirected**
* Edge filter to remove mutual edges in a directed graph.
* **Top nodes**
* Keep the top K nodes using an attribute column.
* **Remove Edge Crossing**
* Example of a complex filter implementation which removes edges until no crossing occurs.
### Tool
* **Find**
* Tool with an autocomplete text field to find any node based on labels and zoom by it.
* **Add Nodes**
* Listen to mouse clicks and adds nodes. Also adds edges if selecting other nodes.
### Export
* **JPG Export**
* Vectorial export to the JPG image format. Contains a settings panel to set the width and height.
* **SQLite Database Export**
* Current graph export to a SQLite Database file. A new sub-menu is added in the Export menu and an example of a custom exporter is shown.
### Preview
* **Highlight Mutual Edges**
* Colors differently mutual edges. Overwrites and extends the default edge renderer.
* **Glow Renderer**
* Adds a new renderer for node items which draws a glow effect around nodes.
* **Node Z-ordering**
* Extends the default node builder by reordering the node items by size or any number columns. Also shows how to create complex Preview UI.
* **Square shaped nodes**
* Demonstrates how to extend and replace a default renderer. Extends node default renderer to support square shaped nodes.
### Import
* **Matrix Market Importer**
* File importer for the Matrix Market format.
### Statistic
* **Count Self-Loop**
* Example of a statistics result at the global level. Simply counts the number of self-loop edges in the graph.
* **Average Euclidean Distance**
* Example of a per-node calculation. For a given node it calculates the average distance to others.
### Generator
* **Simple generator**
* Hello world generator which creates a two nodes network.
* **Streaming generator**
* Shows how to create a continuous generator using threads.
### Data laboratory
* **Interactive sparkline**
* Table cell action that shows an interactive sparkline of a number list or dynamic number.
* **Convert column to dynamic**
* Column action that replaces a column with its dynamic equivalent with a defined interval.
* **Invert row selection**
* General action (plugin) that inverts the current table row selection.
* **Equal values merge strategy**
* Column merge strategy that creates a new boolean column with values indicating if the two given columns have the same value.
* **Set node(s) color**
* Nodes action that edits the color of one or more nodes
### Plugins sub-menu
* **Test action**
* Simple action which display a message and a dialog.
* **Remove self loops**
* Action which accesses the graph and remove self-loops, if any.
* **Using Progress and Cancel**
* Action which creates a long task and execute it with progress and cancel support.
### Execute at startup
* **When UI is ready**
* Do something when the UI finished loading.
* **Workspace select events**
* Do something when a workspace is selected.
### Processor
* **Initial Position**
* Set up the nodes' initial position always the same. It calculates a hash with all nodes so the X/Y position is randomized always in the same way.
### New Panel
* **New panel**
* Example of a new panel plugin set up at the ranking position.