Code Monkey home page Code Monkey logo

gephi's Introduction

Gephi - The Open Graph Viz Platform

build Downloads Downloads Translation progress

Gephi is an award-winning open-source platform for visualizing and manipulating large graphs. It runs on Windows, Mac OS X and Linux. Localization is available in English, French, Spanish, Japanese, Russian, Brazilian Portuguese, Chinese, Czech, German and Romanian.

  • Fast Powered by a built-in OpenGL engine, Gephi is able to push the envelope with very large networks. Visualize networks up to a million elements. All actions (e.g. layout, filter, drag) run in real-time.

  • Simple Easy to install and get started. An UI that is centered around the visualization. Like Photoshop™ for graphs.

  • Modular Extend Gephi with plug-ins. The architecture is built on top of Apache Netbeans Platform and can be extended or reused easily through well-written APIs.

Download Gephi for Windows, Mac OS X and Linux and consult the release notes. Example datasets can be found on our wiki.

Gephi

Install and use Gephi

Download and Install Gephi on your computer.

Get started with the Quick Start and follow the Tutorials. Load a sample dataset and start to play with the data.

If you run into any trouble or have questions consult our discussions.

Latest releases

Stable

Development builds

Development builds are generated regularly. Current version is 0.10.2-SNAPSHOT

Developer Introduction

Gephi is developed in Java and uses OpenGL for its visualization engine. Built on the top of Netbeans Platform, it follows a loosely-coupled, modular architecture philosophy. Gephi is split into modules, which depend on other modules through well-written APIs. Plugins can reuse existing APIs, create new services and even replace a default implementation with a new one.

Consult the Javadoc for an overview of the APIs.

Requirements

  • Java JDK 11 (or later)

  • Apache Maven version 3.6.3 or later

Checkout and Build the sources

  • Fork the repository and clone

      git clone [email protected]:username/gephi.git
    
  • Run the following command or open the project in an IDE

      mvn -T 4 clean install
    
  • Once built, one can test running Gephi

      cd modules/application
      mvn nbm:cluster-app nbm:run-platform
    

Note that while Gephi can be built using JDK 11 or later, it currently requires JDK 11 to run.

Create Plug-ins

Gephi is extensible and lets developers create plug-ins to add new features, or to modify existing features. For example, you can create a new layout algorithm, add a metric, create a filter or a tool, support a new file format or database, or modify the visualization.

Gephi Toolkit

The Gephi Toolkit project packages essential Gephi modules (Graph, Layout, Filters, IO…) in a standard Java library which any Java project can use for getting things done. It can be used on a server or command-line tool to do the same things Gephi does but automatically.

Localization

We use Weblate for localization. Follow the guidelines on the wiki for more details how to contribute.

Icons

Gephi uses icons from various sources. The icons are licensed under the CC BY 3.0 license.

All icons can be found in the DesktopIcons module, organised by module name.

License

Gephi main source code is distributed under the dual license CDDL 1.0 and GNU General Public License v3. Read the Legal FAQs to learn more.

Copyright 2011 Gephi Consortium. All rights reserved.

