All Projects β†’ mwarning β†’ MeshGraphViewer

mwarning / MeshGraphViewer

Licence: other
Visualize mesh graphs as forcegraph and on OpenStreetMap

Programming Languages

javascript
184084 projects - #8 most used programming language
c
50402 projects - #5 most used programming language
CSS
56736 projects
HTML
75241 projects
Makefile
30231 projects

Projects that are alternatives of or similar to MeshGraphViewer

gmaps-geofence
create area geofencing in google map using react js
Stars: ✭ 34 (+142.86%)
Mutual labels:  openstreetmap
organicmaps
πŸƒ Organic Maps is a free Android & iOS offline maps app for travelers, tourists, hikers, and cyclists. It uses crowd-sourced OpenStreetMap data and is developed with love by MapsWithMe (MapsMe) founders and our community. No ads, no tracking, no data collection, no crapware. Your donations and positive reviews motivate and inspire our small team!
Stars: ✭ 3,689 (+26250%)
Mutual labels:  openstreetmap
scoreboard
Encouraging OpenStreetMap mappers with badges, graphs & stats! βœ¨πŸ•Ή
Stars: ✭ 26 (+85.71%)
Mutual labels:  openstreetmap
UBA
UEBA Solution for Insider Security. This repo is archived. Thanks!
Stars: ✭ 36 (+157.14%)
Mutual labels:  d3js
Delphi OSMMap
Visual control for Delphi and Lazarus to display OSM map
Stars: ✭ 27 (+92.86%)
Mutual labels:  openstreetmap
openpoiservice
πŸ“ Openpoiservice is a flask application which hosts a highly customizable points of interest database derived from OpenStreetMap data.
Stars: ✭ 134 (+857.14%)
Mutual labels:  openstreetmap
osm-export-tool-python
command line tool + Python library for exporting OSM in various file formats.
Stars: ✭ 32 (+128.57%)
Mutual labels:  openstreetmap
GpsPrune
GpsPrune is a map-based application for viewing, editing and converting coordinate data from GPS systems.
Stars: ✭ 46 (+228.57%)
Mutual labels:  openstreetmap
cloud-tileserver
Serve mapbox vectortiles via AWS stack
Stars: ✭ 48 (+242.86%)
Mutual labels:  openstreetmap
Simple-charts
Simple responsive charts
Stars: ✭ 15 (+7.14%)
Mutual labels:  d3js
github-readme-twitter
Add Twitter to your github readme
Stars: ✭ 73 (+421.43%)
Mutual labels:  d3js
rsgeotools
OpenStreetMap-based 3D world generator from Generation Streets
Stars: ✭ 87 (+521.43%)
Mutual labels:  openstreetmap
d3-force-surface
A multi-surface elastic collision force type for the d3-force simulation engine
Stars: ✭ 19 (+35.71%)
Mutual labels:  d3js
s60-maps
Yet another maps for Symbian OS
Stars: ✭ 27 (+92.86%)
Mutual labels:  openstreetmap
municipios-br
Dados em formato aberto sobre municΓ­pios e unidades federativas do Brasil.
Stars: ✭ 58 (+314.29%)
Mutual labels:  openstreetmap
chord-transitions
Transitioning Chord Diagram Demo with Angular/D3
Stars: ✭ 38 (+171.43%)
Mutual labels:  d3js
NotesReview
πŸ“ Interface for searching and resolving OpenStreetMap notes
Stars: ✭ 34 (+142.86%)
Mutual labels:  openstreetmap
cosmogony
easy to use & easy to update geographic regions
Stars: ✭ 90 (+542.86%)
Mutual labels:  openstreetmap
avatarmake
Easily make your own cartoon avatar base on d3.js
Stars: ✭ 34 (+142.86%)
Mutual labels:  d3js
mapcontrib
Thematic OpenStreetMap contribution
Stars: ✭ 63 (+350%)
Mutual labels:  openstreetmap

Mesh Graph Viewer

Read a simple JSON graph file from disk and display a fancy interactive mesh graph. Interactions with the graph (selection, deletion, etc.) and custom commands can be passed to external programs. The view is updated as soon as the input file is changed.

Written in an unholy combination of C and JavaScript. Build with d3js, leafletjs and libmicrohttpd.

graph and map view

Topological and geographical view of the same graph. Switch between views with the S icon.

Usage

Usage: graph-tool [<arguments>] <graph-file>

Arguments:

  • --graph graph-file
    Graph topology and data in JSON format. May be first unnamed argument.
    The graph file is reloaded when its timestamp changes.
  • --call path|address
    Commands triggered via the web interface are used as programm arguments,
    or send to a unix socket file or given IP address via TCP/UDP.
    E.g. /usr/bin/send_program, unix:///var/com.sock, tcp://localhost:3000.
  • --config json-file
    Configuration file for custom command buttons, colors and map tile sources.
  • --open
    Open browser and show graph.
  • --webserver-address address
    Address for the build-in webserver. Default: 127.0.0.1:8000
  • --webserver-path path
    Root folder for the build-in webserver. For development. Default: internal
  • --write-out-files path
    Write included html/js/css files to disk. For development.
  • --version
    Print version.
  • --help
    Display help.

Graph JSON format

Minimal graph example:

{
  "links": [{"source": "a", "target": "b"}]
}

More elaborate example:

{
  "nodes": [
    {
      "id": "a"
    },
    {
      "id": "b",
      "x": 100,
      "y": 200,
      "label": "Label",
      "name": "Name",
      "radius": 12,
      "color": "#DAA520",
      "clients": 5
    }
  ],
  "links": [
    {
      "source": "a",
      "target": "b",
      "target_tq": 1,
      "source_tq": 1,
      "color": "#7CFC00",
      "label": "Link A/B"
    }
  ]
}

Note:

  • id/source/target: Node identifier. These are mandatory options.
  • target_tq/source_tq: link quality in the range of [0..1].
  • label: Display a label on top of a node or link.
  • name: Display a name under a node. Defaults to id if not disabled.
  • x/y: Geographical position, also used for initial position in topological view.
  • clients: Display a number of small circles around each node.
  • color: Color of a node or link. CSS color format. By default the link color is based on target_tq and source_tq.
  • radius: Radius of the node circle.

Build

Install:

  • C compiler (e.g. clang or gcc)
  • xxd tool to include html/js/css data into binary (often in package vim-common)
  • libmicrohttpd and the development headers

Build:

make

This should create a single standalone program called graph-viewer.

Custom Buttons

Add new buttons using the configuration file config.json and pass it to grap-viewer via the --config argument. Other available options like colors etc. can be gathered from the internal index.html default config object.

Command line variables

In the command line, the variables %selected_nodes% and %selected_links% will be expanded to a comma separated list.

Related Software

Authors

The base of the JavaScript/CSS code was taken from the MeshViewer project.

License

All JavaScript/CSS code is AGPL-3 because it is the original license, everything else is MIT.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].