A command line tool for visualizing CSV/spreadsheet-like data

Overview

PerfPlotter

pre-commit

Read data from CSV files using pandas and generate interactive plots using bokeh, which can then be embedded into HTML pages and served by server-client applications (or at least allow them to be viewed on a browser).

Contents

Environment

  • Python 3.8.x
  • macOS 10.15.x
  • Firefox 88.x

Setup

  1. Clone and cd into the perfplotter directory
  2. Install dependencies
    $ pipenv install --dev --python=/path/to/python3.8
    
    
  3. Install pre-commit hooks
    $ pre-commit install
    $ pre-commit run --all-files
    
    
    • Optional: pre-commit autoupdate
  4. Activate virtual environment
  5. In the same directory as setup.py, install *perfplotter as an editable dependency:
    $ pip install -e .
    
    
    • Use bare pip here to exclude perfplotter from the Pipfile* (which is under version control)
    • Do pipenv clean to really make sure it's not included in the Pipfile*
  6. Start and open any of the jupyter notebooks
    $ jupyter notebook --notebook-dir tutorials/notebooks
    
    

Usage

Show the main usage/help info

$ perfplotter --help

Show each command's usage/help info

$ perfplotter examples --help
$ perfplotter timeseries --help
$ perfplotter histogram --help

Supported plots

  • Plot TimeSeries
    $ perfplotter timeseries --help
    $ perfplotter timeseries /path/to/my.csv -x 1 -y 2
    
    
  • Plot Histogram
    $ perfplotter histogram --help
    $ perfplotter histogram /path/to/my.csv -x 1 -y 2
    
    

Use examples to test

$ perfplotter examples sample1
Generated 
   
    /out/sample1.csv

$ perfplotter timeseries out/sample1.csv

   

The last command should open up a browser with an interactive plot of sample1.csv

sample-timeseries-browser

Distribution

  1. In the same directory as setup.py:
    $ python setup.py sdist
    
    
    • This should create a dist/perfplotter-VERSION.tar.gz file
  2. In another directory (i.e. a test env) where perfplotter will be used:
    $ pipenv install /path/to/perfplotter/dist/perfplotter-VERSION.tar.gz
    
    
Owner
Gino Mempin
Gino Mempin
Cryptocurrency Centralized Exchange Visualization

This is a simple one that uses Grafina to visualize cryptocurrency from the Bitkub exchange. This service will make a request to the Bitkub API from your wallet and save the response to Postgresql. G

Popboon Mahachanawong 1 Nov 24, 2021
flask extension for integration with the awesome pydantic package

Flask-Pydantic Flask extension for integration of the awesome pydantic package with Flask. Installation python3 -m pip install Flask-Pydantic Basics v

249 Jan 06, 2023
Color maps for POV-Ray v3.7 from the Plasma, Inferno, Magma and Viridis color maps in Python's Matplotlib

POV-Ray-color-maps Color maps for POV-Ray v3.7 from the Plasma, Inferno, Magma and Viridis color maps in Python's Matplotlib. The include file Color_M

Tor Olav Kristensen 1 Apr 05, 2022
A dashboard built using Plotly-Dash for interactive visualization of Dex-connected individuals across the country.

Dashboard For The DexConnect Platform of Dexterity Global Working prototype submission for internship at Dexterity Global Group. Dashboard for real ti

Yashasvi Misra 2 Jun 15, 2021
Piglet-shaders - PoC of custom shaders for Piglet

Piglet custom shader PoC This is a PoC for compiling Piglet fragment shaders usi

6 Mar 10, 2022
Apache Superset is a Data Visualization and Data Exploration Platform

Apache Superset is a Data Visualization and Data Exploration Platform

The Apache Software Foundation 49.9k Jan 02, 2023
Draw tree diagrams from indented text input

Draw tree diagrams This repository contains two very different scripts to produce hierarchical tree diagrams like this one: $ ./classtree.py collectio

Luciano Ramalho 8 Dec 14, 2022
Manim is an animation engine for explanatory math videos.

A community-maintained Python framework for creating mathematical animations.

12.4k Dec 30, 2022
Learning Convolutional Neural Networks with Interactive Visualization.

CNN Explainer An interactive visualization system designed to help non-experts learn about Convolutional Neural Networks (CNNs) For more information,

Polo Club of Data Science 6.3k Jan 01, 2023
A napari plugin for visualising and interacting with electron cryotomograms.

napari-tomoslice A napari plugin for visualising and interacting with electron cryotomograms. Installation You can install napari-tomoslice via pip: p

3 Jan 03, 2023
A curated list of awesome Dash (plotly) resources

Awesome Dash A curated list of awesome Dash (plotly) resources Dash is a productive Python framework for building web applications. Written on top of

Luke Singham 1.7k Dec 26, 2022
Small U-Net for vehicle detection

Small U-Net for vehicle detection Vivek Yadav, PhD Overview In this repository , we will go over using U-net for detecting vehicles in a video stream

Vivek Yadav 91 Nov 03, 2022
NorthPitch is a python soccer plotting library that sits on top of Matplotlib

NorthPitch is a python soccer plotting library that sits on top of Matplotlib.

Devin Pleuler 30 Feb 22, 2022
Epagneul is a tool to visualize and investigate windows event logs

epagneul Epagneul is a tool to visualize and investigate windows event logs. Dep

jurelou 190 Dec 13, 2022
A GUI for Pandas DataFrames

PandasGUI A GUI for analyzing Pandas DataFrames. Demo Installation Install latest release from PyPi: pip install pandasgui Install directly from Githu

Adam 2.8k Jan 03, 2023
Schema validation for Xarray objects

xarray-schema Schema validation for Xarray installation This package is in the early stages of development. Install it from source: pip install git+gi

carbonplan 22 Oct 31, 2022
Param: Make your Python code clearer and more reliable by declaring Parameters

Param Param is a library providing Parameters: Python attributes extended to have features such as type and range checking, dynamically generated valu

HoloViz 304 Jan 07, 2023
The Spectral Diagram (SD) is a new tool for the comparison of time series in the frequency domain

The Spectral Diagram (SD) is a new tool for the comparison of time series in the frequency domain. The SD provides a novel way to display the coherence function, power, amplitude, phase, and skill sc

Mabel 3 Oct 10, 2022
Extensible, parallel implementations of t-SNE

openTSNE openTSNE is a modular Python implementation of t-Distributed Stochasitc Neighbor Embedding (t-SNE) [1], a popular dimensionality-reduction al

Pavlin Poličar 1.1k Jan 03, 2023
Dipto Chakrabarty 7 Sep 06, 2022