An open API service indexing awesome lists of open source software.

https://github.com/sayedmoataz/master-micro-software-engineering-intern-summer-2021-task_1

a Python GUI program that plots arbitrary user-entered functions.
https://github.com/sayedmoataz/master-micro-software-engineering-intern-summer-2021-task_1

Last synced: about 1 month ago
JSON representation

a Python GUI program that plots arbitrary user-entered functions.

Awesome Lists containing this project

README

          

# Master-Micro-Software-Engineering-Intern-Summer-2021
a Python GUI program that plots arbitrary user-entered functions.

PHOTOS IN README.md FILE IS DIFFERENT THAN PHOTOS IN THE SCREENSHOTS FOLDER

Requirements
Write a Python GUI program that plots arbitrary user-entered function.

![0](https://user-images.githubusercontent.com/46425858/128348459-36df44da-ab3a-4f02-86b0-b9381f7b9c2d.png)

Take a function of x from the user, e.g., 5*x^3 + 2*x.

![9](https://user-images.githubusercontent.com/46425858/128348615-e19cb34d-3106-4eca-80c5-9af8caf08272.png)

Take min and max values of x from the user.

![10](https://user-images.githubusercontent.com/46425858/128349057-b784671f-eb6c-48dc-aafc-878d3cce8255.png)

The following operators must be supported: + - / * ^.

![11](https://user-images.githubusercontent.com/46425858/128349290-22339952-ffae-4ef3-9634-7736f9288554.png)

MAYBE LATER I'LL ADD MORE FUNCTIONS

The GUI should be simple and beautiful (well organized).

![12](https://user-images.githubusercontent.com/46425858/128349633-6a130afc-838c-49d9-86f8-0a9ff53e0a4e.png)

![13](https://user-images.githubusercontent.com/46425858/128349637-fe0cefd6-5385-48ef-9418-521e26113357.png)

![14](https://user-images.githubusercontent.com/46425858/128349641-78b3d839-ff2f-47db-a307-a2ab15601e0e.png)

Apply appropriate input validation to the user input.
DONE
Display messages to the user to explain any wrong input.

![5](https://user-images.githubusercontent.com/46425858/128349921-f5efcc26-8218-4bf2-8226-2646b83fcb5f.png)

![6](https://user-images.githubusercontent.com/46425858/128349762-e1bcc0ce-f587-4684-93d6-eb0cae26a502.png)

![8](https://user-images.githubusercontent.com/46425858/128349922-97bc3c63-ca26-41a1-afb6-cff86c87fb13.png)

![7](https://user-images.githubusercontent.com/46425858/128349764-68c5bd9b-a7e1-4d7e-a5ff-3f1770f3e98c.png)

![9](https://user-images.githubusercontent.com/46425858/128349924-a77b6660-40e1-468e-97af-da330a3cae23.png)

![5](https://user-images.githubusercontent.com/46425858/128349761-4d2b6dca-3cfa-48c8-8985-a2967baf98c0.png)


You must use Pyside2 and Matplotlib.

DONE

The Matplotlib figure must be embedded in the Pyside2 application.

DONE

You must test your program using pytest and pytest-qt. Include the testing codes in your repository.

DONE

Your code should be well organized and well documented.

DONE