The contents of this file are subject to the terms of either the GNU General Public License Version 3 only ("GPL") or the Common Development and Distribution License ("CDDL") (collectively, the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the License at http://gephi.github.io/developers/license/ or /cddl-1.0.txt and /gpl-3.0.txt. See the License for the specific language governing permissions and limitations under the License. When distributing the software, include this License Header Notice in each file and include the License files at /cddl-1.0.txt and /gpl-3.0.txt. If applicable, add the following below the License Header, with the fields enclosed by brackets [] replaced by your own identifying information: "Portions Copyrighted [year] [name of copyright owner]"

If you wish your version of this file to be governed by only the CDDL or only the GPL Version 3, indicate your decision by adding "[Contributor] elects to include this software in this distribution under the [CDDL or GPL Version 3] license." If you do not indicate a single choice of license, a recipient has the option to distribute your version of this file under either the CDDL, the GPL Version 3 or to extend the choice of license to its licensees as provided above. However, if you add GPL Version 3 code and therefore, elected the GPL Version 3 license, then the option applies only if the new code is made subject to such option by the copyright holder.

gephi's People

Contributors

baiacu avatar bgamari avatar comradekingu avatar daniel-bernardes avatar eduramiba avatar fluffypanda69 avatar hiikiim avatar jacomyma avatar jbliesener avatar joyjoy-code avatar kant avatar kekcycle avatar kilida avatar kirill-vlasov avatar magdalenat avatar mavridisf avatar mbastian avatar nicolasbchb avatar nkilders avatar ooof avatar sheymann avatar tarasklas avatar taynaud avatar totetmatt avatar we4p0x avatar weblate avatar wetneb avatar xiewei18 avatar yonromai avatar ypanagis avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gephi's Issues

Gephi does not start (Win7 64)

OS: Windows 7 64 bits
Version: Gephi 0.7a4

Gephi does not launch at all. It was installed using a local admin account. Trying to run gephidesktop.exe results in the following error:

"Your user directory (C:\Program Files (x86)\Gephi-0.7) cannot reside inside your NetBeans installation directory (C:\Program Files (x86)\Gephi-0.7)."

Environment parameters:
HOMEDRIVE=C:
HOMEPATH=\Users\raynorvliegendhart

Workaround:
Change default_userdir in gephidesktop.conf from "${HOME}/.${APPNAME}/dev" to the hardcoded path "c:/Users/raynorvliegendhart/".


Imported from Launchpad using lp2gh.

Installation on Mac OS X v 10.5.8

Hello,
I've installed Gephi-0.7 on a Mac OS X v 10.5.8.
When I run the software I only obtain a short menu: GephiDesktop and no other functions.
I can correctly used this same software on my PC Windows.
I thank you by advance
Best resgards
Bénédicte B.


Imported from Launchpad using lp2gh.

ArrayIndexOutOfBoundsException on loading project

Error on loading the file attached :

java.lang.ArrayIndexOutOfBoundsException: 65539
at gephi.io.fileformat.GephiReader.readWorkSpace(GephiReader.java:190)
at gephi.io.fileformat.GephiReader.readProject(GephiReader.java:122)
at gephi.io.fileformat.GephiReader.readEverything(GephiReader.java:86)
at gephi.io.ProjectFileRecorder$ProjectInputStream.readProject(ProjectFileRecorder.java:264)
at gephi.io.ProjectFileRecorder.readProject(ProjectFileRecorder.java:87)
at gephi.io.ProjectFileRecorder.readProject(ProjectFileRecorder.java:111)
at gephi.controller.desktop.DesktopProjectController$2.run(DesktopProjectController.java:215)
at java.lang.Thread.run(Thread.java:619)
Exception in thread "Thread-9" java.lang.NullPointerException
at gephi.controller.desktop.DesktopProjectController$2.run(DesktopProjectController.java:216)
at java.lang.Thread.run(Thread.java:619)


Imported from Launchpad using lp2gh.

Gephi does not build on JDK 7

Like the summary says, Gephi can't be built with JDK 7.

The problem is that PDF Exporter depends on the sun.font.FontManager class, which is an "internal proprietary API", according to the build log:

Compiling 3 source files to /home/luiz/projects/bzr/gephi/PreviewExport/build/classes
warning: [options] bootstrap class path not set in conjunction with -source 1.5
/home/luiz/projects/bzr/gephi/PreviewExport/src/org/gephi/io/exporter/preview/PDFExporter.java:68: warning: FontManager is internal proprietary API and may be removed in a future release
import sun.font.FontManager;
Note: org.gephi.io.exporter.preview.ExporterBuilderPDF to be registered as a org.gephi.io.exporter.spi.VectorFileExporterBuilder
/home/luiz/projects/bzr/gephi/PreviewExport/src/org/gephi/io/exporter/preview/PDFExporter.java:68: warning: FontManager is internal proprietary API and may be removed in a future release
import sun.font.FontManager;
/home/luiz/projects/bzr/gephi/PreviewExport/src/org/gephi/io/exporter/preview/PDFExporter.java:68: warning: FontManager is internal proprietary API and may be removed in a future release
import sun.font.FontManager;
/home/luiz/projects/bzr/gephi/PreviewExport/src/org/gephi/io/exporter/preview/PDFExporter.java:467: warning: FontManager is internal proprietary API and may be removed in a future release
String fontName = FontManager.getFileNameForFontName(font.getFontName());
/home/luiz/projects/bzr/gephi/PreviewExport/src/org/gephi/io/exporter/preview/PDFExporter.java:467: error: cannot find symbol
String fontName = FontManager.getFileNameForFontName(font.getFontName());
symbol: method getFileNameForFontName(String)
location: interface FontManager
/home/luiz/projects/bzr/gephi/PreviewExport/src/org/gephi/io/exporter/preview/PDFExporter.java:469: warning: FontManager is internal proprietary API and may be removed in a future release
String fontFilePath = FontManager.getFontPath(false);
/home/luiz/projects/bzr/gephi/PreviewExport/src/org/gephi/io/exporter/preview/PDFExporter.java:469: error: cannot find symbol
String fontFilePath = FontManager.getFontPath(false);
symbol: method getFontPath(boolean)
location: interface FontManager
2 errors
6 warnings
/usr/share/netbeans/harness/common.xml:206: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 3 seconds)

If I comment the lines 467 to 472 from PDFExporter.java, everything builds just fine, so we just need to find an alternative to calling FontManager's getFileNameForFontName and getFontPath methods.


