All Projects → autonomio → astetik

autonomio / astetik

Licence: MIT license
Astetik takes away the pain from telling visual stories with data on Python

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects
shell
77523 projects

Projects that are alternatives of or similar to astetik

covid-19
Data ETL & Analysis on the global and Mexican datasets of the COVID-19 pandemic.
Stars: ✭ 14 (-6.67%)
Mutual labels:  pandas, seaborn, matplotlib
Udacity-Data-Analyst-Nanodegree
Repository for the projects needed to complete the Data Analyst Nanodegree.
Stars: ✭ 31 (+106.67%)
Mutual labels:  pandas, seaborn, matplotlib
data-analysis-using-python
Data Analysis Using Python: A Beginner’s Guide Featuring NYC Open Data
Stars: ✭ 81 (+440%)
Mutual labels:  pandas, seaborn, matplotlib
datascienv
datascienv is package that helps you to setup your environment in single line of code with all dependency and it is also include pyforest that provide single line of import all required ml libraries
Stars: ✭ 53 (+253.33%)
Mutual labels:  pandas, seaborn, matplotlib
Lantern
Data exploration glue
Stars: ✭ 292 (+1846.67%)
Mutual labels:  jupyter, pandas, matplotlib
Exploratory Data Analysis Visualization Python
Data analysis and visualization with PyData ecosystem: Pandas, Matplotlib Numpy, and Seaborn
Stars: ✭ 78 (+420%)
Mutual labels:  pandas, seaborn, matplotlib
Python-Data-Visualization
D-Lab's 3 hour introduction to data visualization with Python. Learn how to create histograms, bar plots, box plots, scatter plots, compound figures, and more, using matplotlib and seaborn.
Stars: ✭ 42 (+180%)
Mutual labels:  pandas, seaborn, matplotlib
The-Data-Visualization-Workshop
A New, Interactive Approach to Learning Data Visualization
Stars: ✭ 59 (+293.33%)
Mutual labels:  pandas, seaborn, matplotlib
Geopython
Notebooks and libraries for spatial/geo Python explorations
Stars: ✭ 268 (+1686.67%)
Mutual labels:  jupyter, pandas, matplotlib
Mlcourse.ai
Open Machine Learning Course
Stars: ✭ 7,963 (+52986.67%)
Mutual labels:  pandas, seaborn, matplotlib
Ai Learn
人工智能学习路线图,整理近200个实战案例与项目,免费提供配套教材,零基础入门,就业实战!包括:Python,数学,机器学习,数据分析,深度学习,计算机视觉,自然语言处理,PyTorch tensorflow machine-learning,deep-learning data-analysis data-mining mathematics data-science artificial-intelligence python tensorflow tensorflow2 caffe keras pytorch algorithm numpy pandas matplotlib seaborn nlp cv等热门领域
Stars: ✭ 4,387 (+29146.67%)
Mutual labels:  pandas, seaborn, matplotlib
Opendatawrangling
공공데이터 분석
Stars: ✭ 148 (+886.67%)
Mutual labels:  jupyter, pandas, matplotlib
Crime Analysis
Association Rule Mining from Spatial Data for Crime Analysis
Stars: ✭ 20 (+33.33%)
Mutual labels:  jupyter, pandas, matplotlib
Jupyter Tips And Tricks
Using Project Jupyter for data science.
Stars: ✭ 245 (+1533.33%)
Mutual labels:  jupyter, pandas, matplotlib
Engezny
Engezny is a python package that quickly generates all possible charts from your dataframe and saves them for you, and engezny is only supporting now uni-parameter visualization using the pie, bar and barh visualizations.
Stars: ✭ 25 (+66.67%)
Mutual labels:  pandas, matplotlib
trackanimation
Track Animation is a Python 2 and 3 library that provides an easy and user-adjustable way of creating visualizations from GPS data.
Stars: ✭ 74 (+393.33%)
Mutual labels:  pandas, matplotlib
introduction to ml with python
도서 "[개정판] 파이썬 라이브러리를 활용한 머신 러닝"의 주피터 노트북과 코드입니다.
Stars: ✭ 211 (+1306.67%)
Mutual labels:  pandas, matplotlib
chatstats
💬📊 Fun data visualizations for Facebook Messenger chats
Stars: ✭ 18 (+20%)
Mutual labels:  pandas, matplotlib
Dimensionality-reduction-and-classification-on-Hyperspectral-Images-Using-Python
In this repository, You can find the files which implement dimensionality reduction on the hyperspectral image(Indian Pines) with classification.
Stars: ✭ 63 (+320%)
Mutual labels:  pandas, matplotlib
PandasVersusExcel
Python数据分析入门,数据分析师入门
Stars: ✭ 120 (+700%)
Mutual labels:  pandas, matplotlib

