Java Graphing Calculator
An interactive graphing calculator built in Java that combines console-based function input with a fully interactive GUI. This project is designed for advanced mathematical calculations and visualization.
Features
- Uses Swing to handle function input from the GUI. Includes error handling and highlights functions which are improperly written.
- Custom Math Engine: Handles advanced operations including:
- Integrals
- Derivatives
- Products
- Sums
- Factorials (Computed with the Gamma function).
- Custom Function Parser: Parses explicit functions for computation.
- Interactive GUI:
- Graphing with multiple functions, combined with antialiasing for a smooth look.
- Pan and zoom to explore the graph in detail.
- Labeled grid lines to keep track of points/location of the graph.
- Multithreading
- Uses multithreading to compute the values for each function, increasing efficiency.
Usage
-
Run the program with an IDE or from the command line.
-
Enter your function in the panel to the right, e.g: y=2*(5+x+sin(tan(x))) This will output the following:

-
Use your mouse to move the graph around with left click and pan.
-
Use your mousewheel to zoom in/out, or press i to zoom in and o to zoom out.
-
Close the window to end the program.
-
Press ENTER to add a new function
-
Press the "X" button to the right of each function to delete it, or press backspace to delete the last function.