Imported from Launchpad using lp2gh.

Partition error on filterted graph

Way to reproduce:

  1. Open a graph with a partition attribute
  2. Select the attribute entry in the partition module and apply
  3. Go to filter, create a "Degree Range" filter
  4. Go back to partition, unselect the current partition
  5. Take back the partition
    Exception

Imported from Launchpad using lp2gh.

Meta-edges are not displayed

Meta-edges are not displayed. Works when some normal edge is in the graph.

Way to reproduce:

  1. Open a graph file with partitions or use Modularity to create partition
  2. Use Partition to group the network
    Meta-edges should be shown between groups.

Imported from Launchpad using lp2gh.

Project load/save interface fails

File > Open Project > Cancel
--> open the file explorer window instead of doing nothing

File > New Project > Cancel
--> reset the project instead of doing nothing


Imported from Launchpad using lp2gh.

Maximum lock count exceeded error when running Label Adjust

Stack trace:
java.lang.Error: Maximum lock count exceeded
at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryAcquireShared(ReentrantReadWriteLock.java:395)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared(AbstractQueuedSynchronizer.java:1260)
at java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock(ReentrantReadWriteLock.java:594)
at org.gephi.graph.dhns.core.Dhns.readLock(Dhns.java:166)
at org.gephi.graph.dhns.graph.AbstractGraphImpl.readLock(AbstractGraphImpl.java:65)
at org.gephi.visualization.bridge.DHNSDataBridge.updateWorld(DHNSDataBridge.java:118)
at org.gephi.visualization.opengl.compatibility.CompatibilityEngine.updateWorld(CompatibilityEngine.java:181)
at org.gephi.visualization.opengl.compatibility.CompatibilityScheduler.updateWorld(CompatibilityScheduler.java:285)
at org.gephi.visualization.scheduler.SimpleFPSAnimator.run(SimpleFPSAnimator.java:58)


Imported from Launchpad using lp2gh.

Node Size Mode and Filter Paramaters don't save in project

I have made several graphs from gdf files and am using Topology > Degree Range Filter and Relative Node Size text labels, however saving these projects never retain the information. Kinda annoying to set this up everytime, apart from that awesome software!


Imported from Launchpad using lp2gh.

NullPointerException when switching between workspaces while a layout is running

  1. Launch Gephi and open the sample file PowerGrid.gml
  2. Create a new workspace and go to that workspace
  3. Generate a Random Graph with 500 nodes in the new workspace
  4. Launch the Force Atlas layout on this graph
  5. Switch back to workspace 0

java.lang.NullPointerException
at org.gephi.visualization.opengl.compatibility.objects.Arrow2dModel.isInOctreeLeaf(Arrow2dModel.java:199)
at org.gephi.visualization.opengl.octree.Octree.updateObjectsPosition(Octree.java:268)
at org.gephi.visualization.opengl.compatibility.CompatibilityEngine.updateObjectsPosition(CompatibilityEngine.java:636)
at org.gephi.visualization.opengl.compatibility.CompatibilityScheduler.updatePosition(CompatibilityScheduler.java:279)
[catch] at org.gephi.visualization.scheduler.SimpleFPSAnimator.run(SimpleFPSAnimator.java:58)


Imported from Launchpad using lp2gh.

Preview doesn't hide filtered elements

Preview module doesn't take in account filtering and displays nodes that are hidden by filtering.

Way to reproduce:

  1. Open graph file
  2. Create "Degree Range filter" or other filter and keep half of the graph.
  3. Click on Filter, half of the graph disappears on the Graph window.
  4. Go to Preview module and push "Refresh"
    The preview dhows the complete graph instead of the filtered graph.

Imported from Launchpad using lp2gh.

Filtering with convex hulls displayed

Way to reproduce:

  1. Open a graph
  2. Group and expand nodes. A convex hull should appear.
  3. Create a filter, "Degree Range" for example
  4. Enable filtering and move range cursor
    An Exception may be thrown

Stack trace:

java.lang.NullPointerException
at org.gephi.visualization.opengl.octree.Octree.removeObject(Octree.java:121)
at org.gephi.visualization.opengl.octree.Octree.cleanDeletedObjects(Octree.java:236)
at org.gephi.visualization.opengl.compatibility.CompatibilityEngine.worldUpdated(CompatibilityEngine.java:199)
at org.gephi.visualization.bridge.DHNSDataBridge.updateWorld(DHNSDataBridge.java:145)
at org.gephi.visualization.opengl.compatibility.CompatibilityEngine.updateWorld(CompatibilityEngine.java:181)
at org.gephi.visualization.opengl.compatibility.CompatibilityScheduler.updateWorld(CompatibilityScheduler.java:270)
at org.gephi.visualization.scheduler.SimpleFPSAnimator.run(SimpleFPSAnimator.java:57)


