jvarkit

GephiCmd

Last commit

Cmd-line oriented for gephi.

Usage

Usage: gephicmd [options] Files
  Options:
    -h, --help
      print help and exit
    --helpFormat
      What kind of help
      Possible Values: [usage, markdown, xml]
    -o, --output
      Output file. Optional . Default: stdout
    --version
      print version and exit
    -e
      override properties. syntax 'key1:value1;key2:value2;...'
      Default: <empty string>
    -f
      zero or more java property files. formatted like a java.util.Properties 
      file. https://docs.oracle.com/cd/E23095_01/Platform.93/ATGProgGuide/html/s0204propertiesfileformat01.html
      Default: []
    -l
      list available/default properties and exit with success
      Default: false

Keywords

Compilation

Requirements / Dependencies

Download and Compile

$ git clone "https://github.com/lindenb/jvarkit.git"
$ cd jvarkit
$ make gephicmd

The *.jar libraries are not included in the main jar file, so you shouldn’t move them. The required libraries will be downloaded and installed in the dist directory.

Experimental: you can also create a fat jar which contains classes from all the libraries, on which your project depends (it’s bigger). Those fat-jar are generated by adding standalone=yes to the gnu make command, for example ` make gephicmd standalone=yes`.

edit ‘local.mk’ (optional)

The a file local.mk can be created edited to override/add some definitions.

For example it can be used to set the HTTP proxy:

http.proxy.host=your.host.com
http.proxy.port=124567

Source code

https://github.com/lindenb/jvarkit/tree/master/src/main/java/com/github/lindenb/jvarkit/tools/gephi/GephiCmd.java

Contribute

License

The project is licensed under the MIT license.

Citing

Should you cite gephicmd ? https://github.com/mr-c/shouldacite/blob/master/should-I-cite-this-software.md

The current reference is:

http://dx.doi.org/10.6084/m9.figshare.1425030

Lindenbaum, Pierre (2015): JVarkit: java-based utilities for Bioinformatics. figshare. http://dx.doi.org/10.6084/m9.figshare.1425030

Compilation

tested with gephi-0.9.2

a variable gephi_home must be defined in local.mk pointing to the local installation of gephi.

$ cat local.mk

gephi_home=${HOME}/package/gephi-0.9.2

Input

input is a GEXF file or it reads a GEXF from stdin.

Example

list the available properties:

 java -jar dist/gephicmd.jar -l

convert gexf file to SVG

 
 $ java -jar dist/gephicmd.jar -e 'layout.duration:10;layout.time.unit:SECONDS;layout.algorithm:fruchtermanReingold;node.label.show:true;node.label.outline.opacity:15;node.label.shorten:true;edge.label.max-char:20;node.opacity:30;edge.color:blue;' -o out.svg in.gexf
Aug 27, 2018 5:51:14 PM org.gephi.io.processor.plugin.DefaultProcessor process
INFO: # Nodes loaded: 497
Aug 27, 2018 5:51:14 PM org.gephi.io.processor.plugin.DefaultProcessor process
INFO: # Edges loaded: 619
[INFO][GephiCmd]running fruchtermanReingold layout for 10 SECONDS(s)
[INFO][GephiCmd]done
[INFO][GephiCmd]exporting to out.svg

Example of property file.

layout.duration=10
layout.time.unit=SECONDS
layout.algorithm=fruchtermanReingold

node.label.show=true
node.label.outline.opacity=1
node.label.outline.size=0.5
node.label.proportinalSize=false
node.label.shorten=true
node.label.color=rgb(255,255,0,100)
node.label.font=Nimbus,PLAIN,12
edge.label.max-char=2
node.label.outline.color=blue
node.label.box=true
node.label.box.color=green
node.label.box.opacity=10

edge.radius=0.1
node.opacity=30
edge.color=lightcoral
edge.thickness=0.5

background-color=gainsboro
directed=true
arrow.size=300

Screenshots

https://twitter.com/yokofakun/status/1034107797439504384

https://twitter.com/yokofakun/status/1034107797439504384

https://twitter.com/yokofakun/status/1034397660189523968

https://twitter.com/yokofakun/status/1034397660189523968

https://twitter.com/yokofakun/status/1034440031589552128

https://twitter.com/yokofakun/status/1034440031589552128

Note to self:

part of the code was generated using java2xml && xslt see https://gist.github.com/lindenb/890b9957f768c4bad61b271de7747d07