Skip to content

Commit

Permalink
Added code base
Browse files Browse the repository at this point in the history
  • Loading branch information
eren-ck committed May 11, 2020
1 parent 986d9e8 commit f646f6c
Show file tree
Hide file tree
Showing 25 changed files with 93,863 additions and 1 deletion.
Binary file added .DS_Store
Binary file not shown.
18 changes: 18 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 1,18 @@
module.exports = {
env: {
browser: true,
es6: true,
},
extends: 'plugin:prettier/recommended',
plugins: ['prettier'],
globals: {
Atomics: 'readonly',
SharedArrayBuffer: 'readonly',
},
parserOptions: {
ecmaVersion: 6,
sourceType: 'module',
ecmaFeatures: {},
},
rules: {},
};
6 changes: 6 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 1,6 @@
{
"semi": true,
"singleQuote": true,
"tabWidth": 2,
"useTabs": false
}
58 changes: 57 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,2 1,58 @@
# MotionGlyphs
MotionGlyphs
============================================
Visual Abstraction of Spatio-Temporal Networks in Collective Animal Behavior
<p align="center">
<img width="800" src="static/slide-1.png">
</p>

### Abstract
<p align="justify">
Domain experts for collective animal behavior analyze relationships between single animal movers and groups of animals over time and space to detect emergent group properties. A common way to interpret this type of data is to visualize it as a spatio-temporal network. Collective behavior data sets are often large, and may hence result in dense and highly connected node-link diagrams, resulting in issues of node-overlap and edge clutter. In this design study, in an iterative design process, we developed glyphs as a design for seamlessly encoding relationships and movement characteristics of a single mover or clusters of movers. Based on these glyph designs, we developed a visual exploration prototype, MotionGlyphs, that supports domain experts in interactively filtering, clustering, and animating spatio-temporal networks for collective animal behavior analysis. By means of an expert evaluation, we show how MotionGlyphs supports important tasks and analysis goals of our domain experts, and we give evidence of the usefulness for analyzing spatio-temporal networks of collective animal behavior.</p>

_This repository provides a JavaScript implementation of MotionGlyphs prototype as described in the paper:_

```bibtex
@article{CaScBu 2020MotionGlyphs,
author = {Cakmak, Eren and Schäfer, Hanna and Buchmüller, Juri and Fuchs, Johannes and Schreck, Tobias and Jordan, Alex and Keim, Daniel A.},
journal = {Computer Graphics Forum},
number = {3},
title = {MotionGlyphs: Visual Abstraction of Spatio-Temporal Networks in Collective Animal Behavior},
volume = {39},
year = {2020}
}
```

## Online Demo

The prototype is online: __[Demo](https://glyph.dbvis.de/)__

### How to locally install

First, install the `node.js` modules and run wepack.

```
> npm install
> npm run watch
```

After that, start a webserver of your choice and move generated project `dist` folder

### Datasets

The following datasets are avaiable:

* `fish-5.csv` a part of real-world lab experiment with five stickleback fish
* `data-1.csv` artificially generate data with the Reynolds model
* `data-2.csv` artificially generate data with the Couzin model
* `data-3.csv` artificially generate data with the Reynolds model and clusters
* `fish-151.csv` a part of a real-world lab experiment with 151 golden shiner fish

The datasets were preprocessed and clustered with the following packages:

* [Movekit](https://github.com/dbvis-ukon/movekit)
* [ST-DBSCAN](https://github.com/eren-ck/st_dbscan)
* [ST-OPTICS](https://github.com/eren-ck/st_optics) - the usage of the package is optional

## License
Released under MIT License. See the [LICENSE](LICENSE) file for details.
The package was developed by Eren Cakmak from the [Data Analysis and Visualization Group](https://www.vis.uni-konstanz.de/) and the [Department of Collective Behaviour](http://collectivebehaviour.com) at the University Konstanz funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under Germany's Excellence Strategy – EXC 2117 – 422037984.
Binary file added data/.DS_Store
Binary file not shown.
15,001 changes: 15,001 additions & 0 deletions data/data-1.csv

Large diffs are not rendered by default.

15,001 changes: 15,001 additions & 0 deletions data/data-2.csv

Large diffs are not rendered by default.

15,001 changes: 15,001 additions & 0 deletions data/data-3.csv

Large diffs are not rendered by default.

30,352 changes: 30,352 additions & 0 deletions data/fish-151.csv

Large diffs are not rendered by default.

15,006 changes: 15,006 additions & 0 deletions data/fish-5.csv

Large diffs are not rendered by default.

39 changes: 39 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 1,39 @@
{
"name": "prototype",
"version": "0.0.1",
"description": "",
"main": ".eslintrc.js",
"scripts": {
"build": "webpack --config webpack.dev.js",
"watch": "webpack --config webpack.dev.js --watch",
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"clean-webpack-plugin": "^3.0.0",
"copy-webpack-plugin": "^5.0.3",
"css-loader": "^3.0.0",
"eslint": "^5.16.0",
"extract-text-webpack-plugin": "^4.0.0-beta.0",
"file-loader": "^4.0.0",
"node-sass": "^4.12.0",
"npm-update-all": "^1.0.1",
"popper.js": "^1.15.0",
"sass-loader": "^7.1.0",
"style-loader": "^0.23.1",
"svg-inline-loader": "^0.8.0",
"uglifyjs-webpack-plugin": "^2.1.3",
"webpack": "^4.35.0",
"webpack-cli": "^3.3.5"
},
"dependencies": {
"@mdi/font": "^3.7.95",
"bootstrap": "^4.3.1",
"bootstrap-select": "^1.13.10",
"d3": "^5.9.2",
"html-webpack-plugin": "^3.2.0",
"jquery": "^3.4.1"
}
}
Loading

0 comments on commit f646f6c

Please sign in to comment.