Code Monkey home page Code Monkey logo

datashader's Introduction



Turn even the largest data into images, accurately

Build Status Linux/MacOS Build Status Windows Build status
Coverage codecov
Latest dev release Github tag dev-site
Latest release Github release PyPI version datashader version conda-forge version defaults version
Docs gh-pages site
Support Discourse

What is it?

Datashader is a data rasterization pipeline for automating the process of creating meaningful representations of large amounts of data. Datashader breaks the creation of images of data into 3 main steps:

  1. Projection

    Each record is projected into zero or more bins of a nominal plotting grid shape, based on a specified glyph.

  2. Aggregation

    Reductions are computed for each bin, compressing the potentially large dataset into a much smaller aggregate array.

  3. Transformation

    These aggregates are then further processed, eventually creating an image.

Using this very general pipeline, many interesting data visualizations can be created in a performant and scalable way. Datashader contains tools for easily creating these pipelines in a composable manner, using only a few lines of code. Datashader can be used on its own, but it is also designed to work as a pre-processing stage in a plotting library, allowing that library to work with much larger datasets than it would otherwise.

Installation

Datashader supports Python 2.7, 3.6 and 3.7 on Linux, Windows, or Mac and can be installed with conda:

conda install datashader

or with pip:

pip install datashader

For the best performance, we recommend using conda so that you are sure to get numerical libraries optimized for your platform. The latest releases are avalailable on the pyviz channel conda install -c pyviz datashader and the latest pre-release versions are avalailable on the dev-labelled channel conda install -c pyviz/label/dev datashader.

Fetching Examples

Once you've installed datashader as above you can fetch the examples:

datashader examples
cd datashader-examples

This will create a new directory called datashader-examples with all the data needed to run the examples.

To run all the examples you will need some extra dependencies. If you installed datashader within a conda environment, with that environment active run:

conda env update --file environment.yml

Otherwise create a new environment:

conda env create --name datashader --file environment.yml
conda activate datashader

Developer Instructions

  1. Install Python 3 miniconda or anaconda, if you don't already have it on your system.

  2. Clone the datashader git repository if you do not already have it:

    git clone git://github.com/holoviz/datashader.git
    
  3. Set up a new conda environment with all of the dependencies needed to run the examples:

    cd datashader
    conda env create --name datashader --file ./examples/environment.yml
    conda activate datashader
    
  4. Put the datashader directory into the Python path in this environment:

    pip install --no-deps -e .
    

Learning more

After working through the examples, you can find additional resources linked from the datashader documentation, including API documentation and papers and talks about the approach.

Some Examples

USA census

NYC races

NYC taxi

datashader's People

Contributors

brendancol avatar ceball avatar chbrandt avatar clemens-tolboom avatar esc avatar gbrener avatar hokieg3n1us avatar jbcrail avatar jbednar avatar jcrist avatar jlstevens avatar jo avatar jonmmease avatar jrbourbeau avatar jsignell avatar kebowen730 avatar kgullikson-sc avatar lancelot1969 avatar maihde avatar mattpap avatar narendramukherjee avatar nhsieh168 avatar orodbhen avatar philippjfr avatar pyvkd avatar sam-hoffman avatar schoolguy avatar seanlane avatar tyrasd avatar waffle-iron avatar

Watchers

 avatar  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.