Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mysftz/matplotlib-essay
A LaTeX document essay on the Python Matplotlib library package and its uses and benefits.
https://github.com/mysftz/matplotlib-essay
latex latex-document matplotlib university
Last synced: 21 days ago
JSON representation
A LaTeX document essay on the Python Matplotlib library package and its uses and benefits.
- Host: GitHub
- URL: https://github.com/mysftz/matplotlib-essay
- Owner: Mysftz
- License: cc-by-sa-4.0
- Created: 2023-08-24T16:06:56.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-09-10T10:51:55.000Z (over 1 year ago)
- Last Synced: 2023-09-10T11:45:05.551Z (over 1 year ago)
- Topics: latex, latex-document, matplotlib, university
- Language: TeX
- Homepage:
- Size: 49.8 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
[![alt text](https://github.com/Mysftz/Mysftz/blob/main/assets/READMEHeader.jpeg?raw=true)](https://github.com/Mysftz)
# Maplotlib Essay
[![GitHub][GitHub-shield]](https://github.com/Mysftz/matplotlib-essay)
[![Contributors][contributors-shield]](https://github.com/Mysftz/matplotlib-essay/graphs/contributors)
[![Forks][forks-shield]](https://github.com/Mysftz/matplotlib-essay/network/members)
[![Stargazers][stars-shield]](https://github.com/Mysftz/matplotlib-essay/stargazers)
[![Issues][issues-shield]](https://github.com/Mysftz/matplotlib-essay/issues)
[![License][license-shield]](https://github.com/Mysftz/matplotlib-essay/blob/main/LICENSE.txt)
About The Project •
Built With •
Download •
Usage •
License •
Other Projects •
ContactTable of Contents
## About The Project
### IntroductionThe Matplotlib library is open source and is utilised by Python for visualising data, it sources data from an internal or an external source and plots it in the form of a graph, the user can specify the graph type, type of data chosen, what data goes on what axes, colour of the data points and more relevant features. This appeals to the data analysts, scientists and certain businesses that require graphical visualisation of masses of business data. Importable as a standard Python library, the Matplotlib library is also hosted on GitHub, where over 1300 programmers contribute to the upkeep of the library dating back to 2014 when the library was first uploaded, they can freely change the code on a custom branch where they develop and test new features, debug and further experiment with the library without interrupting the current working script that millions of people are using.
Though the GitHub repository has over 1300 programmers, it does openly allow the public to make a pull request to view, test and contribute to the development and debugging/ issues. It has specifics guidelines outlined here for any developers wanting to assist. It tells and shows the community how to write and request through examples and via its documentation, shows bug triaging, how to write the documentation, the library policies and how to style the documentation.
The development of the documentation is mainly done by the original developer or groups there of however the community maintain it and therefore is constantly being looked at for mistakes and issues. On GitHub and the public pages, the only officially modelling tools are those of documentation and contribution criteria, though it appears standard practice that clear commit changes are the priority for the well maintained library. Furthermore the extensive documentation via its website is clear that the library serves a significant purpose to be fully functional and allow for future changes.
#### Testing, Build Tools and Integration
Via the multiple branches in the GitHub repository explored, the contributors and official developers can create, test and release new versions of the library at will, the contributors can pull a test version and make a change and push it where a developer can merge it with a final release version after testing. The development team release 2/3 approved versions each year, with concise release notes and detailed comments within the code scripts themselves allow for control over the types of changes happening to the library per commit and release.
The integration is that mainly of the Python open libraries, when installing Python or and IDE of Python, Matplotlib comes with is automatically which is source form the GitHub repository. This means when the final version is released, it allows the entire community to have access to it at the same time and all bug fixes. This is another reason why the library is so well maintained via Python and C++, these are the main backbone languages of the Matplotlib library, while the core of the library remains intact, most features allow for faster run times, different data visualization techniques and bug fixes.
As explained, Matplotlib utilises GitHub to host its up-to-date open source library to which through Git, it is sustained by over 1300 trusted contributors and have the millions more developing and testing new tools. With over 42,500 commits in 6,300 forks on 19 branches that carry the current, retired and testing versions of the library for the community of collaborators to pull from, 513,000 users on GitHub directly alone. One key feature in GitHub is the 'issues' tab which holds all the current and past issue the community have with the library, with multiple issues being resolved daily, it's clear that the library is not only well used but well maintained by its developers and community.
As mentioned, all changes are detailed not only of the public release notes but also within the edited code via comments and commit logs. GitHub records all of these and allows users to search through them to further understand how the library developed and what type of features and fixes have been added. This leads onto the quality of the code, the files pull and edited are pushed back onto GitHub waiting verification from the development team however the team can view, edit and change the push request before merging, however before being able to contribute, users must follow the documentation that outlines the requirements.
#### General Characteristics
The community mentioned, so much so that it's governed by a code of conduct, implying that the community is interactive and the developers intend to maintain it by keep it safe and interactive for only the developers that want to be a part of the community. Even though the library is community driven, it appears that the library is funding independently from the community with grants and certain funds thought large companies as at the time of this report the development team are recruiting for a "Research Software Engineer Position via a grant from NASA.".
The use of GitHub allows for the community of developer and the contributors to all work together and build on this library continuously, fix bugs quickly and keep is constantly under proper maintenance. For the library the biggest advantage it has is its community and how regulated the library is, users are constantly using the library in different environments and under different conditions allowing the library to be rigorously tested and the community and development team are on hand to fix bugs/ issues quickly as well as respond to troubleshooting. The community supports the library though contributions and it appears to not need external funding to be maintained, the use the library gives users is sought so much that its community will appear to continuously update it.
### Built With
LaTeX, Overleaf, BibTeX
### Other Infomation
LaTeX Report: https://github.com/Mysftz/matplotlib-essay
## Usage
This report was submitted for the degree of a Masters of Science in Computer Science (Artificial Intelligence) at the University of Kent in April 2022.
## License
Distributed under the CC-BY-SA-4.0: Creative Commons Attribution Share Alike 4.0 International License. See `LICENSE.txt` for more information.
## Other Projects## Contact
GitHub: [@Mysftz](https://github.com/Mysftz) · Portfolio: [Website](https://mysftz.github.io) · LinkedIn: [@lrgtomaszewski](https://www.linkedin.com/in/lrgtomaszewski/) · Instagram: [@Mysftz](https://www.instagram.com/mysftz/) · Twitter: [@MysftzUK](https://twitter.com/MysftzUK)
[contributors-shield]: https://img.shields.io/github/contributors/mysftz/matplotlib-essay.svg?style=for-the-badge
[forks-shield]: https://img.shields.io/github/forks/mysftz/matplotlib-essay.svg?style=for-the-badge
[stars-shield]: https://img.shields.io/github/stars/mysftz/matplotlib-essay.svg?style=for-the-badge
[issues-shield]: https://img.shields.io/github/issues/mysftz/matplotlib-essay.svg?style=for-the-badge
[license-shield]: https://img.shields.io/github/license/mysftz/matplotlib-essay.svg?style=for-the-badge
[github-shield]: https://img.shields.io/badge/-GitHub-black.svg?style=for-the-badge&logo=GitHub&colorB=555