Summary

With this chapter, we reached the culmination of our adventure through the advanced topics in the world of matplotlib. Many of the topics covered in the latter half of this book crossed into other domains, as is often the case with the advanced usage of any software. These topics explored systems that did not have a direct and obvious connection with the narrow scope of matplotlib as a library. Rather, they reflected the usage patterns that are requested of software engineers working on real-world problems.

This bears further reflection. Often, computing problems in both research settings and start-ups are initially tackled quickly to get the results and examine the data as soon as possible. The next round of usage might require the addition of a bit more functionality or some other code tweaks. After a few months, you may be in any of the following situations:

  • You may end up with one or two functions of enormous size with no obvious or clear path towards something that would be more maintainable
  • You may discover that you are doing far more computation than what was initially expected and/or working with or generating far more data than what was anticipated
  • You may come to the realization that your problem has aspects that lend themselves quite nicely to parallelization and distributed processing

In particular, you may find out that in order to plot data, you have to execute vast, monolithic functions, whose final operations produce results that get plotted by matplotlib. In many cases, you may find out that properly refactoring your code and parallelizing it will allow you to perform the expensive computations concurrently, ultimately allowing your plot rendering to happen much more quickly.

In other words, even though matplotlib doesn't directly enter the realm of parallelization, at one time or another, our matplotlib workflows may require tight coordination with computations running in clustered environments, utilizing parallel execution patterns.. Ultimately, the developer or user experience that is perceived to be matplotlib can be improved with the techniques outlined in this chapter and in fact, the techniques that were covered in the entire book.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset