After spending some hours with Matplotlib for https://github.com/datamade/nyu-journo, I don't absolutely love it but I see some paths forward for a standard DataMade approach to static charts. Two blog posts I found very helpful and would recommend adding to our documentation:
Stick with the object-oriented interface and its finer grain of control; avoid pyplot as much as possible, which makes simple things quicker but obscures too much
Before starting your own styling, look through the Matplotlib styles and see if any provide a good starting point for what you want
Make sure you're well acquainted with what Matplotlib names different parts of a chart. This can be unintuitive! This graphic from "Effectively Using Matplotlib" is helpful:
Something I could have done a better job with for the NYU project was separating data processing and charting into fully separate steps. This would allow us to create some handy chart helpers that can be used between projects (h/t @hancush!).
I don't know if there are any immediate next steps for this, as static charting is not something we've been doing very often. I'd be happy to write the above points into a brief .md file for this repo, or someone else could pick it up for R&D.
Continued from https://github.com/datamade/data-analysis-guidelines/issues/13
After spending some hours with Matplotlib for https://github.com/datamade/nyu-journo, I don't absolutely love it but I see some paths forward for a standard DataMade approach to static charts. Two blog posts I found very helpful and would recommend adding to our documentation:
A couple of the high-level takeaways:
Something I could have done a better job with for the NYU project was separating data processing and charting into fully separate steps. This would allow us to create some handy chart helpers that can be used between projects (h/t @hancush!).
I don't know if there are any immediate next steps for this, as static charting is not something we've been doing very often. I'd be happy to write the above points into a brief
.md
file for this repo, or someone else could pick it up for R&D.