Overview
In scientific and engineering communications, graphs and charts are used to summarize numerical data to make them easier to understand. When publishing information, it is common to use one tool (such as Excel) to generate plots while using another to write the text. In the case of an HTML website, the graph or plot is typically saved as an image file. Most of the time, the image file does not scale particularly well if the site is viewed at a high zoom level (such as might be done on a projector) or on a small device (like a phone).
By extending TealSite to use the excellent Matplotlib package, we could automate the generation of graphs and plots using Scalable Vector Graphics (SVG) output. SVG scales cleanly across devices and display sizes, making the results easier to read in a variety of different situations. Furthermore, we could add a custom HTML tag to trigger generation of the graph or plot itself, saving the author a step when creating a website. It is even possible to generate a link that would allow someone else to download the raw data used to create the plot. Most of this project will involve designing the custom HTML tag and integrating Matplotlib into the existing TealSite Python code.