AayushSameerShah / neona

A Neon visualization library based on matplotlib, I love to call it 'Neona'

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

neona

Makes your viz glow

mainPoster commit license

📖 About

neona is just for your need to to glow up the charts that you love in python. Made purely in python using Matplotlib as the base library—it just adds glow!

🙌 Motivation

About 3 months ago, I had to make a presentation where I chose the dark theme wanted to give a feel of "Dark Mode" in a drak room, yea-builtin styles of matplotlib and seaborn would have worked but still the theme and colors were not matching. It tried to give my own palette but still there was something still missing. A light. A light in dark. That was a beautiful glow in darkness.

I searched on internet about the glowing charts in python but they were so limited and saw that people are not interested in that much. Actully I stopped my search there because I wanted to create my own. I think the design trend is not on the glow side, people are moving for the glass theme or the material theme and just newly launched neuomorphic designs. But for darkmode? I found this would be an amazing choice for darkglow! (Ah "DarkGlow" kind of nice name, huh?)

Then I tried a couple of combinations, got some color palette and chose the syntax for my library. I wanted to make a compact library without much moving parts and simple but a syntax that allow many flexibilities and also should be appandable with your existing plt (sorry Matplotlib) skills. And then my very first glowing, lightning in dark — a line chart was ready. It was simple, without marks but it was looking awsome. And then it was the birth of neona

🧰 Features

  • 6 most often used plots (adding more soon)
  • Toggleable show_values
  • Change markers
  • Show values and control precision
  • Works with almost all iterable objects (DataFrame, array, Series etc.)
  • Attatch your plt calls easily
  • Give any length of colors—it will cycle on them
  • Specially chosen built-in glow suited color palettes (currently one)
  • Adjustable glowness
  • Auto legend
  • "Human Readable" Docstring
  • Open Source 😉

Actully there are more...!

⚛️ Basic Syntax

# Import
import neona

# Plot Call
neona.lineplot(...)

📈 Glowzuals

(ie. vizuals)

1. Line Plot

lineplot_steps lineplot_male_female

2. LollipoPlot

lollipoplot

3. KDE Plot

kde

4. Bar Plot

bar

5. Scatter Plot

scatter_1 scatter_2 scatter_3

6. Hist Plot

hist

And there is a lot in it when you try it out yourself.

😄 Requirements

  • numpy
  • pandas
  • matplotlib
  • scipy

(Any version of those will work)

A Small advice: This library is focused more on the aesthetics not on the performance. It creates many layers of shades to create the desired glow effect. The advice is to use neona in your final presentation or when you want to show your findings. It may take a while to generate whole plot from scratch. So, using neona during your analysis is not advised.

🤝 Please, pardon my dust.

This is my very first trial to make such work and make it usable to everyone. There can be many things which you may find broken with neona. If you are a contributor, then please support this project to make it better and more accessible.

Tell me if your presentation doesn't glow! Good Luck 😉


Thanks!
∞ Aayush Shah

About

A Neon visualization library based on matplotlib, I love to call it 'Neona'


Languages

Language:Jupyter Notebook 96.5%Language:Python 3.5%