Visualizations for machine learning datasets

Overview

Introduction

The facets project contains two visualizations for understanding and analyzing machine learning datasets: Facets Overview and Facets Dive.

The visualizations are implemented as Polymer web components, backed by Typescript code and can be easily embedded into Jupyter notebooks or webpages.

Live demos of the visualizations can be found on the Facets project description page.

Facets Overview

Overview visualization of UCI census data

Overview gives a high-level view of one or more data sets. It produces a visual feature-by-feature statistical analysis, and can also be used to compare statistics across two or more data sets. The tool can process both numeric and string features, including multiple instances of a number or string per feature.

Overview can help uncover issues with datasets, including the following:

  • Unexpected feature values
  • Missing feature values for a large number of examples
  • Training/serving skew
  • Training/test/validation set skew

Key aspects of the visualization are outlier detection and distribution comparison across multiple datasets. Interesting values (such as a high proportion of missing data, or very different distributions of a feature across multiple datasets) are highlighted in red. Features can be sorted by values of interest such as the number of missing values or the skew between the different datasets.

The python code to generate the statistics for visualization can be installed through pip install facets-overview.

Details about Overview usage can be found in its README.

Facets Dive

Dive visualization of UCI census data

Dive is a tool for interactively exploring up to tens of thousands of multidimensional data points, allowing users to seamlessly switch between a high-level overview and low-level details. Each example is a represented as single item in the visualization and the points can be positioned by faceting/bucketing in multiple dimensions by their feature values. Combining smooth animation and zooming with faceting and filtering, Dive makes it easy to spot patterns and outliers in complex data sets.

Details about Dive usage can be found in its README.

Setup

Usage in Google Colabratory/Jupyter Notebooks

Using Facets in Google Colabratory and Jupyter notebooks can be seen in this notebook. These notebooks work without the need to first download/install this repository.

Both Facets visualizations make use of HTML imports. So in order to use them, you must first load the appropriate polyfill, through <script src="https://cdnjs.cloudflare.com/ajax/libs/webcomponentsjs/1.3.3/webcomponents-lite.js"></script>, as shown in the demo notebooks in this repo.

Note that for using Facets Overview in a Jupyter notebook, there are two considerations:

  1. In the notebook, you will need to change the path that the Facets Overview python code is loaded from to the correct path given where your notebook kernel is run from.
  2. You must also have the Protocol Buffers python runtime library installed: https://github.com/google/protobuf/tree/master/python. If you used pip or anaconda to install Jupyter, you can use the same tool to install the runtime library.

When visualizing a large amount of data in Dive in a Juypter notebook, as is done in the Dive demo Jupyter notebook, you will need to start the notebook server with an increased IOPub data rate. This can be done with the command jupyter notebook --NotebookApp.iopub_data_rate_limit=10000000.

Code Installation

git clone https://github.com/PAIR-code/facets
cd facets

Building the Visualizations

If you make code changes to the visualization and would like to rebuild them, follow these directions:

  1. Install bazel: https://bazel.build/
  2. Build the visualizations: bazel build facets:facets_jupyter (run from the facets top-level directory)

Using the rebuilt Visualizations in a Jupyter notebook

If you want to use the visualizations you built locally in a Jupyter notebook, follow these directions:

  1. Move the resulting vulcanized html file from the build step into the facets-dist directory: cp -f bazel-bin/facets/facets-jupyter.html facets-dist/
  2. Install the visualizations into Jupyter as an nbextension.
  • If jupyter was installed with pip, you can use jupyter nbextension install facets-dist/ if jupyter was installed system-wide or jupyter nbextension install facets-dist/ --user if installed per-user (run from the facets top-level directory). You do not need to run any follow-up jupyter nbextension enable command for this extension.
  • Alternatively, you can manually install the nbextension by finding your jupyter installation's share/jupyter/nbextensions folder and copying the facets-dist directory into it.
  1. In the notebook cell's HTML link tag that loads the built facets html, load from /nbextensions/facets-dist/facets-jupyter.html, which is the locally installed facets distribution. from the previous step.