pip install astetik      # TL;DR

Why Astetik?

Astetik takes the amazing potential of matplotlib and seaborn, and makes it available through single-line commands. While much of the lower level complexity is made invisible, some completely new features are added. Whatever is added is further taking away from the complexity of the visualizastion workflow.

You might ask, why not use one of...

  • matplotlib
  • plotly
  • bokeh
  • mpl3d
  • seaborn

...and so forth. The short answer is simplicity. Simplicity that focus equally on the user experience of the data scientist, and the experience of the audience. While the data scientist should not have to think about it, the audience should be vowed by it. Without compromising the capabilities that are essential for visual storytelling.

In Five Essential Points of Data Visualization I explain some of the frustrations, and ideas, conceived over more than 20 years working with data visualization and data-driven storytelling, that led to Astetik. You can read it here.

Simplicity

Parameters

Every plot has three kinds of parameters; data inputs, plot specific, and common. The common are identical, and presented in the identical order in every plot. This means that once you learn one plot, you've more or less learn the all. The only exception is the plot specific parameters, which have been kept to absolute minimum, in many cases as few as 2 or 3.

Docstrings

Partially owing to the well unified parameter space between the plots, the docstrings are very clear, and easy to digest. The input related are given first, following the plot specifics, and last the common parameters, in which case the dosctring is identical in every plot. At the top of each docstring several key points are made clear:

  • range of dimensions the plot supports
  • type of features (e.g. categorical and continous) work the best
  • recommended max number of features/columns

Some opinionated comments on data visualization and Python

As someone else so eloquently put it, the merit, and also the curse, of Matplotlib is how everything is made possible for the user. It is with this vast flexibility, that also comes great confusion. Still the only purpose a plotting library serves, is in its ability to bring the data scientist closer to the end goal; being able to tell visually compelling stories with data. We want to tell those stories without having to think about the plots too much, as a plot is just a means to an end. If you want to quench your thirst, you don't want to spend too much time producing water, but drink it, and move on. Data visualization in the pydata ecosystem should be like this. Amazing looking, publication quality visualizations should be available through single-line, easy-to-understand, and easy-to-remember commands. One command per plot. No more, no less.

That's the problem astetik solves.

Background

It started from the realization that there was not a single library for Python, able to produce publication quality descriptive stats tables. The first version just did one thing, and it looked like this:

pretty table

At the time I was doing a lot of analysis that involved correlation, and ended up doing a simple heatmap plot which took about 20 lines of codes to polish it, and several hours of work having no previous knowledge of matplotlib or seaborn. The first plot looked like this:

The code to run it was (and still is):

ast.corr(titanic, title='TITANIC SURVIVAL DATA', sub_title="Economics of Making it Alive")

Today Astetik include, in addition to the original descriptive table and the heatmap correlation, over 20 unique plots and many unique features to make the daily life of data scientists and visual storytellers more enjoyable. The focus remains on simplicity in both use and aesthetic:

The code to produce the above line graph:

ast.line(data=global_totals,
         x=['population','food'],
         y='year',
         palette='colorblind',
         legend=True,
         title='Global Food Trends',
         sub_title='Production on its own trajectory since 1992')

Features

One of the key problems related with plotting library use is uncertainty related with settings and data format. With astetik you give away much of the low-level tinkering ability, and get amazing looking plots in return. The plots look just as good regardless of the dataset, length of titles, and other factors that typically make it hard to standardize look and feel across all of your plots. In terms of uncertainty, every single plot comes with a standard call for displaying an example dataframe, and an example output using the example data. The example data is always from the same dataset. For example:

the call for the plot

ast.corr()

the call to display the data format

ast.corr.in()

the call to display the sample plot

ast.corr.out()

This way you never have to think twice if your data is suitable for a given plot.

Visualization

  • Over 20 plot types

  • Descriptive table

  • Wordcloud

Data Preparation

Getting Started

Install from PyPi Package

pip install astetik

Fire up a notebook or console

import astetik as ast

That's it, you're ready to go.

TODO

FEATURES:

  • add limiter to all relevant plots
  • add scaler to all relevant plots
  • add outlier removal to all plots

USABILITY:

  • add sample data to all plots
  • add sample plot resulting from the data
  • unify docstrings
  • unify parameters

OTHER:

  • unify the color pickers
  • add saving figure to all

GATCHAS

  • Not all plots can handle x and y limits in the same way (just few are exceptions)
  • Scaling is not applicable to all plots
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].