Imported from Launchpad using lp2gh.

Exception when changing filter parameter on a Operator

Way to reproduce:

  1. Open a graph file
  2. Create an INTERSECTION filter and add two sub-filers in it
  3. Enable filtering
  4. Change a sub-filter parameter
    An Exception is thrown

Stack trace:
ClassCastException: org.gephi.filters.OperatorQueryImpl cannot be cast to org.gephi.filters.FilterQueryImpl
java.lang.ClassCastException: org.gephi.filters.OperatorQueryImpl cannot be cast to org.gephi.filters.FilterQueryImpl
at org.gephi.filters.FilterModelImpl.updateParameters(FilterModelImpl.java:167)
at org.gephi.filters.FilterThread.run(FilterThread.java:67)


Imported from Launchpad using lp2gh.

Timeline disappears after saving project.gephi file

Hi,

this looks like a pretty annoying bug:

I'm working with dynamic timeline data, which exists in the first place as a GEXF file (sample attached to this bug report). After loading the GEXF file, I can click on the timeline 'play' button, and the timeline slider works as expected - in the case of the data I work with, network edges appear and disappear as I use the slider. (In my data, only edges have timeline information - nodes are always visible.)

If I save this project as a .gephi file and reload the project file, however, the timeline functionality no longer works, and there doesn't seem to be any way to get it back. Any way to fix this ?

I'm attaching a GEXF data file so you can reproduce this issue. Here are the steps:

  1. Load GEXF file into Gephi.
  2. Click timeline 'play' button (green arrow), and use the slider - edges appear and disappear.
  3. Select 'Save as...' from the File menu, and save as Gephi project file (.gephi).
  4. Exit Gephi.
  5. Open Gephi, and load saved .gephi project file.
  6. Click timeline 'play' button (or try to start the timeline filter using the filters tab) - nothing happens...

Many thanks in advance,

Axel Bruns


Imported from Launchpad using lp2gh.

'start' and 'end' attributes are missing when exporting dynamic GEXF

When exporting a dynamic GEXF with Gephi, the "start" and "end" attributes are missing.

By example, here is a node from the imported GEXF :

  

and the resulting GEXF, when exporting from Gephi :

  
    
    
  

In consequence, and until the bug is fixed, be aware to not export a dynamic GEXF with the same name that the original, or you will lost the dynamic data.


Imported from Launchpad using lp2gh.

When creating a new project, adding nodes doesn't work

According to mbastian: "Yes I confirm, there is a bug, no graph is shown until there is some edges in the graph."

See: http://forum.gephi.org/viewtopic.php?f=8&t=33

Way to reproduce:

  1. Open Gephi
  2. New Project
  3. Select Node Pencil in Toolbar
  4. Click on the graph to add a node
    The graph remains empty, no nodes is shown, although it's appended in the structure

The problem also appears if imported (or generated) data contains no edges


Imported from Launchpad using lp2gh.

Statistics fail to work on a hierarchy level different from the leaves

Way to reproduce:

  1. Open EuroSiS.gexf http://wiki.gephi.org/index.php/Datasets
  2. Group nodes according to the 'country' parameter (Partition panel)
  3. Try to compute a metric.

Average degree and Diameter output 0.
Average Path Length outputs NaN.
etc.


Imported from Launchpad using lp2gh.

UnsatisfiedLinkError on startup on Mac OS X

Graphic library error, related to JOGL.

Stack trace:

java.lang.UnsatisfiedLinkError: com.sun.opengl.impl.JAWTFactory.JAWT_GetAWT0(Ljava/nio/ByteBuffer;)Z
at com.sun.opengl.impl.JAWTFactory.JAWT_GetAWT0(Native Method)
at com.sun.opengl.impl.JAWTFactory.JAWT_GetAWT(JAWTFactory.java:38)
at com.sun.opengl.impl.JAWT$1.run(JAWT.java:99)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.opengl.impl.JAWT.getJAWT(JAWT.java:95)
at com.sun.opengl.impl.macosx.MacOSXOnscreenGLDrawable.lockSurface(MacOSXOnscreenGLDrawable.java:144)
at com.sun.opengl.impl.macosx.MacOSXOnscreenGLContext.makeCurrentImpl(MacOSXOnscreenGLContext.java:57)
at com.sun.opengl.impl.GLContextImpl.makeCurrent(GLContextImpl.java:134)
at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:182)
at javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:412)
at javax.media.opengl.GLCanvas.display(GLCanvas.java:244)
at javax.media.opengl.GLCanvas.paint(GLCanvas.java:277)
at sun.awt.RepaintArea.paintComponent(RepaintArea.java:276)

Found on:

  • Mac OS X, 10.5.8, x86_64
  • Mac OS X, 10.6.4, x86_64