Known Issues

  • The Facets visualizations currently work only in Chrome - Issue 9.

Disclaimer: This is not an official Google product

Comments
  • display(HTML(html)) doesn't display anything

    display(HTML(html)) doesn't display anything

    anyone could make the overview work in jupyter? i followed all the readme files and at end the display doesn't display anything and don't give me any errors too... i'm missing something?

    opened by FabricioProjects 17
  • Dive_demo.ipynb doesn't show the data

    Dive_demo.ipynb doesn't show the data

    I'm trying to run the Dive_demo.ipynb example but the HTML interface doesn't show any points. All is set to NONE. I initialized the jupyter as described on readme file: $ jupyter notebook --NotebookApp.iopub_data_rate_limit=10000000

    opened by FabricioProjects 12
  • Build Failure on OSX

    Build Failure on OSX

    Hello,

    Im having an issue trying to build the demo on OSX (Darwin LT5595 16.7.0 Darwin Kernel Version 16.7.0)

    When running the command: bazel run //facets_dive/demo

    I get the output:

    ERROR: /Users/saul.fuhrmann/FacetsTest/facets/WORKSPACE:17:1: Traceback (most recent call last):
    	File "/Users/saul.fuhrmann/FacetsTest/facets/WORKSPACE", line 17
    		closure_repositories()
    	File "/private/var/tmp/_bazel_saul.fuhrmann/64e17fd1086fe39cfd460d5fa053149c/external/io_bazel_rules_closure/closure/repositories.bzl", line 69, in closure_repositories
    		_check_bazel_version("Closure Rules", "0.4.5")
    	File "/private/var/tmp/_bazel_saul.fuhrmann/64e17fd1086fe39cfd460d5fa053149c/external/io_bazel_rules_closure/closure/repositories.bzl", line 172, in _check_bazel_version
    		fail(("%s requires Bazel >=%s but was...)))
    Closure Rules requires Bazel >=0.4.5 but was 0.10.0-homebrew
    ERROR: Error evaluating WORKSPACE file
    ERROR: error loading package '': Encountered error while reading extension file 'third_party/workspace.bzl': no such package '@org_tensorflow_tensorboard//third_party': error loading package 'external': Could not load //external package
    ERROR: error loading package '': Encountered error while reading extension file 'third_party/workspace.bzl': no such package '@org_tensorflow_tensorboard//third_party': error loading package 'external': Could not load //external package
    INFO: Elapsed time: 0.104s
    FAILED: Build did NOT complete successfully (0 packages loaded)
    ERROR: Build failed. Not running target
    

    It seems that _check_bazel_version("Closure Rules", "0.4.5") is causing the error. Has anyone encountered this issue before? What would be the best way to resolve it?

    Thanks,

    Saul

    opened by frmsaul 10
  • is it possible to load the protobuf binary format directly and display in Web Pages ?

    is it possible to load the protobuf binary format directly and display in Web Pages ?

    The Facets-Overview seems to have two implementations: Python and Javascripts. Both generate the corresponding protobuf implemenations from the protobuf definition, then both generate the same UI.

    I created a Scala Protobuf implementation using Spark DataFrame to generate the stats ( except for tensorflow). I save the protobuf base64 encoded binary string to a file and reload back with Python using the with open("path-to-binary", "rb") as f: content = f.read() protostr = content.decode("utf-8")

    the pass to the HTML_TEMPLATE as show in the code. This works great.

    I would like to do the same for Web rendering: Notice that in "gh-pages" branch, the rendering is done in index.html where

    $.when(trainAjax(), testAjax()).done(function(trainAjax, testAjax) { var overview = $("#foelem")[0]; var proto = overview.getStatsProto([ {data: trainAjax[0], name: "train"}, {data: testAjax[0], name: "test"}]); overview.protoInput = proto;

      $("#fdelem")[0].data = testAjax[0];
    });
    

    Here proto is the input DatasetFeatureStatisticsList. I try to load the binary, base64 string, none of that works. Here "stats.pb" is the binary file; "stats.txt" is the base64 encoded binary file.

    $.when(trainAjax(), testAjax(), protoAjax()).done(function(trainAjax, testAjax, protoAjax) { var overview = $("#foelem")[0];

        overview.protoInput =protoAjax; 
    
      $("#fdelem")[0].data = testAjax[0];
    });
    function trainAjax() {
      return $.getJSON({url: "train.json"});
    }
    function testAjax() {
      return $.getJSON({url: "test.json"});
    }
    function protoAjax() {
      <--
        or use stats.txt for base64encoded binary string
       -->
       return $.get({url: "stats.pb"}); 
    }
    

    }

    Is there an example, on how to reuse the binary format for web rendering in Javascript ? In this way, we just need use one implementation and results can be re-used for both Python, and Web.

    Please advice.

    opened by chesterchen-gpsw 8
  • facets dive problem of zoomed options

    facets dive problem of zoomed options

    Hi everyone,

    i'm trying to use Google Facets Dive to rapresent a confusion matrix of data in a jupyter notebook, on Chrome (windows 10).

    The problem is that options are incredibly zoomed (like +, - and other rapresentation options). Only reloading the jupyter notebook all the visualization is correctly zoomed. I would like not to reload everytime the page. How can i do?

    I'm using an example and this is my code

    HTML_TEMPLATE = """
            <script src="https://cdnjs.cloudflare.com/ajax/libs/webcomponentsjs/1.3.3/webcomponents-lite.js"></script>
            
            <link rel="import" href="/nbextensions/facets-dist/facets-jupyter.html">
            
            <facets-dive id="fd" height="600"></facets-dive>
            <script>
              var data = {jsonstr};
              var fd = document.querySelector("#fd");
              fd.data = data;
              fd['verticalFacet'] = 'predicted';
              fd['verticalBuckets'] = 8;
              fd['horizontalFacet'] = 'expected';
              fd['horizontalBuckets'] = 8;
              fd['colorBy'] = 'expected';
            </script>
            """
    
    jsonstr = df.to_json(orient='records')
    
    html = HTML_TEMPLATE.format(jsonstr=jsonstr)
    display(HTML(html))
    
    opened by matteopulega 7
  • Specify url

    Specify url

    Just run the test example in facets_dive/components. When trying to add user defined images, I generated a 800x100 png with 8 symbols in it, put it into the components/facets_dive folder and set atlas-url="test_sprite.png" in facets-dive.html But it's not found. INFO: 28,851µs /0:0:0:0:0:0:0:1:51068 404 GET /facets-dive/components/facets-dive/test_sprite.png How to specify the url?

    opened by makroid 7
  • Getting 404 GET /nbextensions/facets-dist/facets-jupyter.html

    Getting 404 GET /nbextensions/facets-dist/facets-jupyter.html

    After installing I'm getting a 404... is this due to missing nbextension config possibly?

    ✔ ~/projects/wisdot 
    04:26 $ jupyter notebook --NotebookApp.iopub_data_rate_limit=10000000
    [I 04:26:39.830 NotebookApp] [nb_conda_kernels] enabled, 4 kernels found
    [I 04:26:40.312 NotebookApp] ✓ nbpresent HTML export ENABLED
    [W 04:26:40.313 NotebookApp] ✗ nbpresent PDF export DISABLED: No module named nbbrowserpdf.exporters.pdf
    [I 04:26:40.353 NotebookApp] [jupyter_nbextensions_configurator] enabled 0.2.5
    [I 04:26:40.358 NotebookApp] [nb_conda] enabled
    [I 04:26:40.379 NotebookApp] [nb_anacondacloud] enabled
    [I 04:26:40.386 NotebookApp] Serving notebooks from local directory: /Users/charles.hack/projects/wisdot
    [I 04:26:40.386 NotebookApp] 0 active kernels 
    [I 04:26:40.387 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/
    [I 04:26:40.387 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
    0:42: execution error: "http://localhost:8888/tree" doesn’t understand the “open location” message. (-1708)
    [W 04:26:53.917 NotebookApp] 404 GET /api/kernels/8d085097-d70c-4684-b62c-c8918fe91922/channels?session_id=B9C7E2A87D1C4FD185022437200F1AA1 (::1): Kernel does not exist: 8d085097-d70c-4684-b62c-c8918fe91922
    [W 04:26:53.946 NotebookApp] 404 GET /api/kernels/8d085097-d70c-4684-b62c-c8918fe91922/channels?session_id=B9C7E2A87D1C4FD185022437200F1AA1 (::1) 38.32ms referer=None
    [W 04:27:10.343 NotebookApp] Replacing stale connection: 8d085097-d70c-4684-b62c-c8918fe91922:B9C7E2A87D1C4FD185022437200F1AA1
    [I 04:27:38.571 NotebookApp] Saving file at /WisDOT Accidents v170620.ipynb
    [I 04:27:38.896 NotebookApp] Saving file at /WisDOT Accidents v170620.ipynb
    [W 04:27:43.255 NotebookApp] 404 GET /nbextensions//usr/local/share/jupyter/nbextensions/facets-jupyter.html.js?v=20170721042639 (::1) 4.62ms referer=http://localhost:8888/notebooks/WisDOT%20Accidents%20v170620.ipynb
    [W 04:27:43.281 NotebookApp] 404 GET /nbextensions/widgets/notebook/js/extension.js?v=20170721042639 (::1) 1.65ms referer=http://localhost:8888/notebooks/WisDOT%20Accidents%20v170620.ipynb
    [W 04:27:44.536 NotebookApp] 404 GET /nbextensions/facets-dist/facets-jupyter.html (::1) 1.72ms referer=http://localhost:8888/notebooks/WisDOT%20Accidents%20v170620.ipynb
    [I 04:27:44.591 NotebookApp] Kernel started: 1f1c3a9e-afee-430c-ac12-6820346bbcf1
    
    opened by hack-c 7
  • Upload big amounts of data to facets overview

    Upload big amounts of data to facets overview

    Hello,

    I have to inquiries:

    • First, I have about 2 million records or slightly more dataset that I want to visualize on Facets Overview, ofcourse uploading only 100K was enough to slow down my PC for 2 - 3 minutes. Is there more applicable method to visualize 2M records on Facets? If there are any sample code please show me.

    • Second, I created exported an HTML page of Facets Dive directly through the polymer , however I couldn't use the same method with Facets Overview and had to run it on Jupyter. Is there anything similar to simply replace the with or simply export an HTML webpae through simple Python? Also if I'm using Jupyter notebook, how can I export the result in a separate HTML file while using the display(HTML(html)) function.

    Here is my code for the facets dive: https://github.com/fatimashihab/facets/blob/master/facets%20dive/data_visualization.py

    and code: `HTML_TEMPLATE = u"""

    %(title)s """.strip()

    #export data with open(OUTPUT_FILE_PATH, "wb") as f: final_template = HTML_TEMPLATE % { 'title':'Data Visualization', 'data': dataset.to_json(orient='records'), 'presets': json.dumps(PRESETS) } f.write(final_template.encode('utf-8'))`

    I appreciate your help, please reply asap. Thank you in advance

    opened by fatimashihab 6
  • Unable to view sprite atlas in Dive

    Unable to view sprite atlas in Dive

    I have installed Facets to be used in a jupyter notebook and followed the instructions on the github page. I tried to load the provided notebook, Dive_demo.ipynb, but I am unable to view any data points (although clicking on different areas inside the image does display information on the right hand side). image

    This same visualization displays properly on the facets website https://pair-code.github.io/facets/. image

    Is there any additional setup I must complete to view the default sprite atlas?

    opened by dhaners 6
  • Updated colab_facets.ipynb to make the atlas_url and sprite feature work using base64 data url.

    Updated colab_facets.ipynb to make the atlas_url and sprite feature work using base64 data url.

    Problem: The atlas and sprite feature is missing in the current Colab notebook example. The atlas_url feature in the current Colab example didn't work directly using local files and regular url. There is no easy way to pass the image using atlas_url from Colab.

    Solution: The solution is to read image from the file and convert it into base64 string. Then create a base64 image url from the string and pass the base64 image url directly into atlas_url.

    Added new dive example showing the atlas_url and sprite feature. The notebook works in Colab and is able to show the visualizaiton properly.

    opened by jsiddique 5
  • HTML Imports is deprecated error still here!

    HTML Imports is deprecated error still here!

    image

    I was getting this error so I checked the sample: https://colab.research.google.com/github/PAIR-code/facets/blob/master/colab_facets.ipynb. it is still getting the error.

    I am on linux Ubuntu 18.04.5 LTS, Chrome Version 85.0.4183.121 (Official Build) (64-bit)

    The script is using:

    as recommended as the solution in https://github.com/PAIR-code/facets/issues/206 and https://github.com/PAIR-code/facets/issues/211

    opened by markddesimone 5
  • facets dive demo no longer builds

    facets dive demo no longer builds

    The facets dive demo no longer seems to build. Here is my best attempt in a Dockerfile:

    FROM ubuntu:focal
    
    RUN apt-get update && apt install -y apt-transport-https curl git gnupg
    
    RUN curl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor >bazel-archive-keyring.gpg
    RUN mv bazel-archive-keyring.gpg /usr/share/keyrings
    RUN echo "deb [arch=amd64 signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8" | tee /etc/apt/sources.list.d/bazel.list
    
    RUN apt update && apt install -y bazel
    
    WORKDIR /opt
    
    RUN git clone https://github.com/PAIR-code/facets
    
    WORKDIR /opt/facets
    
    RUN bazel build //facets_dive/demo
    

    The result I see is:

    #13 70.61 WARNING: Download from https://zlib.net/zlib-1.2.11.tar.gz failed: class java.io.FileNotFoundException GET returned 404 Not Found
    #13 70.62 ERROR: An error occurred during the fetch of repository 'net_zlib':
    #13 70.62    Traceback (most recent call last):
    #13 70.62       File "/root/.cache/bazel/_bazel_root/f0edbeac36261ac6bdca9830d0450fbe/external/bazel_tools/tools/build_defs/repo/http.bzl", line 125, column 45, in _http_archive_impl
    #13 70.62               download_info = ctx.download_and_extract(
    #13 70.62 Error in download_and_extract: java.io.IOException: Error downloading [https://zlib.net/zlib-1.2.11.tar.gz] to /root/.cache/bazel/_bazel_root/f0edbeac36261ac6bdca9830d0450fbe/external/net_zlib/temp4907857517448745203/zlib-1.2.11.tar.gz: GET returned 404 Not Found
    
    opened by rmcloughlin 0
  • Support numpy >= 1.23

    Support numpy >= 1.23

    numpy.asscalar has been removed from Numpy in release 1.23.

    The function is called in:

    • facets_overview/python/base_generic_feature_statistics_generator.py
    • facets_overview/facets_overview/base_generic_feature_statistics_generator.py

    The guidance in the docs is to use numpy.ndarray.item() instead.

    opened by robmoore 0
  • Why the facets button size is too big to see (again)

    Why the facets button size is too big to see (again)

    I know this is a previous issue that was closed but I'm using the latest and I still have the oversized buttons. if I start a jupyter notebook the facet-dive html will load fine. Clear the output of that cell and re-run it and then the buttons blow up:

    Screen Shot 2021-10-05 at 9 59 45 PM

    opened by rayjennings3rd 2
  • How to save the tool outside the jupyter notebook so that the images appear on the display?

    How to save the tool outside the jupyter notebook so that the images appear on the display?

    Hello,

    I have doubts if it is possible to save the tool outside the jupyter notebook so that the images appear on the display. I can save in html format, but the images do not appear only the colored circles that are standard of the tool. Is it possible to resolve this for an image database? Below is an excerpt from my code that saves the display:

    #Displaythe Dive visualization for this data
    from IPython.core.display import display, HTML
    
    
    sprite_size = 32
    
    # Create Facets template
    HTML_TEMPLATE = """<script src="https://cdnjs.cloudflare.com/ajax/libs/webcomponentsjs/1.3.3/webcomponents-lite.js"></script>
    <link rel="import" href="https://raw.githubusercontent.com/PAIR-code/facets/1.0.0/facets-dist/facets-jupyter.html">
            <facets-dive sprite-image-width="{sprite_size}" sprite-image-height="{sprite_size}" id="elem" height="600" atlas-url="sprite_atlas.png"></facets-dive>
            <script>
              document.querySelector("#elem").data = {jsonstr};
            </script>"""
    
    html = HTML_TEMPLATE.format(jsonstr=jsonstr, sprite_size=sprite_size)
    
    
    # Display the template
    display(HTML(html))
    
    #save as html
    OUTPUT_PATH = './ISIC_2019_4.html'
    with open(OUTPUT_PATH,'w') as fo:
            fo.write(html)
    

    In general, I'm trying to host an instance of Facets Dive outside of a notebook to shared with other people that wanted to work with tool.

    I'm annexed the examples of display on jupyter and when it saved in html format

    Display on jupyter:

    Jupyter notebook

    Display save in html format:

    save_html

    Why don't the images appear? Has anyone had this problem or could you help me? Thanks :)

    opened by wesnasimone 4
  • ProtoFromDataFrames fails for dataframes with categorical columns

    ProtoFromDataFrames fails for dataframes with categorical columns

    When attempting to create the proto for facets-overview, if any of the columns are categorical, the operation will fail with an attribute error. I would expect it to properly parse the dataframe, treating the category dtype as a string and displaying it in the "Categorical Features" section in the same way.

    Below is example code to produce this error and the traceback:

    from facets_overview.generic_feature_statistics_generator import GenericFeatureStatisticsGenerator  
    import pandas as pd  
    df = pd.DataFrame({'col1': pd.Categorical(['a', 'b', 'c', 'a', 'b', 'c'])})  
    proto = GenericFeatureStatisticsGenerator().ProtoFromDataFrames([{'name': 'test', 'table': df}])
    
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File ".../facets_overview/base_generic_feature_statistics_generator.py", line 54, in ProtoFromDataFrames
        table_entries[col] = self.NdarrayToEntry(table[col])
      File ".../facets_overview/base_generic_feature_statistics_generator.py", line 119, in NdarrayToEntry
        data_type = self.DtypeToType(x.dtype)
      File ".../facets_overview/base_generic_feature_statistics_generator.py", line 66, in DtypeToType
        if dtype.char in np.typecodes['AllFloat']:
    AttributeError: 'CategoricalDtype' object has no attribute 'char'
    

    This is using facets-overview 1.0.0 and pandas 1.1.4.

    opened by ysayeed 6
Releases(1.0.0)
Owner
PAIR code
Code repositories for projects from the People+AI Research (PAIR) Initiative
PAIR code
Joyplots in Python with matplotlib & pandas :chart_with_upwards_trend:

JoyPy JoyPy is a one-function Python package based on matplotlib + pandas with a single purpose: drawing joyplots (a.k.a. ridgeline plots). The code f

Leonardo Taccari 462 Jan 02, 2023
FURY - A software library for scientific visualization in Python

Free Unified Rendering in Python A software library for scientific visualization in Python. General Information • Key Features • Installation • How to

169 Dec 21, 2022
Parse Robinhood 1099 Tax Document from PDF into CSV

Robinhood 1099 Parser This project converts Robinhood Securities 1099 tax document from PDF to CSV file. This tool will be helpful for those who need

Keun Tae (Kevin) Park 52 Jun 10, 2022
Dimensionality reduction in very large datasets using Siamese Networks

ivis Implementation of the ivis algorithm as described in the paper Structure-preserving visualisation of high dimensional single-cell datasets. Ivis

beringresearch 284 Jan 01, 2023
Boltzmann visualization - Visualize the Boltzmann distribution for simple quantum models of molecular motion

Boltzmann visualization - Visualize the Boltzmann distribution for simple quantum models of molecular motion

1 Jan 22, 2022
Data visualization using matplotlib

Data visualization using matplotlib project instructions Top 5 Most Common Coffee Origins In this visualization I used data from Ankur Chavda on Kaggl

13 Oct 27, 2021
A Bokeh project developed for learning and teaching Bokeh interactive plotting!

Bokeh-Python-Visualization A Bokeh project developed for learning and teaching Bokeh interactive plotting! See my medium blog posts about making bokeh

Will Koehrsen 350 Dec 05, 2022
Simple plotting for Python. Python wrapper for D3xter - render charts in the browser with simple Python syntax.

PyDexter Simple plotting for Python. Python wrapper for D3xter - render charts in the browser with simple Python syntax. Setup $ pip install PyDexter

D3xter 31 Mar 06, 2021
A small tool to test and visualize protein embeddings and amino acid proportions.

polyprotein_stats A small tool to test and visualize protein embeddings and amino acid proportions. Currently deployed on streamlit.io. Given a set of

2 Jan 07, 2023
Interactive plotting for Pandas using Vega-Lite

pdvega: Vega-Lite plotting for Pandas Dataframes pdvega is a library that allows you to quickly create interactive Vega-Lite plots from Pandas datafra

Altair 342 Oct 26, 2022
A Python function that makes flower plots.

Flower plot A Python 3.9+ function that makes flower plots. Installation This package requires at least Python 3.9. pip install

Thomas Roder 4 Jun 12, 2022
Create charts with Python in a very similar way to creating charts using Chart.js

Create charts with Python in a very similar way to creating charts using Chart.js. The charts created are fully configurable, interactive and modular and are displayed directly in the output of the t

Nicolas H 68 Dec 08, 2022
The repository is my code for various types of data visualization cases based on the Matplotlib library.

ScienceGallery The repository is my code for various types of data visualization cases based on the Matplotlib library. It summarizes the code and cas

Warrick Xu 2 Apr 20, 2022
Smarthome Dashboard with Grafana & InfluxDB

Smarthome Dashboard with Grafana & InfluxDB This is a complete overhaul of my Raspberry Dashboard done with Flask. I switched from sqlite to InfluxDB

6 Oct 20, 2022
A Python package that provides evaluation and visualization tools for the DexYCB dataset

DexYCB Toolkit DexYCB Toolkit is a Python package that provides evaluation and visualization tools for the DexYCB dataset. The dataset and results wer

NVIDIA Research Projects 107 Dec 26, 2022
Ana's Portfolio

Ana's Portfolio ✌️ Welcome to my Portfolio! You will find here different Projects I have worked on (from scratch) 💪 Projects 💻 1️⃣ Hangman game (Mad

Ana Katherine Cortes Sobrino 9 Mar 15, 2022
NumPy and Pandas interface to Big Data

Blaze translates a subset of modified NumPy and Pandas-like syntax to databases and other computing systems. Blaze allows Python users a familiar inte

Blaze 3.1k Jan 01, 2023
plotly scatterplots which show molecule images on hover!

molplotly Plotly scatterplots which show molecule images on hovering over the datapoints! Required packages: pandas rdkit jupyter_dash ➡️ See example.

150 Dec 28, 2022
Realtime Web Apps and Dashboards for Python and R

H2O Wave Realtime Web Apps and Dashboards for Python and R New! R Language API Build and control Wave dashboards using R! New! Easily integrate AI/ML

H2O.ai 3.4k Jan 06, 2023
This GitHub Repository contains Data Analysis projects that I have completed so far! While most of th project are focused on Data Analysis, some of them are also put here to show off other skills that I have learned.

Welcome to my Data Analysis projects page! This GitHub Repository contains Data Analysis projects that I have completed so far! While most of th proje

Kyle Dini 1 Jan 31, 2022