This is a tool for creating linked open data cloud diagrams, such as those found at http://lod-cloud.net/.
This project is written in Rust and can be compiled with Cargo as follows
cargo build --release
This will create a binary under target/release/lod-cloud-draw that can be used to create cloud diagrams
To use this library you must have gfortran installed in your pc
Tool used to create LOD cloud diagrams as SVG. The cloud is created as a minimization of the following function:
f(V,E) = s sum_{e} spring(e) + r sum{v1} sum{v2} repulse(v1, v2, d) + w * sum_{v} well(v, c)
Where:
And s,r,w are tuning constants
lod-cloud-draw [OPTIONS] <data.json> <output.svg>
-h, --help Prints help information
-V, --version Prints version information
--algorithm <cg|lbfgsb> The algorithm used to find the cloud diagram (cg=Conjugate
Gradient or lbfgsb = Limited BFGS)
-w, --well <FORCE> The value of the well boundary force
--canvas-rigidity <FACTOR> The rigidity of the well
-c, --canvas <PIXELS> The radius of the circle that the bubbles should be contained in
--ident <none|neighbour|tags> The algorithm used to identify domain (bubble colours) of unidentified datasets
-i, --max-iters <ITERATIONS> The maximum number of iterations to perform (default=10000)
-n, --n-blocks <BLOCKS> Apply an n x n blocking method to speed up the algorithm
(default=1, no blocking)
-r, --repulse <FORCE> The value of the repulsion force
-d, --distance <PIXELS> The minimal distance between bubbles
--repulse-rigidity <FACTOR> The rigidity of repulsion between bubbles
-e, --settings <settings.json> The JSON file containing the settings for the system
-s, --spring <FORCE> The value of the spring force
<data.json> The data of the LOD cloud
<output.svg> The path of the SVG file to write to
In order to create a cloud diagram a settings file is required, this is a JSON file as follows
legend
: The legend (categories) to show; an array of legend entries (see below)fixed_points
: If any datasets should occur at a fixed position; dictionary
of strings to an array of two floating point numbersselection
: Selection method: Either "all", "dataset" or "domain"selected
: The value of the dataset/domain to be selectedhops
: The number of hops from a dataset in dataset modedatasets
: Any datasets that must be included in the datarights_text
: The description and copyright textlogo_link
: The logo (link) (to be included in the bottom right of the image)logo_width
: The logo widthLegend entries consist of the following
title
: The display title to be shown to the userdomain
: The value of the domain
property in data that corresponds tocolour
: The (HTML) colour of this legendkeywords
: The keywords that identify this domainExamples of this may be found under the clouds
folder
Data may be obtained from the following URL
https://lod-cloud.net/lod-data.json
Rebuilding from the live version can be done with the following command
python3 scripts/get-data.py