Could be because another bad version of JOGL library is already loaded by another program or from default system path. Looking for solutions...


Imported from Launchpad using lp2gh.

NullPointerException on importing dynamic graph

This bug appears in alpha4 when importing any dynamic graph

Stack trace:
Caused by: java.lang.NullPointerException
at org.gephi.desktop.timeline.TimelineControllerImpl.pushSlice(TimelineControllerImpl.java:107)
at org.gephi.desktop.timeline.TimelineControllerImpl.pushSlice(TimelineControllerImpl.java:355)
at org.gephi.io.processor.plugin.AbstractProcessor.flushToNode(AbstractProcessor.java:81)
at org.gephi.io.processor.plugin.DefaultProcessor.process(DefaultProcessor.java:99)
at org.gephi.io.importer.impl.ImportControllerImpl.process(ImportControllerImpl.java:144)
at org.gephi.desktop.importer.DesktopImportControllerUI.finishImport(DesktopImportControllerUI.java:233)
at org.gephi.desktop.importer.DesktopImportControllerUI.access$100(DesktopImportControllerUI.java:46)
at org.gephi.desktop.importer.DesktopImportControllerUI$2.run(DesktopImportControllerUI.java:102)


Imported from Launchpad using lp2gh.

NullPointerException on importing CSV data in Data Laboratory

Graph API throws NPE because source or target is null

Stack trace:
java.lang.NullPointerException
at org.gephi.graph.dhns.core.GraphFactoryImpl.newEdge(GraphFactoryImpl.java:128)
at org.gephi.graph.dhns.core.GraphFactoryImpl.newEdge(GraphFactoryImpl.java:123)
at org.gephi.graph.dhns.core.GraphFactoryImpl.newEdge(GraphFactoryImpl.java:47)
at org.gephi.datalab.impl.GraphElementsControllerImpl.buildEdge(GraphElementsControllerImpl.java:431)
at org.gephi.datalab.impl.GraphElementsControllerImpl.createEdge(GraphElementsControllerImpl.java:89)
at org.gephi.datalab.impl.AttributeColumnsControllerImpl.importCSVToEdgesTable(AttributeColumnsControllerImpl.java:597)
at org.gephi.datalab.plugin.manipulators.general.ui.ImportCSVUIWizardAction.performAction(ImportCSVUIWizardAction.java:85)
at org.gephi.datalab.plugin.manipulators.general.ImportCSV.execute(ImportCSV.java:40)


Imported from Launchpad using lp2gh.

Layout Window cannot be restored when has been undocked

After closing Layout Window, it is impossible to open it again, from the Window menu or by restarting program.

Way to reproduce:

  1. Open Gephi
  2. Close Layout Window
  3. Go to Window Menu and click on "Layout", that would normally reopen Layout Window
  4. The window don't show up

A workaround is to clean user directory, when Gephi is turned off:

  • On Windows 2K/XP, user diretory is located in C:\Documents and Settings\username\Application Data.gephidesktop
  • On Windows Vista/Seven, user directory is located in C:\Users\username\AppData\Roaming.gephidesktop
  • On Mac OS X, user directory is located in /Users/username/Library/Application/Support/gephidesktop
  • On Linux, user diretory is located in /home/username/.gephidesktop

Imported from Launchpad using lp2gh.

NullPointerException at the rendering stage when importing a graph

There seems to be an issue with one of the last revisions regarding the weight of edges.

After you import a graph (gml, gexf...) and validate the import report you get the following exception:

java.lang.NullPointerException
at org.gephi.graph.dhns.edge.EdgeDataImpl.getWeight(EdgeDataImpl.java:207)
at org.gephi.graph.dhns.edge.AbstractEdge.getWeight(AbstractEdge.java:71)
at org.gephi.visualization.bridge.DHNSDataBridge.updateEdges(DHNSDataBridge.java:191)
at org.gephi.visualization.bridge.DHNSDataBridge.updateWorld(DHNSDataBridge.java:126)
at org.gephi.visualization.opengl.compatibility.CompatibilityEngine.updateWorld(CompatibilityEngine.java:181)
at org.gephi.visualization.opengl.compatibility.CompatibilityScheduler.updateWorld(CompatibilityScheduler.java:285)
[catch] at org.gephi.visualization.scheduler.SimpleFPSAnimator.run(SimpleFPSAnimator.java:58)


Imported from Launchpad using lp2gh.

Exception on clicking on 'Hierarchy' while running multilevel layout

Way to reproduce:

  1. Open Gephi with graph
  2. Run Yifan Hu Multi-level layout
  3. Click on Hierarchy
    Exception is sometimes thrown

