Plotly Dash Command Line Tools - Easily create and deploy Plotly Dash projects from templates

Overview

🛠️ dash-tools - Create and Deploy Plotly Dash Apps from Command Line

GitHub | Pypi | Downloads | Build and Test | Code Quality | License

Create a templated multi-page Plotly Dash app with CLI in less than 7 seconds. Deploy your app to Heroku in under a minute!

About

dash-tools is an open-source toolchain for Plotly Dash Framework. With a user-friendly command line interface, creating Dash applications has never been quicker.

Includes user and developer-friendly app templates where generating a new app only takes seconds. In fact, it will take longer to install this tool than it will to use it!

Want to deploy your app to the web? We've got you covered. With Heroku support, deploying your project will take under a minute.

Installation

Ready to use dash-tools? Installation is easy with pip:

pip install dash-tools

Find dash-tools on PyPi

Usage Examples

Below are common usage examples. For a more in-depth tutorial on writing apps for Plotly Dash, see the Plotly Dash Documentation. For information about dash-tools commands, read the Commands section.

Creating A New Project

For a more in-depth tutorial on using dash-tools, check out the Create and Upload Your App document!

Creating a new Dash project is very simple. The following command will create a new directory called "MyDashApp":

dash-tools --init MyDashApp

Optionally, templates can be used. Check out Templates for more details.

You can see what files are included with your new app:

cd MyDashApp

You can make changes to your app in the src/app.py file! See Plotly Dash Layout Docs for more information, or check out the dash-tools docs on Configuring Your Dash App.

When you are happy with your changes, run your dash app locally with the following command. You will be able to view your app at http://127.0.0.1:8050/ in your browser:

python src/app.py

Deploying To Heroku

Deploying your project online to Heroku is simple. The CLI handles both creating and deploying a new app, as well as updating an existing app.

Creating a Heroku App

To create an app, run the following command from your project's root directory; e.g. /MyDashApp from the example above. Next, follow the simple on-screen directions and deployment will be handled for you:

dash-tools --deploy-heroku

Optionally, you can specify a heroku app name as an argument. If one is not provided, you will be prompted to enter one or generate one automatically.

Note: "some-unique-heroku-app-name" in the example below is a name that you should change!

dash-tools --deploy-heroku some-unique-heroku-app-name

And that's really it! You will be prompted to log into your heroku account, a git remote 'heroku' will be created and changes will be pushed and deployed automatically.

Pushing Changes to an Existing Heroku App

To push changes to an existing heroku app after it is deployed, you can use the same command as before. Since a 'heroku' git remote already exists, by choosing the on-screen option to "Update Existing App", all changes will be pushed and your app will be re-deployed:

dash-tools --deploy-heroku

If you would rather add specific files, make a commit and push to the 'heroku' remote manually:

git add SomeFileYouModified.txt
git commit -m "Your Commit Message"
git push heroku

Templates

Templates contain boilerplate code for Dash projects, making it much easier to start with useful baseline apps.

Using Templates

Use the optional template argument with the --init command.

The following example will create a new app "MyWonderfulApp" (you can name your app anything) using the 'tabs' template (or any other template listed below):

dash-tools --init MyWonderfulApp tabs

To list out available templates, use the --templates or -t command:

dash-tools --templates

Available Templates

Click the dropdowns below to see screenshots!

Template: 'advanced'

To use this template, type: dash-tools --init MyFuturisticApp advanced

Advanced multi-page template. Includes examples of ClientsideCallbacks, multi-page routing, external stylesheets, header, footer, and 404 page.

Template: 'default'

To use this template, type: dash-tools --init MyAmazingApp default

Basic Dash template. See Dash Docs

Template: 'iris'

To use this template, type: dash-tools --init MyFantasticApp iris

Iris theme. See Faculty.ai Example

Template: 'mantine'

To use this template, type: dash-tools --init MyGreatApp mantine

