A graphical program to solve mathematical equations and visualize their intersections through plotting.
Takes as input two equations of x, solves them, and plots the equations with their solutions.
- Graphical user interface (GUI) with input validation
- Supports equation solving and intersection point detection
- Interactive matplotlib plots embedded in the GUI
- Error handling with user-friendly messages
- Cross-platform compatibility (Windows/Linux)
| Operation | Symbol/Function | Example |
|---|---|---|
| Addition | + |
x + 3 |
| Subtraction | - |
5 - x |
| Multiplication | * |
2 * x |
| Division | / |
x / 4 |
| Exponentiation | ^ |
x^2 |
| Square root | sqrt() |
sqrt(x + 1) |
| Logarithm base10 | log10() |
log10(2*x) |
- Python 3.10+ (recommended)
- PySide2 (GUI framework)
- Matplotlib (Plotting)
- NumPy (Numerical operations)
- SciPy (Equation solving)
- SymPy (Symbolic mathematics)
- Clone the repository
git clone https://github.com/Apolo151/equation-solver
cd equation-solver- Setup the virtual environment
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows- Install the required packages
pip install -r requirements.txt- Run the program
python3 app.py # or python app.py- Enter the two equations in the input fields
- Click on the "Solve and Plot" button to solve the equations
- The solutions will be displayed in the output plot
To run the tests, use the following command:
pytest tests/* --cov=solver --cov=parser --cov=plotter --cov-report=term-missing


