Code Monkey home page Code Monkey logo

gephi-toolkit'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-toolkit's People

Contributors

0xflotus avatar anjackson avatar boogheta avatar dotquam avatar eduramiba avatar mbastian avatar mcallisto 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

gephi-toolkit's Issues

NullPointerException in demo PartitionGraph

I'm trying to do the same as in the demo PartitionGraph, but I get a NullpointerException when doing Function func2 = appearanceModel.getNodeFunction(..), because appearanceModel has no function with PartitionElementColorTransformer.class.
When I do the same importing any of the samples datasets, lesmiserables.gexf or Java.gexf, it works fine..
Trying to limit where the problem is, I've found a strange behavior in partitioning. I've changed the code to import the graph via ImportController and a GEXF file containing a small graph. I've created this two GEXF files .When I import the file from the right, it works fine, but sometimes it gives different results. However, when I import the one of the left, it doesn't work the most of times (sometimes partitioning works).
Here is a capture made when debugging showing the problem.
I'm not sure if it's a bug problem or I'm doing something wrong. Here is my code:

        AppearanceController appearanceController = Lookup.getDefault().lookup(AppearanceController.class);
        AppearanceModel appearanceModel = appearanceController.getModel();
        //Init a project - and therefore a workspace
        ProjectController pc = Lookup.getDefault().lookup(ProjectController.class);
        pc.newProject();
        Workspace workspace = pc.getCurrentWorkspace();

        GraphModel graphModel = Lookup.getDefault().lookup(GraphController.class).getGraphModel();
        DirectedGraph directedGraph = graphModel.getDirectedGraph();

        //Get controllers and models
        ImportController importController = Lookup.getDefault().lookup(ImportController.class);

        //Import file
        Container container;
        try {
            File file = new File("C:\\projects\\gephi_demo\\sample.gexf");
            container = importController.importFile(file);
            container.getLoader().setEdgeDefault(EdgeDirectionDefault.DIRECTED);   //Force DIRECTED
            container.getLoader().setAllowAutoNode(false);  //Don't create missing nodes
        } catch (Exception ex) {
            ex.printStackTrace();
            return null;
        }
        //Append imported data to GraphAPI
        importController.process(container, new DefaultProcessor(), workspace);

        //Run modularity algorithm - community detection
        Modularity modularity = new Modularity();
        modularity.execute(graphModel);


        //Partition with 'modularity_class', just created by Modularity algorithm
        Column modColumn = graphModel.getNodeTable().getColumn(Modularity.MODULARITY_CLASS);
        Function func2 = appearanceModel.getNodeFunction(directedGraph, modColumn, PartitionElementColorTransformer.class);
        Partition partition2 = ((PartitionFunction) func2).getPartition();

        System.out.println(partition2.size() + " partitions found");

        Palette palette2 = PaletteManager.getInstance().randomPalette(partition2.size());
        partition2.setColors(palette2.getColors());
        appearanceController.transform(func2);

And here is the exception:

java.lang.NullPointerException: null
at org.alxhierro.backend.gephidemo.services.SNAService.getCommunities(SNAService.java:119) ~[classes/:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_72]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_72]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_72]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_72]
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:832) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:743) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:961) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:895) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:967) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:858) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:622) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:843) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat-embed-websocket-8.0.33.jar:8.0.33]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:87) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) ~[tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1502) [tomcat-embed-core-8.0.33.jar:8.0.33]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1458) [tomcat-embed-core-8.0.33.jar:8.0.33]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_72]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_72]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-8.0.33.jar:8.0.33]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_72]

MySQL Connector efficiency

The mysql connector version is old. While inserting into mysql, it will not release the PrepareStatement object and will consume a lot of memory. This bug has been updated in a new MySQ connector, it is possible to release the toolkit with a new mysql connector?

Where can I find The class DynamicModel and AttributeModel

I am trying to run the toolkit-demo program and wanna implement a dynamic graph.

So, I have found the website How to execute a metric over time and learn to run it.
However, I found that is different from the code in the file DynamicMetric in toolkit-demo. And I cannot find the class DynamicModel and AttributeModel.
Are these classes not in the toolkit?

Thank you for your help!

show node labels in preview not persisting

Hi,

When I set SHOW_NODE_LABELS to true on the preview model, it is not persisted when saved to a gephi file and then opened in the UI. If I export to pdf if works, but not when I save to a gephi file.

Please advise what I am doing wrong, or if this is a bug. Many thanks

var pc = Lookup.getDefault().lookup(ProjectController.class);
        pc.newProject();
        Workspace workspace = pc.getCurrentWorkspace();

        var graphModel = Lookup.getDefault().lookup(GraphController.class).getGraphModel(workspace);

        var n0 = graphModel.factory().newNode("n0");
        n0.setLabel("Node 0");
        var n1 = graphModel.factory().newNode("n1");
        n1.setLabel("Node 1");

        var e1 = graphModel.factory().newEdge(n1, n0, 1, true);

        var directedGraph = graphModel.getDirectedGraph();
        directedGraph.addNode(n0);
        directedGraph.addNode(n1);
        directedGraph.addEdge(e1);

        System.out.println("Nodes " + directedGraph.getNodeCount());

        var appearanceController = Lookup.getDefault().lookup(AppearanceController.class);
        var appearanceModel = appearanceController.getModel();

        // Rank color by Degree
        Function degreeRanking = appearanceModel.getNodeFunction(graphModel.defaultColumns()
                .degree(), RankingElementColorTransformer.class);
        RankingElementColorTransformer degreeTransformer = degreeRanking.getTransformer();
        degreeTransformer.setColors(new Color[]{new Color(0xFEF0D9), new Color(0xB30000)});
        degreeTransformer.setColorPositions(new float[]{0f, 1f});
        appearanceController.transform(degreeRanking);

        // Get Centrality
        GraphDistance distance = new GraphDistance();
        distance.setDirected(true);
        distance.execute(graphModel);

        // Rank size by centrality
        Column centralityColumn = graphModel.getNodeTable().getColumn(GraphDistance.BETWEENNESS);
        Function centralityRanking = appearanceModel.getNodeFunction(centralityColumn, RankingNodeSizeTransformer.class);
        RankingNodeSizeTransformer centralityTransformer = (RankingNodeSizeTransformer) centralityRanking.getTransformer();
        centralityTransformer.setMinSize(3);
        centralityTransformer.setMaxSize(10);
        appearanceController.transform(centralityRanking);

        // Rank label size - set a multiplier size
        Function centralityRanking2 = appearanceModel.getNodeFunction(centralityColumn, RankingLabelSizeTransformer.class);
        RankingLabelSizeTransformer labelSizeTransformer = (RankingLabelSizeTransformer) centralityRanking2.getTransformer();
        labelSizeTransformer.setMinSize(1);
        labelSizeTransformer.setMaxSize(3);
        appearanceController.transform(centralityRanking2);

        var previewController = Lookup.getDefault().lookup(PreviewController.class);
        var previewModel = previewController.getModel();
        previewModel.getProperties().putValue(PreviewProperty.SHOW_NODE_LABELS, Boolean.TRUE);
        previewController.refreshPreview();

        var file = new File("preview-issue.gephi");

        file.createNewFile();   // to get around a bug in 0.10.1
        pc.saveProject(pc.getCurrentProject(), file);