Basic mantine template. See Dash Mantine

Template: 'multipage'

To use this template, type: dash-tools --init MyPristineApp multipage

New multipage theme. See Multipage Plugin

Template: 'sidebar'

To use this template, type: dash-tools --init MySnazzyApp sidebar

Sidebar theme. See Faculty.ai Example

Template: 'tabs'

To use this template, type: dash-tools --init MyBeautifulApp tabs

Tabs theme with dynamically generated content. See Faculty.ai Example

Commands

Project Commands

  • --deploy-heroku Args: OPTIONAL (unique heroku project name) : Deploys the project to Heroku using the Heroku CLI (Must Install Seperately) and Git. Invoke from the project root directory.
  • --init, -i Args: REQUIRED (project name) OPTIONAL (template) : Creates a Plotly Dash app with the given name in the current working directory. Optional args specified can be used for templates.
  • --templates, -t : List available templates.

Other

  • --help, -h: Display CLI helpful hints
  • --version: Display current version.

Development

See the Developer Guide for more details.

License

MIT License. See LICENSE.txt file.

Comments
  • [Feature Request] local run command with restart

    [Feature Request] local run command with restart

    When I develop Dash apps, I almost always run them with while true; do python app.py; sleep 1; done such that if, while I'm typing, I save a file with, say, a syntax error, I can just glance at the console, see the error, fix it and save the file again and the app reboots. If I don't do this, the first syntax error crashes the app and I need to switch to my terminal and re-execute python app.py.

    So the feature request is a command like dashtools run (which does the equivalent of python app.py) and dashtools run --restart (which does the equivalent of my restart loop, perhaps with a numeric argument for how many seconds to wait or something).

    dashtools could do some cool stuff like parse the output and apply nice colors, or even parse the output and notice that it's the same as the last crash and just increment a counter saying "app crashed N times with the error above" or whatever, to make it a nicer developer experience.

    opened by nicolaskruchten 7
  • [BUG] GUI redirects me to invalid url

    [BUG] GUI redirects me to invalid url

    Describe your context I am trying to host my dash app on render. I can go through the gui checklist but when I hip deploy to render it redirects me to render and I see the following message image

    • replace the result of dash-tools --version below
    dashtools 1.10.1
    
    
    • please tell us what operating system you are using
    linux POPos
    

    Describe the bug

    It seems to me that there is some path concatenation that is not working correctly and in quickly scanning your repository I believe that on line 27 of deployPage.py is where this is occurring. When looking at my github i see that dashtools is successfully pushing to my github repo(DashTool Automatic Push - 10/25/2022 @ 9:01:44)

    I created a pull request that might work. Not sure what else uses that function though

    Expected behavior

    I expect it to push to render

    Thanks for your work this is a great repo

    opened by mtzirkel 6
  • [BUG]

    [BUG]

    Thank you so much for helping improve the quality of dash-tools!

    We do our best to catch bugs during the release process, but we rely on your help to find the ones that slip through.

    Describe your context Please provide us your environment, so we can easily reproduce the issue.

    • replace the result of dash-tools --version below
    1.2.1
    
    • please tell us what operating system you are using
    MAC OS  Monteray 12.4
    

    Describe the bug

    Brew installer doesn't set up path variable, not clear where executable is to invoke the dash-tools command is so as to add it to the Path.

    installed a file tree at /Users/alvelda/anaconda/envs/python38/lib/python3.8/site-packages

    where's the executable?

    Expected behavior

    A clear and concise description of what you expected to happen.

    I would have expected the path variable to be updated by the installation script.

    If applicable, add screenshots or screen recording to help explain your problem.

    opened by alvelda 5
  • [Feature Request] Deploying a dash app with GIFs

    [Feature Request] Deploying a dash app with GIFs

    Is your feature request related to a problem? Please describe. I work with video datasets and I don't know about a good way of deploying videos/gifs using dash. I am using dash-gif-component for creating a dash app with GIFs and I tried dash-tools advanced template. The app was working locally but the path was broken when deployed on Heroku.

    Is there a way to deploy a GIF app to Heroku?

    Additional context Add any other context or screenshots about the feature request here.

    opened by Pranshul-Sardana 4
  • [BUG] requirements.txt error

    [BUG] requirements.txt error

    When running the dashtools heroku --deploy, I constantly get this error

    dashtools: Required file requirements.txt not found. Create one automatically? dashtools: Continue? (y/n) > y dashtools: Creating requirements.txt Usage: pipreqs [options] [<path>] dashtools: Error creating requirements.txt dashtools: Are you in a valid dash app directory? dashtools: Exiting

    I'm on windows. I'm not using a virtual environment so I think that has something to do with it?

    I've even made the requirements.txt file myself and still get that error.

    Could be because I'm multiple pages as well.

    Maybe my folder setup is wrong?

    image

    opened by AveryData 4
  • Version 1.4

    Version 1.4

    [1.4] - 2022-05-22

    dash-tools command is now dashtools via command line

    Major changes are an overhaul to the CLI entry to use subcommands. This looks like a change from this: dashtools --init MyApp tabs to dashtools init MyApp tabs. Also added a few new commands.

    Added / Changed

    • Invoke dashtools now by typing: dashtools <command> (was dash-tools <command> before)
    • Added subparsers to CLI to make commands look better:
      • dashtools init <app name> [<template>]
    • Added -d or --dir for init to specify create directory, e.g. dashtools init <appname> [<template>] --dir ~/MySandbox
    • Added new --update command to directly update to "heroku" remote
      • dashtools heroku --update
    • Broke out heroku deploy command
      • dashtools heroku --deploy
    • Broke out templates commands to use list, and added a new command to change specified directory into a new template directory. When running this command, --init will copy the specified directory to current directory with the name Template appended. All files will be given .template extensions.
      • dashtools templates --list
      • dashtools templates --init <directory to copy>
    • Added dashtools run command to run the app.py file (recursive search for app.py file, if not specified in a Procfile)
    • Better heroku deployment name generation - takes three random nouns joined by dashes and appends four alphanumeric char to end (ex. mountain-surgeon-chair-h129)
    • Added logo
    • Updated help cli print message, try: dashtools

    Templates

    • Added fast-dash template https://fastdash.app/
    • Added dash-iconify template https://github.com/snehilvj/dash-iconify
    opened by andrew-hossack 4
  • :lock: use non-root user in generated Dockerfile

    :lock: use non-root user in generated Dockerfile

    This PR updates _write_dockerfile() to create a Dockerfile which creates and uses a non-root user (dash). Additionally, I've added some testing for dockerUtils.py.

    Resolves #71 .

    opened by jasonwashburn 3
  • [BUG] Heroku updated their default support python

    [BUG] Heroku updated their default support python

    Hi Andrew, a simple one:

    Log from Heroku:

    
    -----> Building on the Heroku-22 stack
    -----> Using buildpack: heroku/python
    -----> Python app detected
    -----> Using Python version specified in runtime.txt
     !     Requested runtime 'python-3.8.10' is not available for this stack (heroku-22).
     !     For supported versions, see: https://devcenter.heroku.com/articles/python-support
     !     Push rejected, failed to compile Python app.
     !     Push failed
    

    And new heroku supported python versions: https://devcenter.heroku.com/articles/python-support

    "By default, newly created Python apps use the python-3.10.7 runtime. You can also specify a different supported Python version."

    That's it, thanks!

    kev

    opened by k-r-a-s-s 3
  • [BUG] dashtools heroku --update error

    [BUG] dashtools heroku --update error

    Error creating requirements.txt with a cp950 undecode error(I examine and there isn't any cp950 syntax in file)"while running "dashtools heroku --deploy"

    opened by andrew-hossack 2
  • [Feature Request] README - Add section for using --deploy on existing dash application

    [Feature Request] README - Add section for using --deploy on existing dash application

    @Coding-with-Adam what are your thoughts on adding a section to the README for deploying an existing dash app? Eg. If I already have a working app, what steps should I take to deploy it?

    Example A and B in README are great, but use dashtools --init to create the app. I might like to see a section that explains how to upload my existing app:

    1. Make sure app.py is in src directory
    2. Make sure to include server=app.server

    Do you think having another example for this would be good?

    opened by andrew-hossack 2
  • [Feature Request] deploy to another service besides heroku since free tier is no longer available

    [Feature Request] deploy to another service besides heroku since free tier is no longer available

    Thanks so much for dash-tools!

    Is your feature request related to a problem? Please describe. Based on the post by Heroku on their blog, it will no longer be possible to have a free account. I would like to request information on how I could deploy to another free site, if there are any. I'm open to any suggestions, but perhaps netlify would work.

    Describe the solution you'd like Again, a possible solution is to deploy to netlify.

    Describe alternatives you've considered I"m not aware of any working alternatives than to pay for Heroku.

    Additional context n/a

    opened by lundeen-bryan 1
Releases(v1.10.7)
  • v1.10.7(Dec 24, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.10.7] - 2022-12-24

    Modified

    • Upgraded PYTHON_VERSION to 3.10.0 for Render blueprint
    • Snyk upgrade for setuptools vulnerability
    Source code(tar.gz)
    Source code(zip)
  • v1.10.6(Dec 17, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.10.6] - 2022-12-16

    Modified

    • Updated naming on github workflows
    • Added a create tag and release action on push to main. Takes current version and latest stuff from the changelog in the release notes.
    Source code(tar.gz)
    Source code(zip)
  • v1.10.5(Dec 17, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.10.5] - 2022-12-16

    Fixed

    • Fixed background callbacks printing warnings on new version of plotly dash
    • Update pypa publish to use v1 release
    • Fixed issue with deploypage callbacks not working in some cases
    • Update gitlab runner to python version 3.10.9
    Source code(tar.gz)
    Source code(zip)
  • v1.10.4(Nov 11, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.10.4] - 2022-11-8

    Fixed

    • Fixed bug with background callback requiring cellery worker or diskcache, due to Dash 2.7.0 upgrade
    • Fixed read the docs templates list accordions not displaying
    • Changed dockerfile to use non root user; credit @jasonwashburn
    • Fixed CI/CD build process to install dashtools tar file; credit @jasonwashburn
    Source code(tar.gz)
    Source code(zip)
  • v1.10.3(Oct 30, 2022)

  • v1.10.2(Oct 28, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.10.2] - 2022-10-26

    Fixed

    • Fixed bug https://github.com/andrew-hossack/dash-tools/issues/65 where using http for git remote url doesn't work; thanks @mtzirkel for support!
    Source code(tar.gz)
    Source code(zip)
  • v1.10.1(Oct 23, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.10.1] - 2022-10-23

    Changed

    • Turn off logging and debug mode for gui server
    • Address bug where server opens twice
    • Open web url in browser when server starts
    • Updated packaging structure to exclude 'docs' module which should not have been there
    • Temporarily disabled tests for this release. Test suite needs to be overhauled for current changes.
    Source code(tar.gz)
    Source code(zip)
  • v1.10.0(Oct 23, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.10.0] - 2022-10-23

    Changed

    • Turn off logging and debug mode for gui server
    • Address bug where server opens twice
    • Open web url in browser when server starts
    • Updated packaging structure to exclude 'docs' module which should not have been there
    • Temporarily disabled tests for this release. Test suite needs to be overhauled for current changes.
    Source code(tar.gz)
    Source code(zip)
  • v1.9.2(Oct 20, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.9.2] - 2022-10-18

    Fixed

    • Made published to github a project requirement instead of an error
    Source code(tar.gz)
    Source code(zip)
  • v1.9.1(Oct 17, 2022)

  • v1.9.0(Oct 17, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.9.0] - 2022-10-17

    Added

    • Added dashtools gui render deploy dashboard
    Source code(tar.gz)
    Source code(zip)
  • v1.8.4(Sep 9, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.8.4] - 2022-9-09

    Fixed

    • Updated heroku default runtime to 3.10.7
    Source code(tar.gz)
    Source code(zip)
  • v1.8.3(Aug 30, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.8.3] - 2022-08-29

    Fixed

    • Changed heroku app name verification again. Heroku sends back a 404 if no app name is in use. Thanks @lanchuhuong!
    Source code(tar.gz)
    Source code(zip)
  • v1.8.2(Aug 12, 2022)

    Changelog

    All notable changes to this project will be documented in this file.

    [1.8.2] - 2022-08-12

    Fixed

    • Pipreqs generating requirements.txt does not work on some systems. Fixed with calling pipreqs.init(args) directly.
    Source code(tar.gz)
    Source code(zip)
  • v1.8.1(Aug 12, 2022)

  • v1.8.0(Aug 10, 2022)

    Change Log

    All notable changes to this project will be documented in this file.

    [1.8.0] - 2022-08-10

    Added

    • Added pypi version check to prompt user if their current version is out of date
    Source code(tar.gz)
    Source code(zip)
  • v1.7.3(Aug 9, 2022)

    [1.7.3] - 2022-08-09

    Fixed

    Fixed bug with Heroku HTTP request. When validating heroku name availability, a request is sent to heroku. Their server changed from a 404 response to an “This site can’t be reached” response. Fixed method for validating heroku app name.

    [1.7.2] - 2022-07-28

    Changed

    Renamed run --set-py-cmd command

    Source code(tar.gz)
    Source code(zip)
  • v1.7.1(Jul 22, 2022)

    [1.7.1] - 2022-07/21

    Added

    • Add dashtools --report-issue which directs users to report issue to github

    Changed

    • Fixed advanced template issues where it will not run.
    Source code(tar.gz)
    Source code(zip)
  • v1.7.0(Jul 4, 2022)

    [1.7.0] - 2022-06-27

    Added

    • Added docker --init command; creates a docker image in the current directory. Adds requirements.txt file and Dockerfile in the current directory if one isn't found.
    Source code(tar.gz)
    Source code(zip)
  • v1.6.2(Jun 14, 2022)

    Change Log

    All notable changes to this project will be documented in this file.

    [1.6.2] - 2022-06-14

    Added / Changed

    • Updated to dash 2.5.1 in requirements
    • Updated multipage template

    What's Changed

    • Version 1.6.2 by @andrew-hossack in https://github.com/andrew-hossack/dash-tools/pull/35

    Full Changelog: https://github.com/andrew-hossack/dash-tools/compare/v1.6.1...v1.6.2

    Source code(tar.gz)
    Source code(zip)
  • v1.6.1(Jun 12, 2022)

    Change Log

    All notable changes to this project will be documented in this file.

    [1.6.1] - 2022-06-12

    Added / Changed

    • Verify generated heroku app name on deploy. This fixes bug where generated name is too long or invalid.
    Source code(tar.gz)
    Source code(zip)
  • v1.6.0(Jun 8, 2022)

    Change Log

    All notable changes to this project will be documented in this file.

    [1.6.0] - 2022-06-05

    Added / Changed

    • Generate Procfile programatically based on location of app,py file. This allows users to upload any app to Heroku without needing a Procfile, requirements or runtime file.
    • Added retry for random heroku name generation
    • Added verify pip command workds on user system after init
    • Updated README
    • Added email cicd on release
    Source code(tar.gz)
    Source code(zip)
  • v1.5.1(May 30, 2022)

    Change Log

    All notable changes to this project will be documented in this file.

    [1.5.1] - 2022-05-29

    Changed

    • Added utf8 encoding to verify_procfile method
    Source code(tar.gz)
    Source code(zip)
  • v1.5(May 29, 2022)

    Change Log

    All notable changes to this project will be documented here.

    [1.5] - 2022-05-29

    Added / Changed

    • Added packages.txt file to template root directory. Specify required packages on each new line, like a requirements.txt file, and user will be prompted to install if it is not found when they do dashtools init <template>
    • Cleaned up Docs directory and README (huge thanks to https://github.com/Coding-with-Adam)
    • Fixed run command to try different python shell commands
    • Added config file to store python shell settings
    • Added run --set-python-shell-cmd to set the python shell command in config
    • General prompting hint fixes and updates

    Templates

    Source code(tar.gz)
    Source code(zip)
  • v1.4(May 24, 2022)

    What's Changed

    • Updated README by @andrew-hossack in https://github.com/andrew-hossack/dash-tools/pull/10
    • Dev by @andrew-hossack in https://github.com/andrew-hossack/dash-tools/pull/11
    • Add TODO list to developers guide by @andrew-hossack in https://github.com/andrew-hossack/dash-tools/pull/12
    • Update README.md by @Coding-with-Adam in https://github.com/andrew-hossack/dash-tools/pull/17
    • Version 1.4 by @andrew-hossack in https://github.com/andrew-hossack/dash-tools/pull/18

    New Contributors

    • @Coding-with-Adam made their first contribution in https://github.com/andrew-hossack/dash-tools/pull/17

    Full Changelog:

    Change Log

    All notable changes to this project will be documented in this file.

    [1.4] - 2022-05-22

    dash-tools command is now dashtools via command line

    Major changes are an overhaul to the CLI entry to use subcommands. This looks like a change from this: dashtools --init MyApp tabs to dashtools init MyApp tabs. Also added a few new commands.

    Added / Changed

    • Invoke dashtools now by typing: dashtools <command> (was dash-tools <command> before)
    • Added subparsers to CLI to make commands look better:
      • dashtools init <app name> [<template>]
    • Added -d or --dir for init to specify create directory, e.g. dashtools init <appname> [<template>] --dir ~/MySandbox
    • Added new --update command to directly update to "heroku" remote
      • dashtools heroku --update
    • Broke out heroku deploy command
      • dashtools heroku --deploy
    • Broke out templates commands to use list, and added a new command to change specified directory into a new template directory. When running this command, --init will copy the specified directory to current directory with the name Template appended. All files will be given .template extensions.
      • dashtools templates --list
      • dashtools templates --init <directory to copy>
    • Added dashtools run command to run the app.py file (recursive search for app.py file, if not specified in a Procfile)
    • Better heroku deployment name generation - takes three random nouns joined by dashes and appends four alphanumeric char to end (ex. mountain-surgeon-chair-h129)
    • Added logo
    • Updated help cli print message, try: dashtools

    Templates

    • Added fast-dash template https://fastdash.app/
    • Added dash-iconify template https://github.com/snehilvj/dash-iconify
    Source code(tar.gz)
    Source code(zip)
  • v1.3(May 5, 2022)

    What's Changed

    • Dev by @andrew-hossack in https://github.com/andrew-hossack/dash-tools/pull/8
    • Dev by @andrew-hossack in https://github.com/andrew-hossack/dash-tools/pull/9

    Full Changelog: https://github.com/andrew-hossack/dash-tools/compare/V1.2...v1.3

    Source code(tar.gz)
    Source code(zip)
  • V1.2(Apr 29, 2022)

  • V1.1(Apr 28, 2022)

  • V1.0(Apr 28, 2022)

  • V0.14(Apr 27, 2022)

Owner
Andrew Hossack
Andrew Hossack
This is a Web scraping project using BeautifulSoup and Python to scrape basic information of all the Test matches played till Jan 2022.

Scraping-test-matches-data This is a Web scraping project using BeautifulSoup and Python to scrape basic information of all the Test matches played ti

Souradeep Banerjee 4 Oct 10, 2022
Farhad Davaripour, Ph.D. 1 Jan 05, 2022
Colormaps for astronomers

cmastro: colormaps for astronomers 🔭 This package contains custom colormaps that have been used in various astronomical applications, similar to cmoc

Adrian Price-Whelan 12 Oct 11, 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
An automatic prover for tautologies in Metamath

completeness An automatic prover for tautologies in Metamath This program implements the constructive proof of the Completeness Theorem for propositio

Scott Fenton 2 Dec 15, 2021
With Holoviews, your data visualizes itself.

HoloViews Stop plotting your data - annotate your data and let it visualize itself. HoloViews is an open-source Python library designed to make data a

HoloViz 2.3k Jan 04, 2023
A Jupyter - Leaflet.js bridge

ipyleaflet A Jupyter / Leaflet bridge enabling interactive maps in the Jupyter notebook. Usage Selecting a basemap for a leaflet map: Loading a geojso

Jupyter Widgets 1.3k Dec 27, 2022
Handout for the tutorial "Creating publication-quality figures with matplotlib"

Handout for the tutorial "Creating publication-quality figures with matplotlib"

JB Mouret 1.9k Jan 02, 2023
Sci palettes for matplotlib/seaborn

sci palettes for matplotlib/seaborn Installation python3 -m pip install sci-palettes Usage import seaborn as sns import matplotlib.pyplot as plt impor

Qingdong Su 2 Jun 07, 2022
Package managers visualization

Software Galaxies This repository combines visualizations of major software package managers. All visualizations are available here: http://anvaka.git

Andrei Kashcha 1.4k Dec 22, 2022
Here are my graphs for hw_02

Let's Have A Look At Some Graphs! Graph 1: State Mentions in Congressperson's Tweets on 10/01/2017 The graph below uses this data set to demonstrate h

7 Sep 02, 2022
A tool for automatically generating 3D printable STLs from freely available lidar scan data.

mini-map-maker A tool for automatically generating 3D printable STLs from freely available lidar scan data. Screenshots Tutorial To use this script, g

Mike Abbott 51 Nov 06, 2022
Rockstar - Makes you a Rockstar C++ Programmer in 2 minutes

Rockstar Rockstar is one amazing library, which will make you a Rockstar Programmer in just 2 minutes. In last decade, people learned C++ in 21 days.

4k Jan 05, 2023
A data visualization curriculum of interactive notebooks.

A data visualization curriculum of interactive notebooks, using Vega-Lite and Altair. This repository contains a series of Python-based Jupyter notebooks.

UW Interactive Data Lab 1.2k Dec 30, 2022
Monochromatic colorscheme for matplotlib with opinionated sensible default

Monochromatic colorscheme for matplotlib with opinionated sensible default If you need a simple monochromatic colorscheme for your matplotlib figures,

Aria Ghora Prabono 2 May 06, 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
Friday Night Funkin - converts a chart from 4/4 time to 6/8 time, or from regular to swing tempo.

Chart to swing converter As seen in https://twitter.com/i_winxd/status/1462220493558366214 A program written in python that converts a chart from 4/4

5 Dec 23, 2022
Python code for solving 3D structural problems using the finite element method

3DFEM Python 3D finite element code This python code allows for solving 3D structural problems using the finite element method. New features will be a

Rémi Capillon 6 Sep 29, 2022
1900-2016 Olympic Data Analysis in Python by plotting different graphs

🔥 Olympics Data Analysis 🔥 In Data Science field, there is a big topic before creating a model for future prediction is Data Analysis. We can find o

Sayan Roy 1 Feb 06, 2022