A JavaFX application for creating various types of charts to visualize data interactively. The application features a user authentication system and connects to a MySQL database to manage user data.
- User Authentication: Secure login and signup system for users.
- Multiple Chart Types: Visualize data with a variety of charts:
- Area Chart
- Bar Chart
- Bubble Chart
- Line Chart
- Pie Chart
- Scatter Chart
- Interactive Visualizations: Charts are rendered using JavaFX, providing an interactive experience.
- Java
- JavaFX
- MySQL for the database.
Before you begin, ensure you have the following installed:
- Java Development Kit (JDK): Version 11 or higher.
- JavaFX SDK: Version 11 or higher. You can download it from here.
- MySQL Server: The application requires a MySQL database.
- MySQL Connector/J: The JDBC driver for MySQL. You will need to add the JAR file to your project's classpath. You can download it from the MySQL website.
git clone https://github.com/PranishaCoder/Data-Visualisation-Tool.git
cd Data-Visualisation-Tool-
Make sure your MySQL server is running.
-
Create a new database named
datavisualisationdb.CREATE DATABASE datavisualisationdb;
-
The application expects a table for user data. You will need to create a
userstable. The exact schema depends on the application's needs for signup and login. A possible schema could be:USE datavisualisationdb; CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL UNIQUE, password VARCHAR(255) NOT NULL );
-
Update the database credentials in
src/DBUtil.javaif they differ from the defaults .private static final String URL = "jdbc:mysql://localhost:3306/datavisualisationdb"; private static final String USER = "your_mysql_user"; private static final String PASSWORD = "your_mysql_password";
These instructions are for compiling and running the application from the command line.
Make sure you have downloaded the JavaFX SDK and you know the path to its lib directory.
Make sure you have downloaded the MySQL Connector/J JAR file and you know its path.
Open a terminal in the project's root directory.
Windows:
javac --module-path "path\to\javafx-sdk\lib;path\to\mysql-connector-j.jar" --add-modules javafx.controls,javafx.fxml,java.sql -d out src/*.javaLinux/macOS:
javac --module-path /path/to/javafx-sdk/lib:/path/to/mysql-connector-j.jar --add-modules javafx.controls,javafx.fxml,java.sql -d out src/*.javaReplace "path\to\javafx-sdk\lib" and "path\to\mysql-connector-j.jar" with the actual paths. This command will compile the source files and place the .class files in an out directory.
Windows:
java --module-path "path\to\javafx-sdk\lib;path\to\mysql-connector-j.jar" --add-modules javafx.controls,javafx.fxml,java.sql -cp out MainAppLinux/macOS:
java --module-path /path/to/javafx-sdk/lib:/path/to/mysql-connector-j.jar --add-modules javafx.controls,javafx.fxml,java.sql -cp out MainAppThe application should now start, displaying the login window.
Once the application is running, you can:
- Sign up for a new account.
- Login with your credentials.
- After logging in, you will be taken to the main screen where you can choose a chart type to visualize data.
Below are some screenshots of the application dashboard.
Contributions are welcome! Please feel free to submit a pull request.


