For the last few days I have been scratching my head. How do you plot all the data in your django website, without having to figure out D3 or any other complicated graphing libraries?
I've looked at several solutions, including Djangos Graphos, Chartit, NVD3… Everyone online seems to be recommending to use charting libraries off of this list: https://djangopackages.org/grids/g/charts/
It's frustrating to try many solutions to find out that they are all too complicated to understand, and the copy+paste approach doesn't work most of the time.
Today I will show you how absolutely easy it is to plot graphs in Django using Plotly's Python API. We are going to make a simple interactive plot that looks like this:
Many people who use python are used to the scriptfile workflow, where you write a rigid script in python and run it, somewhat similar to how people use bash scripts.
- You find an answer in a blog somewhere that describes how to do something in python
- You draft up a python script for the task and get it to work
- You hard-code all the parameters the script needs
Don't get me wrong – drafting up python scripts to prototype your idea is really useful. You get your idea working fast, even if your code becomes messy and unmaintainable.
However, wouldn't you like your python script to be as elegant and usable as all the command-line utilities you're used to?
For a CLI program, or any program with text output, many programmers have been challenged with displaying data in the terminal in a readable format.
Either you are making a script to display data from a database via the python module
sqlalchemy, or you are displaying the results of a RESTful API call via the python module
requests, you likely have a handful of arbitrary complex python data structures to display. These might be a set of lists, dicts, ints, datetimes, and other objects.
Follow this guide and lets code together a way to display this data in a way you can easily read from the terminal.
So recently, I discovered a project done by Michael Fogleman called Quadtree Art. It inspired me to try and code my own version of the project. This is what I will talk about in this article, how to implement your own Quadtree art program, just as I've done here: github.com/ribab/quadart
This is my blog. “Coding With Ricky”. It's a blog for everyone, where I can share my insights and learnings as a Software Engineer so you can learn along with me.
Whether it's small tidbits of knowledge I picked up, a side project I'm working on, a new trend in Computer Science I've learned about, I want to share it with all of you. One of the things I enjoy most is learning, and I am passionate about helping others learn along with me.
To learn more about me, visit the /about page of my blog.
If you want to follow my blog and any other updates from me, then follow me on twitter.
If you want to contact me, send me a message on Linkedin.