Code Monkey home page Code Monkey logo

constellation's Introduction

Constellation is a graph-focused data visualisation and interactive analysis application enabling data access, federation and manipulation capabilities across large and complex data sets.

Table of Contents

Vision Statement

Constellation is a first class, domain agnostic data visualisation and analysis application enabling the user to solve large and complex data problems in a simple and intuitive way.

  • Users: data analysts, data scientists, and all people interested in graph data analysis.

  • Data analysis domains: graph datasets with rich feature data e.g. social networks, network infrastructure, chemical composition, etc.

Constellation Application

Core Values

Performance over Functionality

The most important value is making sure Constellation stays performant. If this means we have to sacrifice some functionality if it will degrade performance then that’s what we will do. Features are “easy” to add but keeping the application performant is harder.

Generic over Specialisation

Constellation is designed to provide a broad range of functionality with the idea of being a “bridge between tools”. For example Constellation’s Map View is not meant to be a fully fledged mapping tool; for that use ArcGIS.

Usability over Precision

We value sensible defaults in features so you can just use them rather than having to fill out a form of parameters first. This means that running analytics like the “Cosine Similarity Analytic” will be accurate but if you want to tweak this then you will have to use a different method like a Jupyter Notebook.

Prerequisites

  • The OpenGL graph display works with NVIDIA and ATI graphics cards that support OpenGL 3.3 or later. It is known to not work with older Intel on-board graphics cards.

Download Constellation

Download Constellation by going to the release page.

Run Constellation

Unzip the constellation.zip bundle and double click the constellation64.bat for Windows or run the bin\constellation shell script for Linux and MacOSX.

Note that if you are running Constellation in a virtual machine and have issues using VirtualBox then give VMWare a go as it seems to have better support for OpenGL.

Build Constellation

To build Constellation from source code do the following:

  • Download Azul’s Zulu distribution of JDK 11 with JFX 11, either the Windows 64 bit, Linux 64 bit or MacOSX 64 bit

  • Download NetBeans 12

  • Update netbeans_jdkhome in netbeans.conf (e.g. C:\Program Files\NetBeans-12\netbeans\etc) to point to the Azul Zulu JDK you downloaded (e.g. C:\Program Files\Azul\zulu11.37.19-ca-fx-jdk11.0.6-win_x64)

  • Clone this repository

  • Open the Constellation module suite from NetBeans

  • In the Projects view, expand Important Files > Build Script > Right click > Update dependencies and clean build. This can take around 20 minutes to download the first time depending on your internet connection so feel free to get a ☕ and come back later.

  • Start Constellation by right clicking on Constellation > Run

Package Constellation

To package Constellation in a zip bundle do the following:

  • In NetBeans, expand Constellation > Important Files

  • Right click on Build Script and run the build-zip

  • Navigate to the dist folder to get constellation.zip file

  • If you want to use a specific JRE (e.g. zulu11.37.19-ca-fx-jre11.0.6-win_x64) then copy this to the same level as the bin folder and call it jre. This is the default folder name Constellation expects but you can change this from etc\constellation.conf.

Note that Constellation “Core” (which is this repository) is designed to be domain agnostic and work standalone. The version of Constellation available for download from the official website is built with additional plugins and managed via the Constellation-Applications repository.

Contributing to Constellation

For more information please see the contributing guide.

Documentation

  • Constellation 101 Slides (coming soon)

  • Overview Video (coming later)

  • Quick Start Guide

  • User Guide (coming later)

  • Built in documentation to Constellation exists

Training

Common Troubleshooting Checks

  • You can check whether your graphics card is supported by following these steps:
  1. Click on File > New Graph to create a graph

  2. Click on Experimental > Build Graph > Sphere Graph to create a random graph.

  3. If you can see a graph try to interact with it using the mouse.

  4. If the graph view remains blank, you may not have a supported graphics card.

  • Click on Help > JOGL Version to see the graphics card capabilities of your machine.

  • Click on Help > Show Logs to view Constellation log information.

Acknowledgments

Third party libraries and assets were used in development of Constellation, please view attribution list for details.

constellation's People

Contributors

arcturus2 avatar antares1470 avatar aldebaran30701 avatar cygnus-x-1 avatar formalhaut69 avatar algol60 avatar delphinus8821 avatar auriga2 avatar sol695510 avatar serpens24 avatar groombridge34a avatar nova-2119 avatar atlas139mkm avatar crucisgamma avatar altair1673 avatar formalhaunt avatar mimosa2 avatar orionsguardian avatar abhi-nath avatar theden avatar rsabhi avatar guilty-spark-343 avatar imranraza83 avatar spica198 avatar capricornunicorn123 avatar polaris5514 avatar centauri0320001 avatar gchqdeveloper601 avatar hydra41 avatar bentipping avatar

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.