Stack trace:
java.lang.IllegalArgumentException: Level must be between 0 and the height of the tree, currently height=9
at org.gephi.graph.dhns.graph.HierarchicalGraphImpl.getLevelSize(HierarchicalGraphImpl.java:166)
at org.gephi.desktop.hierarchy.HierarchyControlPanel.initLevelsLinks(HierarchyControlPanel.java:176)
at org.gephi.desktop.hierarchy.HierarchyControlPanel.setup(HierarchyControlPanel.java:140)
at org.gephi.desktop.hierarchy.HierarchyPropertyBarAddon$HierarchyAddonButton.createPopup(HierarchyPropertyBarAddon.java:88)
at org.gephi.desktop.hierarchy.HierarchyPropertyBarAddon$HierarchyAddonButton.access$000(HierarchyPropertyBarAddon.java:65)
at org.gephi.desktop.hierarchy.HierarchyPropertyBarAddon$HierarchyAddonButton$1.actionPerformed(HierarchyPropertyBarAddon.java:80)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)


Imported from Launchpad using lp2gh.

NullPointerException when filtering undirected graphs

Way to reproduce:

  1. Open a graph file, undirected
  2. Create "Degree Range Filter" and enable filtering
  3. Play with range slide
    An exception is thrown sometimes, with higher probability is layout is active

Stack Trace:
java.lang.NullPointerException
at org.gephi.graph.dhns.edge.AbstractEdge.getUndirected(AbstractEdge.java:92)
at org.gephi.graph.dhns.edge.iterators.EdgeIterator.hasNext(EdgeIterator.java:59)
at org.gephi.graph.dhns.graph.iterators.EdgeIteratorImpl.hasNext(EdgeIteratorImpl.java:44)
at org.gephi.visualization.bridge.DHNSDataBridge.updateEdges(DHNSDataBridge.java:187)
at org.gephi.visualization.bridge.DHNSDataBridge.updateWorld(DHNSDataBridge.java:126)
at org.gephi.visualization.opengl.compatibility.CompatibilityEngine.updateWorld(CompatibilityEngine.java:181)
at org.gephi.visualization.opengl.compatibility.CompatibilityScheduler.updateWorld(CompatibilityScheduler.java:270)


Imported from Launchpad using lp2gh.

NullPointerException at javax.swing.ImageIcon for Open dialogs on Windows 7

Gephi running on Windows 7 sometimes throws an Exception when users open file dialogs (Open project, Open, Save As).

Stack:
java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(ImageIcon.java:190)
at javax.swing.ImageIcon.<init>(ImageIcon.java:176)
at sun.swing.WindowsPlacesBar.<init>(WindowsPlacesBar.java:82)
at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.updateUseShellFolder(WindowsFileChooserUI.java:505)
at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.installComponents(WindowsFileChooserUI.java:196)
at javax.swing.plaf.basic.BasicFileChooserUI.installUI(BasicFileChooserUI.java:136)
at com.sun.java.swing.plaf.windows.WindowsFileChooserUI.installUI(WindowsFileChooserUI.java:129)
at javax.swing.JComponent.setUI(JComponent.java:673)
at javax.swing.JFileChooser.updateUI(JFileChooser.java:1763)
at javax.swing.JFileChooser.setup(JFileChooser.java:360)
at javax.swing.JFileChooser.<init>(JFileChooser.java:342)
at javax.swing.JFileChooser.<init>(JFileChooser.java:301)
at org.gephi.branding.desktop.actions.OpenFile.actionPerformed(OpenFile.java:65)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1225)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1266)
at java.awt.Component.processMouseEvent(Component.java:6263)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6028)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:125)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)


Imported from Launchpad using lp2gh.

YifanHu's Multilevel doesn't finish and leave meta-nodes

Steps to reproduce:

  • open the atteched file:
    gephidesktop bugreport3.gexf
  • click layout -> YfanHu's Multilevel, run, wait for completion
  • zoom in. Some nodes have kept their size, some are tiny.
  • click the edit button, then click on a tiny node. id label and weight are "null"

If I delete half of the edges, the problem doesn't appear anymore.


Imported from Launchpad using lp2gh.

PDF Export Fails when nodes' labels are showing

When I enable to show nodes' labels in the preview, I can not export in pdf. If I disable the labels, everything works smoothly. The export process go to 100% down and right on the window, but it never disappears. Also the .pdf file that it creates is of 0bytes size.

Way to reproduce:

  1. Load LesMiserables.gexf
  2. In Preview, show labels
  3. Try to export in PDF

Tested on Gephi 0.8alpha with latest updates on 28 August 2011.


Imported from Launchpad using lp2gh.

No graph being drawn - gluegen error

This bug affects certain configuration only.

The problem seems to be related to gluegen library. The current gluegen is from JOGL 1.1.1a

Stack trace:

java.lang.RuntimeException: Please port CPU detection (32/64 bit) to your platform (mac os x/x86_64)
at com.sun.gluegen.runtime.CPU.(CPU.java:72)
Caused: java.lang.ExceptionInInitializerError
at com.sun.opengl.impl.JAWT.size(JAWT.java:17)
at com.sun.opengl.impl.JAWT.create(JAWT.java:25)
at com.sun.opengl.impl.JAWT$1.run(JAWT.java:97)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.opengl.impl.JAWT.getJAWT(JAWT.java:95)
at com.sun.opengl.impl.macosx.MacOSXOnscreenGLDrawable.lockSurface(MacOSXOnscreenGLDrawable.java:144)
at com.sun.opengl.impl.macosx.MacOSXOnscreenGLContext.makeCurrentImpl(MacOSXOnscreenGLContext.java:57)
at com.sun.opengl.impl.GLContextImpl.makeCurrent(GLContextImpl.java:134)
at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:182)
at javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:265)
at javax.media.opengl.GLCanvas.display(GLCanvas.java:130)
at javax.media.opengl.GLCanvas.paint(GLCanvas.java:142)
at sun.awt.RepaintArea.paintComponent(RepaintArea.java:276)
at sun.awt.RepaintArea.paint(RepaintArea.java:241)
at apple.awt.ComponentModel.handleEvent(ComponentModel.java:263)
at java.awt.Component.dispatchEventImpl(Component.java:4790)
at java.awt.Component.dispatchEvent(Component.java:4544)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:635)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:125)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
[catch] at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)


Imported from Launchpad using lp2gh.

Null pointer Exception with Label Ajust Algo

Démarrage de Gephi
Nouveau projet
Import d'un gdf
Je lance Label Ajust et au bout de quelque second fenêtre d'erreur sans message, je peux pas agir dessus car gephi semble continuer de tourner.


Imported from Launchpad using lp2gh.

saved preset for layouts creates several instances

To reproduce the bug:

With Force Atlas:

First, save some presets for this layout, call it "saved_presets_1"
Second, modify some parameters of the layout and save the presets with the same name as before (saved_presets_1)

=> bug: two occurrences of "saved_presets_1" appear now in the saved presets list.
To correct the situation, one must close and re-open GEPHI: just one (the more recent I suppose) instance remains.

=> not a bug, but related wish list: add a cross next to the name of the presets to be able to delete them (with a window asking for confirmation of deletion!).


Imported from Launchpad using lp2gh.

saving a project uses too much memory for large graphs

Have a 20k nodes, 500k edges graph, spatialized with open ord, 4 workspaces with on the first the complete graph and on the 3 followings 3 different subgraph extracted from the main one. Trying to save the file in a gephi format, processing bar stay stucked, memory load is about 7GO (on 8 on my computer) and processor around 50%.

Windows7, 64bits system.


Imported from Launchpad using lp2gh.

Data Laboratory: wrong edge type created (mutual instead of directed)

Way to reproduce:

  1. Open a new project, and go in the data lab.
  2. Create the nodes A and B
  3. Create an undirected edge between A and B
  4. Create a node C
  5. Create a directed edge from A to C.
  6. Go in the Preview

You'll see that the edge (A,C) is not directed but mutual, however it is shown as directed in the Data Lab.
If the edge between A and B is directed, there is no error.


Imported from Launchpad using lp2gh.

Exception on opening project file

Stack trace:

java.lang.NullPointerException
at org.gephi.graph.dhns.core.Dhns.getIdGen(Dhns.java:123)
at org.gephi.graph.dhns.core.EdgeProcessor.<init>(EdgeProcessor.java:52)
at org.gephi.graph.dhns.core.StructureModifier.<init>(StructureModifier.java:57)
at org.gephi.graph.dhns.core.GraphViewImpl.<init>(GraphViewImpl.java:36)
at org.gephi.graph.dhns.core.GraphStructure.<init>(GraphStructure.java:70)
at org.gephi.graph.dhns.core.Dhns.<init>(Dhns.java:85)
at org.gephi.graph.dhns.DhnsPersistenceProvider.readXML(DhnsPersistenceProvider.java:48)
at org.gephi.project.io.GephiReader.readWorkspaceChildren(GephiReader.java:145)
at org.gephi.project.io.GephiReader.readWorkspace(GephiReader.java:131)
at org.gephi.project.io.GephiReader.readProject(GephiReader.java:104)
at org.gephi.project.io.GephiReader.readAll(GephiReader.java:81)
at org.gephi.project.io.LoadTask.run(LoadTask.java:81)
at org.gephi.desktop.project.ProjectControllerUIImpl$5.run(ProjectControllerUIImpl.java:281)
at org.gephi.utils.longtask.api.LongTaskExecutor$RunningLongTask.run(LongTaskExecutor.java:228)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)


Imported from Launchpad using lp2gh.

Broken SVG Export on Linux

This bug concerns only Gephi 0.6beta2.

On linux desktop installation or running online demo the SVG Export panel is not functioning.

Reproduce this bug:

  1. Load a graph
  2. Open export dialog
  3. Select SVG
  4. Click 'Next'

Nothing happens after that, and the exception is hidden. It appears only in console.


Imported from Launchpad using lp2gh.

Export Dialog Give NullPointerException on OS X Snow Leopard

Any attempt at exporting immediately throws a NullPointerException. This is triggered either by selecting any option from the "File > Export" menu, or pressing the "SVG" button in the Preview Settings window.

SVG Export:
java.lang.NullPointerException
at org.gephi.desktop.io.export.api.VectorialFileExporterUI.action(VectorialFileExporterUI.java:178)
at org.gephi.desktop.io.export.Export$2.actionPerformed(Export.java:71)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.AbstractButton.doClick(AbstractButton.java:389)
at com.apple.laf.ScreenMenuItem.actionPerformed(ScreenMenuItem.java:95)
at java.awt.MenuItem.processActionEvent(MenuItem.java:627)
at java.awt.MenuItem.processEvent(MenuItem.java:586)
at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:317)
at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:305)
[catch] at java.awt.EventQueue.dispatchEvent(EventQueue.java:638)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:125)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Graph Export:
java.lang.NullPointerException
at org.gephi.desktop.io.export.api.GraphFileExporterUI.action(GraphFileExporterUI.java:183)
...rest exactly the same...


Imported from Launchpad using lp2gh.

"Node must be in the graph" error

Way to reproduce:

  1. Open a graph file
  2. Run Modularity to get some partitions
  3. Go to Partition and pick "Modularity Class" and apply colors
  4. Go to filter module and create a "Degree Range Filter", enable Filtering
  5. Open another graph file, in a new workspace
  6. Go back to the first workspace
    An exception is thrown

Stack trace:
Java.lang.IllegalArgumentException: Node must be in the graph
at org.gephi.graph.dhns.graph.AbstractGraphImpl.checkNode(AbstractGraphImpl.java:127)
at org.gephi.graph.dhns.graph.HierarchicalGraphImpl.getParent(HierarchicalGraphImpl.java:230)
at org.gephi.partition.impl.PartitionControllerImpl.isGroupable(PartitionControllerImpl.java:254)
at org.gephi.desktop.partition.PartitionChooser.refreshGrouped(PartitionChooser.java:332)
at org.gephi.desktop.partition.PartitionChooser.refreshModel(PartitionChooser.java:409)
at org.gephi.desktop.partition.PartitionChooser.setup(PartitionChooser.java:419)
at org.gephi.desktop.partition.PartitionTopComponent.refreshModel(PartitionTopComponent.java:84)
at org.gephi.desktop.partition.PartitionTopComponent.access$000(PartitionTopComponent.java:36)
at org.gephi.desktop.partition.PartitionTopComponent$1.select(PartitionTopComponent.java:66)
at org.gephi.project.impl.ProjectControllerImpl.fireWorkspaceEvent(ProjectControllerImpl.java:287)
at org.gephi.project.impl.ProjectControllerImpl.openWorkspace(ProjectControllerImpl.java:234)
at org.gephi.ui.workspace.WorkspaceUISelectorPanel$2.actionPerformed(WorkspaceUISelectorPanel.java:72)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
at java.awt.Component.processMouseEvent(Component.java:6263)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6028)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:125)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)


Imported from Launchpad using lp2gh.

NullPointerException when deleting nodes from the graph

After importing a graph (codeminer.gexf), if you select all the nodes and try to delete them, the following Exception is thrown:

java.lang.NullPointerException
at org.gephi.graph.dhns.utils.avl.AbstractEdgeTree.remove(AbstractEdgeTree.java:239)
at org.gephi.graph.dhns.core.GraphStructure.removeFromDictionnary(GraphStructure.java:165)
at org.gephi.graph.dhns.core.StructureModifier$Business.deleteNode(StructureModifier.java:384)
at org.gephi.graph.dhns.core.StructureModifier$Business.access$400(StructureModifier.java:277)
at org.gephi.graph.dhns.core.StructureModifier.deleteNode(StructureModifier.java:103)
at org.gephi.graph.dhns.graph.HierarchicalGraphImpl.removeNode(HierarchicalGraphImpl.java:202)
at org.gephi.visualization.bridge.DHNSEventBridge.delete(DHNSEventBridge.java:380)
at org.gephi.visualization.apiimpl.GraphContextMenu$7.actionPerformed(GraphContextMenu.java:116)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1223)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1264)
at java.awt.Component.processMouseEvent(Component.java:6263)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6028)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Component.dispatchEvent(Component.java:4460)
[catch] at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:137)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)


Imported from Launchpad using lp2gh.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.