piling.js

A general framework and library for exploring thousands of small multiples

https://github.com/flekschas/piling.js

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.9%) to scientific vocabulary

Keywords

javascript pilingjs small-multiples visual-piling visualization webgl

Keywords from Contributors

interactive mesh interpretability profiles distribution sequences generic projection standardization optim
Last synced: 4 months ago · JSON representation ·

Repository

A general framework and library for exploring thousands of small multiples

Basic Info
  • Host: GitHub
  • Owner: flekschas
  • License: mit
  • Language: JavaScript
  • Default Branch: master
  • Homepage: https://piling.js.org
  • Size: 81.9 MB
Statistics
  • Stars: 258
  • Watchers: 4
  • Forks: 14
  • Open Issues: 38
  • Releases: 28
Topics
javascript pilingjs small-multiples visual-piling visualization webgl
Created over 6 years ago · Last pushed almost 3 years ago
Metadata Files
Readme Changelog License Citation

README.md

Piling.js

**A general framework and library for visual piling/stacking.**


[![Docs](https://img.shields.io/badge/docs-📖-7fcaff.svg?style=flat-square&color=7fd4ff)](https://piling.js.org/docs) [![NPM Version](https://img.shields.io/npm/v/piling.js.svg?style=flat-square&color=7f99ff)](https://npmjs.org/package/piling.js) [![Build Status](https://img.shields.io/github/workflow/status/flekschas/piling.js/build?color=a17fff&style=flat-square)](https://github.com/flekschas/piling.js/actions?query=workflow%3Abuild) [![File Size](http://img.badgesize.io/https://unpkg.com/piling.js/dist/piling.min.js?compression=gzip&color=e17fff&style=flat-square)](https://bundlephobia.com/result?p=piling.js) [![Code Style Prettier](https://img.shields.io/badge/code%20style-prettier-ff7fe1.svg?style=flat-square)](https://github.com/prettier/prettier#readme) [![Demos](https://img.shields.io/badge/demo-👍-ff7fa5.svg?style=flat-square)](https://piling.js.org/demos)
![Preview](https://user-images.githubusercontent.com/932103/65613151-8107e980-df83-11e9-86bf-72be591fe284.gif)

Piling.js currently supports visual piling of images, matrices, and SVG out of the box, but can easily be customized with your own render.

Get Started

Install

bash npm install piling.js pixi.js

PixiJS is the underlying WebGL rendering engine. It's not pre-bundled in case your application needs to use PixiJS elsewhere.

Optionally, if you want to lay out piles by more than two attributes you have to install UMAP as follows.

bash npm install umap-js

Quick Start

Let's pile some natural images

```javascript import createPilingJs, { createImageRenderer } from 'piling.js';

// define your items const items = [{ src: 'http://example.com/my-fancy-photo.png' }, ...];

// instantiate a matching the data type of your items const itemRenderer = createImageRenderer();

const piling = createPilingJs( document.getElementById('demo'), // dom element in which piling.js will be rendered { // Mandatory: add the items and corresponding renderer items, itemRenderer, // Optional: configure the view specification columns: 4 } ); ```

Et voilà 🎉

teaser-natural-images

Examples & Templates

Piling.js with a Visualization Library

Piling.js with an Application Framework

Development

Install

bash git clone https://github.com/flekschas/piling.js cd piling.js npm install

Start the Development Server

npm start

Cite Piling.js

bibtex @article{lekschas2021generic, author = {Fritz Lekschas and Xinyi Zhou and Wei Chen and Nils Gehlenborg and Benjamin Bach and Hanspeter Pfister}, title = {A Generic Framework and Library for Exploration of Small Multiples through Interactive Piling}, publisher = {IEEE}, journal = {IEEE Transactions on Visualization and Computer Graphics}, series = {InfoVis ’20}, year = {2021}, month = {2}, day = {1}, volume = {27}, number = {2}, pages = {358-368}, doi = {10.1109/TVCG.2020.3028948}, }

Owner

  • Name: Fritz Lekschas
  • Login: flekschas
  • Kind: user
  • Location: Somerville, MA

Computer scientist researching visualization systems for large-scale exploration of biomedical data. Harvard CS PhD '21.

Citation (CITATION.bib)

@article{lekschas2021generic,
  author = {Fritz Lekschas and Xinyi Zhou and Wei Chen and Nils Gehlenborg and Benjamin Bach and Hanspeter Pfister},
  title = {A Generic Framework and Library for Exploration of Small Multiples through Interactive Piling},
  publisher = {IEEE},
  journal = {IEEE Transactions on Visualization and Computer Graphics},
  series = {InfoVis ’20},
  year = {2021},
  month = {2},
  day = {1},
  volume = {27},
  number = {2},
  pages = {358-368},
  doi = {10.1109/TVCG.2020.3028948},
}

GitHub Events

Total
  • Watch event: 32
  • Fork event: 1
Last Year
  • Watch event: 32
  • Fork event: 1

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 1,606
  • Total Committers: 4
  • Avg Commits per committer: 401.5
  • Development Distribution Score (DDS): 0.286
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Fritz Lekschas 9****s 1,146
eeeeenchanted 5****4@q****m 445
dependabot[bot] 4****] 14
Dan Marshall d****r@m****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 5 months ago

All Time
  • Total issues: 61
  • Total pull requests: 39
  • Average time to close issues: 9 months
  • Average time to close pull requests: 21 days
  • Total issue authors: 4
  • Total pull request authors: 4
  • Average comments per issue: 0.77
  • Average comments per pull request: 0.05
  • Merged pull requests: 21
  • Bot issues: 0
  • Bot pull requests: 31
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • eeeeenchanted (36)
  • flekschas (22)
  • 1226419 (2)
  • lehnerchristian (1)
Pull Request Authors
  • dependabot[bot] (31)
  • flekschas (4)
  • eeeeenchanted (3)
  • danmarshall (1)
Top Labels
Issue Labels
bug (15) improvement (9) documentation (1) new feature (1)
Pull Request Labels
dependencies (31) bug (3) improvement (2) webpage (1) new feature (1)

Packages

  • Total packages: 1
  • Total downloads:
    • npm 21 last-month
  • Total dependent packages: 1
  • Total dependent repositories: 3
  • Total versions: 27
  • Total maintainers: 1
npmjs.org: piling.js

A WebGL-based Library for Visual Piling/Stacking

  • Versions: 27
  • Dependent Packages: 1
  • Dependent Repositories: 3
  • Downloads: 21 Last month
Rankings
Stargazers count: 4.1%
Forks count: 6.0%
Dependent repos count: 6.5%
Average: 9.9%
Downloads: 11.7%
Dependent packages count: 21.4%
Maintainers (1)
Last synced: 5 months ago

Dependencies

package-lock.json npm
  • 1571 dependencies
package.json npm
  • @babel/core ^7.10.4 development
  • @babel/plugin-transform-regenerator ^7.10.4 development
  • @babel/plugin-transform-runtime ^7.15.0 development
  • @babel/polyfill ^7.10.4 development
  • @babel/preset-env ^7.10.4 development
  • @babel/runtime ^7.10.4 development
  • @observablehq/plot ^0.2.0 development
  • @rollup/plugin-babel ^5.3.0 development
  • @rollup/plugin-commonjs ^13.0.0 development
  • @rollup/plugin-json ^4.1.0 development
  • @rollup/plugin-node-resolve ^8.1.0 development
  • @rollup/plugin-replace ^2.3.3 development
  • @tensorflow/tfjs-core ^1.7.4 development
  • acorn ^7.3.1 development
  • babel-loader ^8.1.0 development
  • babel-plugin-lodash ^3.3.4 development
  • browser-env ^3.3.0 development
  • css-loader ^3.6.0 development
  • d3 ^5.16.0 development
  • d3-scale-chromatic ^1.5.0 development
  • d3-shape ^1.3.7 development
  • eslint ^6.8.0 development
  • eslint-config-airbnb ^18.2.0 development
  • eslint-config-prettier ^6.11.0 development
  • eslint-plugin-import ^2.22.0 development
  • eslint-plugin-jsx-a11y ^6.3.1 development
  • eslint-plugin-prettier ^3.1.4 development
  • eslint-plugin-svelte3 ^2.7.3 development
  • esm ^3.2.25 development
  • gh-pages ^3.1.0 development
  • glob ^7.1.6 development
  • html-inline-css-webpack-plugin ^1.8.1 development
  • html-webpack-plugin ^4.3.0 development
  • husky ^4.2.5 development
  • lint-staged ^10.2.11 development
  • mini-css-extract-plugin ^0.9.0 development
  • postcss-flexbugs-fixes ^5.0.2 development
  • postcss-preset-env ^6.7.0 development
  • prettier ^2.0.5 development
  • pretty-quick ^2.0.1 development
  • puppeteer ^2.1.1 development
  • raw-loader ^4.0.1 development
  • rollup ^2.21.0 development
  • rollup-plugin-babel ^4.4.0 development
  • rollup-plugin-filesize ^9.0.2 development
  • rollup-plugin-inject-process-env ^1.3.0 development
  • rollup-plugin-livereload ^2.0.5 development
  • rollup-plugin-node-polyfills ^0.2.1 development
  • rollup-plugin-postcss ^4.0.1 development
  • rollup-plugin-string ^3.0.0 development
  • rollup-plugin-terser ^6.1.0 development
  • rollup-plugin-visualizer ^4.0.4 development
  • sass ^1.39.0 development
  • sass-loader ^10.2.0 development
  • style-loader ^1.2.1 development
  • unminified-webpack-plugin ^2.0.0 development
  • vega ^5.20.2 development
  • vega-lite ^5.1.0 development
  • webpack ^4.43.0 development
  • webpack-cli ^3.3.12 development
  • webpack-dev-server ^3.11.0 development
  • zarr ^0.3.0 development
  • @flekschas/utils ~0.29.0
  • camera-2d-simple ~2.2.0
  • deep-equal ~1.1.0
  • dom-2d-camera ~1.0.1
  • gl-matrix ~3.1.0
  • liang-barsky ~1.0.4
  • ndarray ~1.0.19
  • ndarray-convolve ~2.0.0
  • normalize-wheel ~1.0.1
  • pixi.js ~5.1.6
  • pub-sub-es ~1.2.2
  • rbush ~3.0.1
  • redux ~4.0.5
  • redux-batched-actions ~0.5.0
  • redux-freeze ~0.1.7
  • skmeans ~0.11.3
  • style-object-to-css-string ~1.0.1
  • umap-js ~1.3.2
  • with-raf ~1.1.1
webpage/package.json npm
  • @smui/icon-button ^1.0.0 development
  • eslint ^6.8.0 development
  • eslint-config-prettier ^6.11.0 development
  • eslint-plugin-import ^2.17.2 development
  • eslint-plugin-svelte3 ^2.7.3 development
  • gh-pages ^3.1.0 development
  • node-sass ^4.14.1 development
  • npm-run-all ^4.1.5 development
  • page ^1.11.4 development
  • postcss ^7.0.16 development
  • postcss-flexbugs-fixes ^4.1.0 development
  • postcss-preset-env ^6.6.0 development
  • prettier ^2.0.5 development
  • prettier-plugin-svelte ^1.1.0 development
  • rollup ^2.18.2 development
  • rollup-plugin-commonjs ^10.0.0 development
  • rollup-plugin-copy-assets ^2.0.1 development
  • rollup-plugin-livereload ^1.3.0 development
  • rollup-plugin-node-resolve ^5.0.0 development
  • rollup-plugin-postcss ^3.1.6 development
  • rollup-plugin-string ^3.0.0 development
  • rollup-plugin-svelte ^5.0.3 development
  • rollup-plugin-terser ^6.1.0 development
  • sirv-cli ^1.0.4 development
  • svelte-preprocess ^4.0.9 development
  • @flekschas/utils ^0.24.1
  • @smui/button ^1.0.0
  • d3-format ^2.0.0
  • d3-scale ^3.2.2
  • d3-shape ^2.0.0
  • medium-zoom ^1.0.5
  • svelte ^3.24.0
.github/workflows/build.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v2 composite
.github/workflows/publish.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v2 composite
.github/workflows/release.yml actions
  • actions/checkout v2 composite
  • actions/create-release v1 composite
examples/environment.yml conda
  • imageio
  • jupyterlab
  • keras
  • matplotlib
  • numba
  • pandas
  • pip
  • python 3.7.*
  • scikit-image
  • scikit-learn
  • tqdm
  • umap-learn