gephi-toolkit fails to open some gephi files

When the program reaches this line:

73   pc.openProject(file).run();

I get this exception.

java.lang.IllegalArgumentException: [255,255,255]
at com.sun.beans.editors.ColorEditor.setAsText(ColorEditor.java:103)
at org.gephi.utils.Serialization.readValueFromText(Serialization.java:93)
at org.gephi.utils.Serialization.readValueFromText(Serialization.java:111)
at org.gephi.preview.PreviewModelImpl.readXML(PreviewModelImpl.java:504)
at org.gephi.preview.PreviewPersistenceProvider.readXML(PreviewPersistenceProvider.java:80)
at org.gephi.project.io.GephiReader.readWorkspaceChildren(GephiReader.java:167)
at org.gephi.project.io.GephiReader.readWorkspace(GephiReader.java:147)
at org.gephi.project.io.GephiReader.readAll(GephiReader.java:108)
at org.gephi.project.io.LoadTask.run(LoadTask.java:114)
at com.myawesomedomain.testgephi.Gephi2Gexf.convert(Gephi2Gexf.java:73)
at start.MainTest.script1(MainTest.java:51)
at start.MainTest.run(MainTest.java:42)
at java.lang.Thread.run(Thread.java:679)
org.gephi.project.io.GephiFormatException: Gephi failed importing the project.

The problem appears only on some files and it seems to corrupt the state of the application. Other files saved after closing those files copy the bug.

For example of files one could view this gist:
https://gist.github.com/adrian-castravete/6594428

Project.xml is the unzipped gephi file, before opening any other project in gephi.
ProjectBroken.xml is the unzipped gephi file, after copying the weird bug (after I opened a gephi file in gephi and closed it).

For some reason gephi isn't bothered by anything when opening and closing any of these files, but the gephi-toolkit fails after the bug has happened.

gephi-toolkit-0.9.2-all.jar couldn't be added into current netbeans' module project

Dear Gephi Group,
I'm develping a netbeans module project that need use toolkit to draw a graph !
I only added open source code package org.gephi.toolkit.demos;
When I add gephi-toolkit-0.9.2.jar into my netbeans module project, I could successfully compile the project,
image

But I failed to run it,
the IDE told me: java.lang.ClassNotFoundException

Error Note:
java.lang.ClassNotFoundException: org.netbeans.modules.masterfs.watcher.Watcher@ModuleCL@1b5dab8b[com.ml.predict]:jar:file:/D:/JavaProjects/CIF-DL/build/cluster/modules/ext/gephi-toolkit-0.9.2-all.jar!/ not a subclass of org.netbeans.modules.masterfs.watcher.Watcher@ModuleCL@1f1c9b7a[org.netbeans.modules.masterfs]:jar:file:/E:/CIFLog/platform/modules/org-netbeans-modules-masterfs.jar!/
image

My IDE Environment has
jdk1.8.0_192,Netbeans 8.2, apache-maven-3.6.0

I didn't know how to solve it,
I recompile the gephi-toolkit.jar , but it doesn't work

What should I do?

PDF rendering issues

Hi,

I'm working on the 0.9-SNAPHOT version, and can't get it working to correctly export a GraphML-based file to PDF.

  1. the edge arrows aren't visible although the graph consists of only directed edges
  2. the node boxes always hide most of the node labels.
    I tried to disable the boxes with
model.getProperties().putValue(PreviewProperty.NODE_LABEL_SHOW_BOX, false)

but it doesn't work.

It's also not clear how to setup the property which is used as node label(resp. edge label). For now I set those values manually after import to edge node and edge object contained in the graph.

I attached the graphML file and the corresponding PDF

rdfs2.graphml.txt
rdfs2.graphml.pdf

Jigsaw support: split package org.gephi.graph.api

When using a module description like

module mymodule{
    requires graphstore;
    requires graph.api;
}

you get the following compile error: Module 'mymodule' reads package 'org.gephi.graph.api' from both 'graphstore' and 'graph.api'

Are there any workarounds for this issue? Will there be a Java 9 support in the near future?

Cannot resolve dependencies due to RELEASE82 being unavailable on bit.netbeans.org

Cloning this repository and running a

mvn install

currently fails with the following message:

[INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 11:10 min [INFO] Finished at: 2020-05-15T10:41:37+02:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal on project gephi-toolkit: Could not resolve dependencies for project org.gephi:gephi-toolkit:jar:0.9.3-SNAPSHOT: The following artifacts could not be resolved: org.netbeans.api:org-netbeans-modules-nbjunit:jar:RELEASE82, org.netbeans.modules:org-netbeans-modules-masterfs:jar:RELEASE82, org.netbeans.modules:org-netbeans-core-startup-base:jar:RELEASE82, org.netbeans.modules:org-netbeans-core:jar:RELEASE82, org.netbeans.api:org-openide-util-lookup:jar:RELEASE82, org.netbeans.api:org-openide-util:jar:RELEASE82, org.netbeans.api:org-openide-filesystems:jar:RELEASE82, org.netbeans.api:org-openide-util-ui:jar:RELEASE82, org.netbeans.api:org-openide-dialogs:jar:RELEASE82, org.netbeans.api:org-openide-nodes:jar:RELEASE82, org.netbeans.api:org-netbeans-api-annotations-common:jar:RELEASE82: Could not find artifact org.netbeans.api:org-netbeans-modules-nbjunit:jar:RELEASE82 in netbeans (http://bits.netbeans.org/nexus/content/groups/netbeans/) -> [Help 1]

It seems that the RELEASE82 is not available on bit.netbeans.org anymore:
http://bits.netbeans.org/maven2/org/netbeans/api/org-openide-filesystems/RELEASE802/org-openide-filesystems-RELEASE802.pom

As mentioned in #39 the netbeans platform version should probably updated:

<netbeans.version>RELEASE110</netbeans.version>

Are there any reasons why to not update to a new netbeans platform version?

Filter labels of graph using gephi-toolkit-0.9.1

Hi, I would like the resulting graph to contain all nodes, but to show labels only for those with degree>1000.
Call of exportToLabelVisible(query) changes labels of nodes to be not visible (node.isVisible() is false), but the resulting graph in the file still has labels for all the nodes.

FilterController filterController = Lookup.getDefault().lookup(FilterController.class); 
DegreeRangeFilter degreeFilter = new DegreeRangeFilter(); 
degreeFilter.init(graphModel.getGraph()); 
degreeFilter.setRange(new Range(1000, Integer.MAX_VALUE));     
Query query = filterController.createQuery(degreeFilter); 
       
 
filterController.exportToLabelVisible(query);
//filterController.filterVisible(query);
   
GraphView view = graphModel.getGraphVisible().getView();             
graphModel.setVisibleView(view);
  

PNGExporter pngExporter = (PNGExporter) ec.getExporter("png");
ec.exportFile(new File("FILE.png"), pngExporter);

I know how to do that in desktop app, but really stuck with the toolkit. I would appreciate any help.

NodePartitionFilter not working

Hello,

I'm encountering an error when trying to generate a query in an automatically created Gephi project, but I can't get the NodePartitionFilter to work. Below, I'm creating a query for filtering nodes based on their modularity class.

Everything executes fine, but when I open up the Gephi project, the Node Partition Filter is on a different column than the Modularity Class, and the "parts" property is null!

Is below how I should be creating a node partition filter on the modularity class column? Thanks!

Query query = filterCtrl.createQuery(new IntersectionOperator()); // other queries are added to the intersection later
// Modularity filter
Column modularity = graphCtrl().getGraphModel().getNodeTable().getColumn(Modularity.MODULARITY_CLASS);
Partition partition = appearanceCtrl().getModel().getNodePartition(graphCtrl.getGraphModel().getGraph(), modularity);
NodePartitionFilter modularityFilter = new NodePartitionFilter(modularity, appearanceCtrl.getModel());
modularityFilter.init(graphCtrl.getGraphModel().getGraph());
modularityFilter.unselectAll();
// Select the top 4 modularity classes
for (Object part : Iterables.limit(partition.getSortedValues(), 4)) {
    modularityFilter.addPart(part);
}
// At this stage, the filter looks fine in the debugger - the column is the modularity class, and the parts property has the top 4 IDs
filterCtrl.setSubQuery(query, filterCtrl.createQuery(modularityFilter));
// Set filter as current for when project is opened.
filterCtrl.add(query);
filterCtrl.setCurrentQuery(query);

The issue seems to be that when the filter property parts is serialised (which for a partition filter over modularity class is a Set<Integer>), since the serialised value is split by \r\n characters when encoded, when Gephi attempts to deserialise that parameter in Serialization.fromText(), instead of receiving the full serialised string of the Set, it receives a part of it between the newlines. This leads to an unsuccessful deserialisation of the parts Set (returns null instead). When I create a modularity partition in the Gephi UI, it serialises/deserialises fine, obviously using the same chunked base64 scheme... so not sure why it's struggling on projects created by the toolkit. When running Gephi in the debugger, it seems to receive the full string ignoring newlines when the project file was created by the UI. I say this is the problem because when I manually set the string to the full serialised value though the toolkit wrote (using debugger), then the deserialisation is successful.

threads created when using the toolkit are not stopped nor stoppable

Hello,

when loading a network with the gephi toolkit, threads are created to (as far as I understand) transmit messages for this network. Unfortunately when using intensively Gephi networks, this leads to ressource saturation .

It would be nice to be able to be able to stop these threads, like "stop" the network - then accepting explicitely that we should not modify this network anymore.

Related bug for the nw extension of netlogo: NetLogo/NW-Extension#157

Thanks !

individually set edge colors?

I have a question about how to individually set edge colors. I am sorry if the answer is somewhere in the documentation, but I cannot seem to find it.

Basically, I just want to be able to set the edge color in a loop like this, so that I can individually change edge colors:

for (Edge e : graph.getEdges().toArray() ){
     e.setColor(Color.GRAY);
}

The problem is, none of my edge colors actually end up being colored gray.

Any help is appreciated!

Thanks.

EdgePartitionFilter NullPointerException in selectAll() and evaluate()

Dear, Sir,

I encountered an exception when I am trying to develop EdgePartitionFilter,
following the example from https://github.com/gephi/gephi-toolkit-demos/blob/master/src/main/java/org/gephi/toolkit/demos/Filtering.java .

if I unselecteAll() and addPart(), there will be no Exception, BUT,
the graph is not filtered at all (nodeCount and edgeCount won't change.)
Then, I tried to selectAll() and removePart(), the NullPointerException has been thrown.
I am sure the attribute is there as I iterated through all edges and output their attribute values.

I think it might be a bug.
Could you please have a look?

Thank you so much.
Best wishes,
Yihui

Here is the error message.
(I tried both Java 7 and 8. I tired both 0.9 release version and 0.92 nightly snapshot)

Exception in thread "main" java.lang.NullPointerException
at org.gephi.filters.plugin.partition.PartitionBuilder$PartitionFilter.selectAll(PartitionBuilder.java:269)
at HelloGephi.main(HelloGephi.java:130)

Oracle Driver plugin: import with SID

I'm trying to use Oracle Driver plugin on Windows x64. To connect to my DB, I need to specify Hostname, Port and SID (as I do in Oracle SQL Developer), but Gephi's Database settings window allows to enter Host, Port and Database.
If I try to enter my SID into Database field, and press Test Connection, nothing happens.
(I have downloaded Instant Client, unzipped it, set $JDBC_PATH and $ORACLE_HOME to its folder, and restarted Gephi).

How to import from Oracle database using SID?

Fixing the node positions in the layout for the same data

I am trying to create a layout using gephi-toolkit and observed that node positions are getting changed even though the data is same. How to fix the node positions and get the same layout if in case the input data is not changed

Thanks

Update dependencies from NetBeans RELEASE82 to RELEASE90

@eduramiba Is it possible for you to adjust the dependencies from NetBeans RELEASE82 to RELEASE90?

The current scenario seems to be:

Do you see any cons to update?

VisualizationController getSelectedEdges()/getSelectedNodes()

Is there a way to get the currently selected edges or nodes in a graph?

I see that SelectionManager has a method getSelectedNodes(), but SelectionManager is not a public interface (I'd have to cast VisualizationController to VizController and call getSelectionManager to get it).

But then, SelectionManager lacks a getSelectedEdges() method...

Also, VisualizationController does not have any listeners that would allow me to keep track when edges are selected or deselected.

I need this for my "Average weight of selected edges" statistics plugin...

Any clue? Thank you!

Unable to import GraphML (.gml) file for preview

I tried to call the PreviewJFrame script in https://github.com/gephi/gephi-toolkit-demos/blob/master/src/main/java/org/gephi/toolkit/demos/PreviewJFrame.java

directly using the below .gml file, but on executing, it shows # Nodes loaded:0 # Edges loaded: 0, when actually my toy file contains 1 node as can be seen.

I have attached the .gml file for reproducing here below:

<?xml version="1.0" encoding="UTF-8"?>
<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
<graph id="G" edgedefault="directed">
<node id="n0" labels=":Host"><data key="labels">:Host</data><data key="portName">H1</data><data key="maxInDeg">0</data><data key="available">0</data><data key="maxOutDeg">0</data></node>
</graph>
</graphml>

gephi visualization module under FreeBSD

Greetings.
I am trying to run gephi under FreeBSD. Regardless of running the ready to go version or building gephi myself, after showing the window, there is still this problem about
not being able to initialize jogamp-jogl (see latest caught error down below). Consequence of this: no graph visualization.
I have managed to narrow it down to the fact that gephi comes pre-bundled with

./modules/application/target/gephi/gephi/modules/ext/org.gephi.visualization/
├── org-jogamp-gluegen
│   ├── gluegen-rt-natives-linux-amd64.jar
│   ├── gluegen-rt-natives-linux-i586.jar
│   ├── gluegen-rt-natives-macosx-universal.jar
│   ├── gluegen-rt-natives-windows-amd64.jar
│   ├── gluegen-rt-natives-windows-i586.jar
│   └── gluegen-rt.jar
└── org-jogamp-jogl
├── jogl-all-natives-linux-amd64.jar
├── jogl-all-natives-linux-i586.jar
├── jogl-all-natives-macosx-universal.jar
├── jogl-all-natives-windows-amd64.jar
├── jogl-all-natives-windows-i586.jar
└── jogl-all.jar

As for FreeBSD, we can install the port "graphics/jogl" or "graphics/jogamp-jogl". I did install "graphics/jogamp-jogl" (because it has as project homepage: http://jogamp.org/jogl) which brings
jogamp-jogl-2.2.4_1:
/usr/local/lib/libgluegen2-rt.so
/usr/local/lib/libjogl_cg.so
/usr/local/lib/libjogl_desktop.so
/usr/local/lib/libjogl_mobile.so
/usr/local/lib/libnativewindow_awt.so
/usr/local/lib/libnativewindow_x11.so
/usr/local/lib/libnewt.so
/usr/local/share/java/classes/gluegen2-rt.jar
/usr/local/share/java/classes/gluegen2.jar
/usr/local/share/java/classes/jogl2.jar

So, my question is: what is the proper way to bind gephi to my native jogl?


PS: The announced latest caught error:

[INFO] SEVERE [org.netbeans.core.modules]
[INFO] java.lang.UnsatisfiedLinkError: Can't load library: ./gephi/modules/application/natives/freebsd-amd64//libgluegen-rt.so
[INFO] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1827)
[INFO] at java.lang.Runtime.load0(Runtime.java:809)
[INFO] at java.lang.System.load(System.java:1086)
[INFO] at com.jogamp.common.jvm.JNILibLoaderBase.loadLibraryInternal(JNILibLoaderBase.java:624)
[INFO] at com.jogamp.common.jvm.JNILibLoaderBase.access$000(JNILibLoaderBase.java:63)
[INFO] at com.jogamp.common.jvm.JNILibLoaderBase$DefaultAction.loadLibrary(JNILibLoaderBase.java:106)
[INFO] at com.jogamp.common.jvm.JNILibLoaderBase.loadLibrary(JNILibLoaderBase.java:487)
[INFO] at com.jogamp.common.os.DynamicLibraryBundle$GlueJNILibLoader.loadLibrary(DynamicLibraryBundle.java:421)
[INFO] at com.jogamp.common.os.Platform$1.run(Platform.java:317)
[INFO] at java.security.AccessController.doPrivileged(Native Method)
[INFO] at com.jogamp.common.os.Platform.(Platform.java:287)
[INFO] at com.jogamp.opengl.GLProfile.(GLProfile.java:147)
[INFO] at org.gephi.visualization.Installer.restored(Installer.java:55)
[INFO] at org.netbeans.core.startup.NbInstaller.loadCode(NbInstaller.java:468)

--------- .

gephi-toolkit sbt build fails

When trying to add a gephi-toolkit dependency from sbt; I get unresolved dependencies errors. Could you please advice on the ways of fixing it.

Here is a mock build.sbt
executed with sbt compile

name := "test"

organization := "test"

version := "0.1-SNAPSHOT"

scalaVersion := "2.11.7"


libraryDependencies += "org.gephi" % "gephi-toolkit" % "0.9.1"

resolvers += Resolver.sonatypeRepo("public")

Here is the resulting error:

[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: org.netbeans.modules#org-netbeans-modules-masterfs;RELEASE81: not found
[warn]  :: org.netbeans.modules#org-netbeans-core-startup;RELEASE81: not found
[warn]  :: org.netbeans.modules#org-netbeans-core;RELEASE81: not found
[warn]  :: org.netbeans.api#org-openide-util-lookup;RELEASE81: not found
[warn]  :: org.netbeans.api#org-openide-util;RELEASE81: not found
[warn]  :: org.netbeans.api#org-openide-filesystems;RELEASE81: not found
[warn]  :: net.java.dev#stax-utils;snapshot-20100402: not found
[warn]  :: gnu.trove#trove;2.1.0: not found
[warn]  :: org.netbeans.api#org-openide-util-ui;RELEASE81: not found
[warn]  :: org.netbeans.api#org-openide-dialogs;RELEASE81: not found
[warn]  :: org.netbeans.api#org-openide-nodes;RELEASE81: not found
[warn]  :: org.netbeans.api#org-netbeans-api-annotations-common;RELEASE81: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::

Maximum lock count exceeded error

Seems this bug still happens on gephi-toolkit-0.8.7 and gephi-toolkit-0.9.

I wrote a layout plugin, and it works well in Gephi GUI. But when i use it with gephi-toolkit, this "maximum lock count exceede error" will occur if the graph is large.

error details:

Exception in thread "main" java.lang.Error: Maximum lock count exceeded
at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.fullTryAcquireShared(ReentrantReadWriteLock.java:531)
at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryAcquireShared(ReentrantReadWriteLock.java:491)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared(AbstractQueuedSynchronizer.java:1281)
at java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.lock(ReentrantReadWriteLock.java:731)
at org.gephi.graph.dhns.core.Dhns.readLock(Dhns.java:188)
at org.gephi.graph.dhns.graph.AbstractGraphImpl.readLock(AbstractGraphImpl.java:83)
at org.gephi.graph.dhns.graph.HierarchicalDirectedGraphImpl.getInEdges(HierarchicalDirectedGraphImpl.java:183)
at com.weiboyi.gephi.layout.force.ForceTreeLayout.initializeLayoutData(ForceTreeLayout.java:85)
at com.weiboyi.gephi.layout.force.ForceTreeLayout.initAlgo(ForceTreeLayout.java:128)
at com.weiboyi.spread.RouteLayout.layoutGraph(RouteLayout.java:69)
at com.weiboyi.spread.RouteLayout.Layout(RouteLayout.java:44)
at com.weiboyi.spread.Main.main(Main.java:58)

Search broken in JavaDoc

Edit: This concerns gephi 0.9.7.

When using the search function (e. g. searching "PreviewProperty"), an error message is shown altough the class can perfectly be accessed via clicking through the list of all classes.

The message is AccessDeniedprod-web-14tx00000000000001fe5ee4e-00626fa92d-319aca72-nyc3c319aca72-nyc3c-nyc3-zg03html, body, body :not(iframe) { background-color: #2c2d2d !important; border-color: #726b60 !important; color: #c7c3bc !important; }

Accessing the doc of the class PreviewProperty via search leads to: https://www.javadoc.io/doc/org.gephi/gephi-toolkit/0.9.7/undefined/org/gephi/preview/api/PreviewProperty.html (edited)
Removing the "undefined" from the link by hand, lets me access the search result.

saveProject did not generate savefile

Current Behavior

ProjectController.saveProject(currentProject,File) did not generate savefile.

The save file appears in the folder for a moment, but when pc.saveProject(pc.getCurrentProject(),save_file) finishes, the save file disappears.

reproduced code

ProjectController pc = Lookup.getDefault().lookup(ProjectController.class);
pc.newProject();
File save_file = new File("save_project.gephi");
pc.saveProject(pc.getCurrentProject(),save_file);
if(save_file.exists()){
    System.out.println("save_project.gephi is not exists");
}

a moment when executed pc.saveProject function, save_project.gephi is appered in working folder.
but finished above funciton, saved file is removed.
so save_file.exists() is false.

reproduced version

  • gephi-toolkit-0.10.0-all.jar
  • gephi-toolkit-0.10.1-all.jar
  • gephi-toolkit-0.10.2-SNAPSHOT.jar

Use old version works fine.

useing gephi-toolkit-0.9.7-all.jar work fine.

ProjectController pc = Lookup.getDefault().lookup(ProjectController.class);
pc.newProject();
File save_file = new File("save_project.gephi");
pc.saveProject(pc.getCurrentProject(),save_file).run();

above code works fine.

misc

I guss this probrem relate those issue Problem when saving #2731

enviroment

java version 11
ubuntu 20.24 on windows 11 WSL2

Data import from Oracle database

Hi,
I am new to the gephi platform and have used Gephi toolkit for my web application, I am stuck at importing data from Oracle database and don't know how to do it. Any help is highly appreciated.

ClassCastException when running "simple" example

Hi,
I just have upgraded from gephi-toolkit:0.9.2 to gephi-toolkit:0.10.1. Now I have problems running a simple example in my own codebase. My code is the following:

 // Init a project - and therefore a workspace
ProjectController pc = Lookup.getDefault().lookup(ProjectController.class);
pc.newProject();
Workspace workspace = pc.getCurrentWorkspace();

//Get models and controllers for this new workspace - will be useful later
GraphModel graphModel = Lookup.getDefault().lookup(GraphController.class).getGraphModel();
PreviewModel model = Lookup.getDefault().lookup(PreviewController.class).getModel();
ImportController importController = Lookup.getDefault().lookup(ImportController.class);

Yet, I this stacktrace when executing this code:

java.lang.ClassCastException: class org.gephi.preview.PreviewModelImpl cannot be cast to class org.gephi.project.spi.Model (org.gephi.preview.PreviewModelImpl and org.gephi.project.spi.Model are in unnamed module of loader 'app')
	at org.gephi.project.spi.Controller.getModel(Controller.java:46)
	at org.gephi.preview.PreviewControllerImpl.getModel(PreviewControllerImpl.java:99)
	at org.gephi.preview.PreviewControllerImpl.getModel(PreviewControllerImpl.java:77)
	at org.gephi.project.spi.Controller.getModel(Controller.java:58)
	at org.gephi.preview.PreviewControllerImpl.getModel(PreviewControllerImpl.java:104)
	at org.gephi.preview.PreviewControllerImpl.getModel(PreviewControllerImpl.java:77)
	at wdc.utils.gephi.GephiTest.toolkit(GephiTest.java:84)

I am using Java11 and Maven for managing dependencies.

Any ideas what I am missing here? The more or less same code runs without problems in the gephi-toolkit-demo-project.

In hope for any help,
Tino

Issue with Modularity

I'm reading a .gexf and loading 126 nodes with 378 edges. I'm then trying to perform Modularity:
Modularity modularity = new Modularity(); modularity.setRandom(true); modularity.setUseWeight(true); modularity.setResolution(0.8); modularity.setProgressTicket(ticket); modularity.execute(graphModel);

However, the algorithm hangs. Inside ProgressTicket, only start() is called and finish() is never called. It hangs for about 2 minutes and then stops "Process finished with exit code 0". - No errors.

What is going on here?

Failed artifact retrieval due to "Cookie rejected"

I had problem when retrieving gephi.
Here's the message I got when mvn install:

[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building gephi-demo
[INFO]    task-segment: [install]
[INFO] ------------------------------------------------------------------------
[INFO] [resources:resources {execution: default-resources}]
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO] snapshot org.gephi:gephi-toolkit:0.9-SNAPSHOT: checking for updates from clojars
[INFO] snapshot org.gephi:gephi-toolkit:0.9-SNAPSHOT: checking for updates from Gephi Releases
[INFO] snapshot org.gephi:utils-longtask:0.9-SNAPSHOT: checking for updates from clojars
[INFO] snapshot org.gephi:utils-longtask:0.9-SNAPSHOT: checking for updates from Gephi Releases
[INFO] snapshot org.gephi:utils-longtask:0.9-SNAPSHOT: checking for updates from netbeans
[INFO] snapshot org.gephi:utils-longtask:0.9-SNAPSHOT: checking for updates from gephi-nexus
[WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = '6c3759751e04b1a49ee89392ef7799609d5bb292'; remote = 'c8ffb31918819a0e27f9d8ec8098ca243a1b8344' - RETRYING
[WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = '6c3759751e04b1a49ee89392ef7799609d5bb292'; remote = 'c8ffb31918819a0e27f9d8ec8098ca243a1b8344' - IGNORING
[INFO] snapshot org.gephi:utils-longtask:0.9-SNAPSHOT: checking for updates from gephi
[INFO] snapshot org.gephi:utils-longtask:0.9-SNAPSHOT: checking for updates from beans-binding
[INFO] snapshot org.gephi:gephi-parent:0.9-SNAPSHOT: checking for updates from clojars
[INFO] snapshot org.gephi:gephi-parent:0.9-SNAPSHOT: checking for updates from Gephi Releases
[INFO] snapshot org.gephi:gephi-parent:0.9-SNAPSHOT: checking for updates from netbeans
[INFO] snapshot org.gephi:gephi-parent:0.9-SNAPSHOT: checking for updates from gephi-nexus
[WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = '378086424b26d7dca9315802e00fb84e66ab1a96'; remote = 'f6faeec077926e715542a84be00c0618d651d80f' - RETRYING
[WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = '378086424b26d7dca9315802e00fb84e66ab1a96'; remote = 'f6faeec077926e715542a84be00c0618d651d80f' - IGNORING
[INFO] snapshot org.gephi:gephi-parent:0.9-SNAPSHOT: checking for updates from gephi
[INFO] snapshot org.gephi:gephi-parent:0.9-SNAPSHOT: checking for updates from beans-binding
Downloading: http://nexus.gephi.org/nexus/content/repositories/snapshots/org/gephi/gephi-parent/0.9-SNAPSHOT/gephi-parent-0.9-20141206.171548-1870.pom
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to resolve artifact.

Unable to get dependency information: Unable to read the metadata file for artifact 'org.gephi:utils-longtask:jar': Cannot find parent: org.gephi:gephi-parent for project: org.gephi:utils-longtask:nbm:0.9-SNAPSHOT for project org.gephi:utils-longtask:nbm:0.9-SNAPSHOT
  org.gephi:utils-longtask:jar:0.9-SNAPSHOT

from the specified remote repositories:
  central (https://repo1.maven.org/maven2/),
  Gephi Snapshots (http://nexus.gephi.org/nexus/content/repositories/snapshots/),
  Gephi Releases (http://nexus.gephi.org/nexus/content/repositories/releases/),
  netbeans (http://bits.netbeans.org/maven2/),
  gephi (http://nexus.gephi.org/nexus/content/repositories/thirdparty/),
  gephi-nexus (http://nexus.gephi.org/nexus/content/repositories/snapshots),
  beans-binding (http://download.java.net/maven/2/),
  clojars (https://clojars.org/repo/)

Path to dependency: 
    1) gephi-demo:gephi-demo:jar:0.1.0-SNAPSHOT
    2) org.gephi:gephi-toolkit:jar:0.9-SNAPSHOT



Caused by I/O exception: http://nexus.gephi.org/nexus/content/repositories/snapshots/org/gephi/gephi-parent/0.9-SNAPSHOT/gephi-parent-0.9-20141206.171548-1870.pom

[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 11 seconds
[INFO] Finished at: Mon Jan 12 22:13:35 JST 2015
[INFO] Final Memory: 13M/105M
[INFO] ------------------------------------------------------------------------

Here's the pom.xml I used.

<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>gephi-demo</groupId>
  <artifactId>gephi-demo</artifactId>
  <packaging>jar</packaging>
  <version>0.1.0-SNAPSHOT</version>
  <name>gephi-demo</name>
  <description>FIXME: write description</description>
  <url>http://example.com/FIXME</url>
  <licenses>
    <license>
      <name>Eclipse Public License</name>
      <url>http://www.eclipse.org/legal/epl-v10.html</url>
    </license>
  </licenses>
  <build>
    <sourceDirectory>src</sourceDirectory>
    <testSourceDirectory>test</testSourceDirectory>
    <resources>
      <resource>
        <directory>resources</directory>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>dev-resources</directory>
      </testResource>
      <testResource>
        <directory>resources</directory>
      </testResource>
    </testResources>
    <directory>target</directory>
    <outputDirectory>target/classes</outputDirectory>
    <plugins/>
  </build>
  <repositories>
    <repository>
      <id>central</id>
      <url>https://repo1.maven.org/maven2/</url>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
      <releases>
        <enabled>true</enabled>
      </releases>
    </repository>
    <repository>
      <id>clojars</id>
      <url>https://clojars.org/repo/</url>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
      <releases>
        <enabled>true</enabled>
      </releases>
    </repository>
    <repository>
      <id>Gephi Snapshots</id>
      <url>http://nexus.gephi.org/nexus/content/repositories/snapshots/</url>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
      <releases>
        <enabled>true</enabled>
      </releases>
    </repository>
    <repository>
      <id>Gephi Releases</id>
      <url>http://nexus.gephi.org/nexus/content/repositories/releases/</url>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
      <releases>
        <enabled>true</enabled>
      </releases>
    </repository>
  </repositories>
  <dependencies>
    <dependency>
      <groupId>org.clojure</groupId>
      <artifactId>clojure</artifactId>
      <version>1.6.0</version>
    </dependency>
    <dependency>
      <groupId>org.gephi</groupId>
      <artifactId>gephi-toolkit</artifactId>
      <version>0.9-SNAPSHOT</version>
    </dependency>
    <dependency>
      <groupId>org.clojure</groupId>
      <artifactId>tools.nrepl</artifactId>
      <version>0.2.6</version>
      <exclusions>
        <exclusion>
          <groupId>org.clojure</groupId>
          <artifactId>clojure</artifactId>
        </exclusion>
      </exclusions>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>clojure-complete</groupId>
      <artifactId>clojure-complete</artifactId>
      <version>0.2.3</version>
      <exclusions>
        <exclusion>
          <groupId>org.clojure</groupId>
          <artifactId>clojure</artifactId>
        </exclusion>
      </exclusions>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

<!-- This file was autogenerated by Leiningen.
  Please do not edit it directly; instead edit project.clj and regenerate it.
  It should not be considered canonical data. For more information see
  https://github.com/technomancy/leiningen -->

SBT unresolved dependencies error

Hi,

I am trying to use the toolkit in a project, but I get errors while trying to add it as a managed library dependency with SBT.

I am using the latest SBT 1.1.5 and Scala 2.12.6

With your suggested

libraryDependencies += "org.gephi" % "gephi-toolkit" % "0.9.2"

the result is

Error while importing sbt project:

[info] Loading project definition from [...]
[info] Loading settings from build.sbt ...
[info] Set current project to [...]
[info] sbt server started at [...]
[info] Defining Global / sbtStructureOptions, Global / sbtStructureOutputFile, shellPrompt
[info] The new values will be used by no settings or tasks.
[info] Reapplying settings...
[info] Set current project to [...]
[info] Applying State transformations org.jetbrains.sbt.CreateTasks from [...]
[info] Reapplying settings...
[info] Set current project to [...]
[info] Updating ...
[warn] 	module not found: org.netbeans.modules#org-netbeans-modules-masterfs;RELEASE82
[warn] ==== local: tried
[warn]   [...]
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/org/netbeans/modules/org-netbeans-modules-masterfs/RELEASE82/org-netbeans-modules-masterfs-RELEASE82.pom
[warn] ==== local-preloaded-ivy: tried
[warn]   [...]
[warn] ==== local-preloaded: tried
[warn]   [...]
[warn] 	module not found: org.netbeans.modules#org-netbeans-core-startup-base;RELEASE82
[warn] ==== local: tried
[warn]   [...]
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/org/netbeans/modules/org-netbeans-core-startup-base/RELEASE82/org-netbeans-core-startup-base-RELEASE82.pom
[warn] ==== local-preloaded-ivy: tried
[warn]  [...]
[warn] ==== local-preloaded: tried
[warn]  [...]
[warn] 	module not found: org.netbeans.modules#org-netbeans-core;RELEASE82
[warn] ==== local: tried
[warn]   [...]
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/org/netbeans/modules/org-netbeans-core/RELEASE82/org-netbeans-core-RELEASE82.pom
[warn] ==== local-preloaded-ivy: tried
[warn]   [...]
[warn] ==== local-preloaded: tried
[warn]   [...]
[warn] 	module not found: org.netbeans.api#org-openide-util-lookup;RELEASE82
[warn] ==== local: tried
[warn]  [...]
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/org/netbeans/api/org-openide-util-lookup/RELEASE82/org-openide-util-lookup-RELEASE82.pom
[warn] ==== local-preloaded-ivy: tried
[warn]   [...]
[warn] ==== local-preloaded: tried
[warn]   [...]

[...]

[warn] 	::::::::::::::::::::::::::::::::::::::::::::::
[warn] 	::          UNRESOLVED DEPENDENCIES         ::
[warn] 	::::::::::::::::::::::::::::::::::::::::::::::
[warn] 	:: org.netbeans.modules#org-netbeans-modules-masterfs;RELEASE82: not found
[warn] 	:: org.netbeans.modules#org-netbeans-core-startup-base;RELEASE82: not found
[warn] 	:: org.netbeans.modules#org-netbeans-core;RELEASE82: not found
[warn] 	:: org.netbeans.api#org-openide-util-lookup;RELEASE82: not found
[warn] 	:: org.netbeans.api#org-openide-util;RELEASE82: not found
[warn] 	:: org.netbeans.api#org-openide-filesystems;RELEASE82: not found
[warn] 	:: net.java.dev#stax-utils;snapshot-20100402: not found
[warn] 	:: org.netbeans.api#org-openide-util-ui;RELEASE82: not found
[warn] 	:: org.netbeans.api#org-openide-dialogs;RELEASE82: not found
[warn] 	:: org.netbeans.api#org-openide-nodes;RELEASE82: not found
[warn] 	:: org.netbeans.api#org-netbeans-api-annotations-common;RELEASE82: not found
[warn] 	::::::::::::::::::::::::::::::::::::::::::::::

[...]

[error] Total time: 10 s, completed May 10, 2018 9:40:30 AM
[info] shutting down server

Any idea?

Thank you in advance,

Mario

Data import from Oracle database ... again ?

Hi.
I am trying to use the oracle driver to access data.
Unfortunately, I am not successful.
It seems, that my nodes gets imported with id values starting from 1 and incremented by 1, even though I my node select statement selects an id columns with different values.
That lead to the issue, that Gephi will not import any edges, as the source and target values will not be found in the nodes list...
For example, here are my queries:
node:
select dbms_utility.get_hash_value(own_resource_uuid,10, 98 ) as id ,
to_char(resource_name) as label
from mdbadmin.ca_owned_resource
where resource_name like 'S%'

edge:
select dbms_utility.get_hash_value(hier_child,10, 98 ) as source,
dbms_utility.get_hash_value(hier_parent,10, 98 ) as target from busmgt

Any idea what I am doing wrong ?
Thank you

OpenOrd is giving indeterministic results

OpenOrd is giving indeterministic results, even when the number of threads is set to 1, in spite of having the same random seed.
I'm using it through Gephi Toolkit.

build failure

I am getting a "BUILD FAILURE" from Maven. This is the error message:

Failed to collect dependencies for [junit:junit:jar:3.8.1 (test), org.gephi:gephi-toolkit:jar:0.9-SNAPSHOT (compile)]: Failed to read artifact descriptor for org.gephi:utils-longtask:jar:0.9-SNAPSHOT: Could not find artifact org.gephi:gephi-parent:pom:0.9-SNAPSHOT in gephi-snapshots (http://nexus.gephi.org/nexus/content/repositories/snapshots/)

I think it's because there is no jar file in this directory: http://nexus.gephi.org/nexus/content/repositories/public/org/gephi/gephi-parent/0.9-SNAPSHOT/

The same problem has been reported here: https://forum.gephi.org/viewtopic.php?f=27&t=2560

dragging and dropping nodes

I want to use this jar package to implement the function of dragging and dropping certain nodes. What should I do?

Geo Layout doesn't work

Hi, I'm using Gephi 0.9.7
I have a geolocated node file and an edge file and I'm trying to use the Geo Layout plug-in.
However, it just doesn't run at all when I click on "run", no matter how I adjust the setting.
Could anyone help to check what the problem would be. Thank you!

How do I use dynamic edges

Using the toolkit, how do I create a graph with dynamic edges, which change weight over time?

edge.setWeight(weight, interval);

Can't use timestamps as the configuration is set to INTERVAL

Unable to build using maven

When I'm trying to use mvn -U clean install it gives me an error

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-gpg-plugin:3.0.1:sign (sign-artifacts) on project gephi-toolkit: Exit code: 2 -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

How am I supposed to fix that?

Settings get stored in a specific language

Settings with the boolean values stored in the Workspace_*_previewmodel_xml files are saved in another language than English.
For example I read „adevărat” for “true” and „fals” for “false”. I'm romanian, and the locale is set to ro_RO.
Now I understand that this may not be the right place to post this, but Gephi has no problem loading the said files; however gephi-toolkit doesn't like it.
The traceback for the error I'm getting is:

Exception during conversion.
org.gephi.project.io.GephiFormatException: Gephi failed importing the project.

Exception: IllegalArgumentException : fals
File: org.netbeans.beaninfo.editors.WrappersEditor
Line : 98
	at org.gephi.project.io.LoadTask.run(LoadTask.java:173)
	at com.figshare.gephi.converter.FigshareConverter.readGraph(FigshareConverter.java:31)
	at com.figshare.gephi.converter.ProgramStart.run(ProgramStart.java:27)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: fals
	at org.netbeans.beaninfo.editors.WrappersEditor.setAsText(WrappersEditor.java:98)
	at org.gephi.utils.Serialization.readValueFromText(Serialization.java:99)
	at org.gephi.preview.PreviewModelImpl.readXML(PreviewModelImpl.java:485)
	at org.gephi.preview.PreviewPersistenceProvider.readXML(PreviewPersistenceProvider.java:81)
	at org.gephi.project.io.LoadTask.readWorkspaceChildrenXML(LoadTask.java:298)
	at org.gephi.project.io.LoadTask.run(LoadTask.java:128)
	... 3 more
Caused by: org.netbeans.core.UIExceptions$AnnException: fals
	at org.netbeans.core.UIExceptions$AnnException.findOrCreate(UIExceptions.java:119)
	at org.netbeans.core.UIExceptions.annotateUser(UIExceptions.java:79)
	at org.netbeans.beaninfo.editors.WrappersEditor.setAsText(WrappersEditor.java:105)
	... 8 more
Caused by: 

Link to jitpack repo

Hi, could you link GH project to jitpack so the jar can be included in maven projects the same way as any other mvn dependency.
It's much more convenient that manually downloading the jar....the best would even to publish it on maven publics repos. ;-p

Set node color

Apologies that this is not an issue but a question. I tried emailing [email protected] but have received no reply.

The question is: is there a way to set the color of all nodes (regardless of any attribute)? There isn't a field in PreviewProperty for node color as there is for edge color (EDGE_COLOR). I guess perhaps I need to use UniqueElementColorTransformer, and I tried the following:

Function simpleNodeColor = appearanceModel.getNodeFunction(graph, AppearanceModel.GraphFunction.NODE_DEGREE, UniqueElementColorTransformer.class);
UniqueElementColorTransformer nodeColorTransformer = (UniqueElementColorTransformer) simpleNodeColor.getTransformer();
nodeColorTransformer.setColor(Color.GRAY);
appearanceController.transform(simpleNodeColor);

However, the second line always give me a NullPointerException. I'd really appreciate if you could give me some clues or example code. Thanks a lot!

GraphController.getGraphModel not JRE1.7 compatible

I'm using the Toolkit version 0.92 and was trying to modify the PreviewDemo to use the GraphStreaming Plugin like described here.

//Init a project - and therefore a workspace
ProjectController pc = Lookup.getDefault().lookup(ProjectController.class);
pc.newProject();
Workspace workspace = pc.getCurrentWorkspace();

GraphController graphController = Lookup.getDefault().lookup(GraphController.class);
GraphModel graphModel = graphController.getGraphModel(workspace);   // it fails here
Graph graph = graphModel.getGraph();

StreamingController controller = Lookup.getDefault().lookup(StreamingController.class);
StreamingEndpoint endpoint = new StreamingEndpoint(getInitialStreamSource(), controller.getStreamType("JSON"));

try {
	StreamingConnection connection = controller.connect(endpoint, graph);
	connection.process();
} catch (IOException e1) {
	e1.printStackTrace();
}

I'm using JRE.17 (for backwards-compatibility reasons) and according to the documentation, gephi and the toolkit should be compatible. However, as soon as I try to retrieve the GraphModel from the GraphController, I get the following exception

Exception in thread "main" java.lang.UnsupportedClassVersionError: it/unimi/dsi/fastutil/shorts/ShortSortedSet : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at org.gephi.graph.impl.GraphStore.<init>(GraphStore.java:79)
at org.gephi.graph.impl.GraphModelImpl.<init>(GraphModelImpl.java:59)
at org.gephi.graph.api.GraphModel$Factory.newInstance(GraphModel.java:116)
at org.gephi.graph.GraphControllerImpl.newGraphModel(GraphControllerImpl.java:85)
at org.gephi.graph.GraphControllerImpl.getGraphModel(GraphControllerImpl.java:77)
at com.foobar.myapp.main.PreviewJFrame.script(PreviewJFrame.java:52)
at com.foobar.myapp.main.App.showUI(App.java:100)
at com.foobar.myapp.main.App.main(App.java:42)

A quick search told me that this is most likely due to a JRE version mismatch.

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.