JavaFX-এর Charting API আপনাকে সহজেই গ্রাফিক্যাল চার্ট এবং ডাটা ভিজুয়ালাইজেশন তৈরি করতে সাহায্য করে। এই API তে বিভিন্ন ধরনের চার্ট যেমন লাইন চার্ট (Line Chart), বার চার্ট (Bar Chart), পাই চার্ট (Pie Chart), এবং অ্যারে চার্ট (Area Chart) ইত্যাদি অন্তর্ভুক্ত রয়েছে। JavaFX Charting API ডাটা প্রদর্শনকে আরো ইন্টারেকটিভ এবং ব্যবহারকারী-বান্ধব করে তোলে।
JavaFX চার্টগুলি নিম্নলিখিত প্রধান টাইপের হয়:
লাইন চার্টে ডেটা পয়েন্টগুলি একটি লাইন দিয়ে সংযুক্ত করা হয়। এটি একাধিক ডেটা সিরিজের জন্য ব্যবহৃত হতে পারে।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class LineChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষ তৈরি
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
// X এবং Y অক্ষের নাম সেট করা
xAxis.setLabel("X Axis");
yAxis.setLabel("Y Axis");
// লাইন চার্ট তৈরি
LineChart<Number, Number> lineChart = new LineChart<>(xAxis, yAxis);
lineChart.setTitle("Example Line Chart");
// ডেটা সিরিজ তৈরি
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
// ডেটা পয়েন্ট যোগ করা
series.getData().add(new XYChart.Data<>(1, 2));
series.getData().add(new XYChart.Data<>(2, 4));
series.getData().add(new XYChart.Data<>(3, 6));
series.getData().add(new XYChart.Data<>(4, 8));
// সিরিজ চার্টে যোগ করা
lineChart.getData().add(series);
// দৃশ্য তৈরি এবং স্টেজে সেট করা
Scene scene = new Scene(lineChart, 800, 600);
stage.setScene(scene);
stage.setTitle("JavaFX Line Chart Example");
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
LineChart
তৈরি করা হয়েছে যা NumberAxis
(যথা, X এবং Y অক্ষ) দ্বারা নিয়ন্ত্রিত।XYChart.Series
ডেটা সিরিজ তৈরি করতে ব্যবহৃত হয়, যেখানে একাধিক XYChart.Data
দিয়ে ডেটা পয়েন্ট যোগ করা হয়।lineChart.getData().add(series)
দিয়ে সিরিজটি চার্টে যোগ করা হয়।বার চার্টে ডেটা বার দ্বারা প্রদর্শিত হয়, যা আছড়ে পড়ার মত অনুভূমিক বা উল্লম্বভাবে প্রদর্শিত হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class BarChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষ তৈরি
CategoryAxis xAxis = new CategoryAxis();
NumberAxis yAxis = new NumberAxis();
// X এবং Y অক্ষের নাম সেট করা
xAxis.setLabel("Category");
yAxis.setLabel("Value");
// বার চার্ট তৈরি
BarChart<String, Number> barChart = new BarChart<>(xAxis, yAxis);
barChart.setTitle("Example Bar Chart");
// ডেটা সিরিজ তৈরি
XYChart.Series<String, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
// ডেটা পয়েন্ট যোগ করা
series.getData().add(new XYChart.Data<>("A", 5));
series.getData().add(new XYChart.Data<>("B", 10));
series.getData().add(new XYChart.Data<>("C", 15));
series.getData().add(new XYChart.Data<>("D", 20));
// সিরিজ চার্টে যোগ করা
barChart.getData().add(series);
// দৃশ্য তৈরি এবং স্টেজে সেট করা
Scene scene = new Scene(barChart, 800, 600);
stage.setScene(scene);
stage.setTitle("JavaFX Bar Chart Example");
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
BarChart
তৈরি করা হয়েছে যেখানে CategoryAxis
(x অক্ষ) এবং NumberAxis
(y অক্ষ) ব্যবহৃত হয়েছে।XYChart.Series
এবং XYChart.Data
ব্যবহার করে ডেটা সিরিজ তৈরি করা হয়েছে এবং চার্টে যোগ করা হয়েছে।পাই চার্ট ডেটা পয়েন্টকে সেক্টরে ভাগ করে প্রদর্শন করে, যা মোটের একটি অংশ হিসেবে উপস্থাপিত হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.PieChart;
import javafx.stage.Stage;
public class PieChartExample extends Application {
@Override
public void start(Stage stage) {
// পাই চার্টের ডেটা সিরিজ তৈরি
PieChart.Data slice1 = new PieChart.Data("Category A", 40);
PieChart.Data slice2 = new PieChart.Data("Category B", 30);
PieChart.Data slice3 = new PieChart.Data("Category C", 20);
PieChart.Data slice4 = new PieChart.Data("Category D", 10);
// পাই চার্ট তৈরি এবং ডেটা যোগ করা
PieChart pieChart = new PieChart();
pieChart.getData().addAll(slice1, slice2, slice3, slice4);
// দৃশ্য তৈরি এবং স্টেজে সেট করা
Scene scene = new Scene(pieChart, 500, 400);
stage.setScene(scene);
stage.setTitle("JavaFX Pie Chart Example");
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
PieChart.Data
ব্যবহার করে পাই চার্টে প্রতিটি সেক্টরের মান এবং লেবেল নির্ধারণ করা হয়।pieChart.getData().addAll(slice1, slice2, slice3, slice4)
দিয়ে ডেটাগুলি পাই চার্টে যোগ করা হয়।স্ক্যাটার চার্টে ডেটা পয়েন্টগুলি এক্স-অক্ষ এবং ওয়াই-অক্ষের ভিত্তিতে পলট করা হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.ScatterChart;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class ScatterChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষ তৈরি
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
// স্ক্যাটার চার্ট তৈরি
ScatterChart<Number, Number> scatterChart = new ScatterChart<>(xAxis, yAxis);
scatterChart.setTitle("Example Scatter Chart");
// ডেটা সিরিজ তৈরি
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
// ডেটা পয়েন্ট যোগ করা
series.getData().add(new XYChart.Data<>(1, 5));
series.getData().add(new XYChart.Data<>(2, 10));
series.getData().add(new XYChart.Data<>(3, 15));
series.getData().add(new XYChart.Data<>(4, 20));
// সিরিজ চার্টে যোগ করা
scatterChart.getData().add(series);
// দৃশ্য তৈরি এবং স্টেজে সেট করা
Scene scene = new Scene(scatterChart, 800, 600);
stage.setScene(scene);
stage.setTitle("JavaFX Scatter Chart Example");
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
ScatterChart
তৈরি করা হয়েছে যা ডেটা পয়েন্টগুলিকে গ্রিডে পলট করবে।XYChart.Series
ব্যবহার করে ডেটা পয়েন্ট তৈরি করা হয়েছে এবং স্ক্যাটার চার্টে যোগ করা হয়েছে।JavaFX এর Charting API সহজেই বিভিন্ন ধরনের চার্ট তৈরি করতে সাহায্য করে, যা ডেটা ভিজুয়ালাইজেশনের জন্য অত্যন্ত কার্যকরী। আপনি বিভিন্ন ধরনের চার্ট যেমন LineChart
, BarChart
, PieChart
, ScatterChart
ইত্যাদি তৈরি করতে পারেন এবং আপনার JavaFX অ্যাপ্লিকেশনে ডেটা বিশ্লেষণ এবং রিপোর্টিং যোগ করতে পারেন। JavaFX চাটিং API ব্যবহার করে আপনি ইন্টারেকটিভ এবং গ্রাফিক্যাল ডেটা ভিজুয়ালাইজেশন তৈরি করতে পারবেন।
JavaFX Chart API একটি শক্তিশালী গ্রাফিকাল লাইব্রেরি যা JavaFX অ্যাপ্লিকেশনগুলিতে গ্রাফ, চার্ট, এবং ডাটা ভিজ্যুয়ালাইজেশন তৈরি করতে ব্যবহৃত হয়। এই API ব্যবহার করে আপনি সহজেই ডাটা পয়েন্টগুলিকে গ্রাফিক্যাল ফর্মে প্রদর্শন করতে পারেন, যা আপনাকে ডাটা বিশ্লেষণ ও উপস্থাপনা করতে সহায়তা করে।
JavaFX Chart API বিভিন্ন ধরনের চার্ট তৈরি করতে সক্ষম, যেমন LineChart, BarChart, PieChart, AreaChart, BubbleChart, XYChart, এবং আরও অনেক। এটি ডাটা পয়েন্টগুলিকে দৃশ্যমানভাবে দেখানোর মাধ্যমে বিশ্লেষণ এবং সিদ্ধান্ত গ্রহণে সহায়ক।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class LineChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষ তৈরি
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
// X অক্ষের টাইটেল এবং Y অক্ষের টাইটেল সেট করা
xAxis.setLabel("X Axis");
yAxis.setLabel("Y Axis");
// LineChart তৈরি করা
LineChart<Number, Number> lineChart = new LineChart<>(xAxis, yAxis);
// LineChart এর টাইটেল সেট করা
lineChart.setTitle("Line Chart Example");
// Series তৈরি করা এবং ডাটা পয়েন্ট যোগ করা
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
series.getData().add(new XYChart.Data<>(1, 5));
series.getData().add(new XYChart.Data<>(2, 8));
series.getData().add(new XYChart.Data<>(3, 12));
series.getData().add(new XYChart.Data<>(4, 20));
// Series-কে Chart-এ যোগ করা
lineChart.getData().add(series);
// Scene তৈরি করা এবং সেট করা
Scene scene = new Scene(lineChart, 800, 600);
stage.setTitle("JavaFX Line Chart Example");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
xAxis
এবং yAxis
এর জন্য NumberAxis
ব্যবহার করা হয়েছে, যা সংখ্যাগুলির উপর ভিত্তি করে অক্ষ তৈরি করে।LineChart
তৈরির জন্য NumberAxis
ব্যবহার করে X এবং Y অক্ষের মধ্যে লাইন গ্রাফ তৈরি করা হয়েছে।XYChart.Data
ক্লাসের মাধ্যমে একে একে ডাটা পয়েন্টগুলো (X, Y) হিসেবে যোগ করা হয়েছে।LineChart
এর জন্য একটি Scene
তৈরি করা হয়েছে এবং সেটি Stage
-এ প্রদর্শিত হয়েছে।import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class BarChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষ তৈরি
CategoryAxis xAxis = new CategoryAxis();
NumberAxis yAxis = new NumberAxis();
// X অক্ষের টাইটেল এবং Y অক্ষের টাইটেল সেট করা
xAxis.setLabel("Category");
yAxis.setLabel("Values");
// BarChart তৈরি করা
BarChart<String, Number> barChart = new BarChart<>(xAxis, yAxis);
barChart.setTitle("Bar Chart Example");
// Series তৈরি করা এবং ডাটা পয়েন্ট যোগ করা
XYChart.Series<String, Number> series = new XYChart.Series<>();
series.setName("Category Data");
series.getData().add(new XYChart.Data<>("Category A", 30));
series.getData().add(new XYChart.Data<>("Category B", 70));
series.getData().add(new XYChart.Data<>("Category C", 50));
// Series-কে Chart-এ যোগ করা
barChart.getData().add(series);
// Scene তৈরি করা এবং সেট করা
Scene scene = new Scene(barChart, 800, 600);
stage.setTitle("JavaFX Bar Chart Example");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ব্যাখ্যা:
CategoryAxis
ব্যবহার করা হয়েছে, যেটি ক্যাটেগরি (যেমন ক্যাটেগরি A, B, C) ভিত্তিক ডাটা প্রদর্শন করতে সক্ষম।BarChart
এর মাধ্যমে প্রতিটি ক্যাটেগরির জন্য বার তৈরি করা হয়েছে।JavaFX Chart API ব্যবহার করে আপনি সহজেই ডাটা ভিজ্যুয়ালাইজেশন, বিশ্লেষণ এবং গ্রাফিকাল রিপ্রেজেন্টেশন তৈরি করতে পারেন, যা অ্যাপ্লিকেশনগুলির জন্য অত্যন্ত কার্যকরী হতে পারে।
JavaFX একটি শক্তিশালী গ্রাফিক্যাল ইউজার ইন্টারফেস (GUI) ফ্রেমওয়ার্ক যা বিভিন্ন ধরনের Built-in Charts সরবরাহ করে। এগুলি ব্যবহার করে আপনি আপনার অ্যাপ্লিকেশনে সহজেই চার্ট তৈরি করতে পারেন, যা ডেটা বিশ্লেষণ এবং ভিজ্যুয়ালাইজেশনের জন্য উপযুক্ত। JavaFX তে মোট পাঁচটি প্রধান চার্ট কন্ট্রোল রয়েছে:
প্রতিটি চার্ট টেমপ্লেট আপনাকে একটি প্রাক-ডিজাইন করা কাঠামো প্রদান করে যা ডেটা পয়েন্টের গ্রাফিকাল রূপান্তর সহজ করে তোলে।
LineChart একটি চার্ট যা লাইন ব্যবহার করে ডেটা পয়েন্টের সংযোগ তৈরি করে। এটি সাধারণত টাইম সিরিজ ডেটা বা ধারাবাহিক তথ্য প্রদর্শন করার জন্য ব্যবহৃত হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class LineChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষের জন্য নম্বর এক্সিস তৈরি
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
xAxis.setLabel("X Axis");
yAxis.setLabel("Y Axis");
// লাইন চার্ট তৈরি
LineChart<Number, Number> lineChart = new LineChart<>(xAxis, yAxis);
lineChart.setTitle("Line Chart Example");
// ডেটা সিরিজ তৈরি
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
// ডেটা পয়েন্ট যোগ করা
series.getData().add(new XYChart.Data<>(1, 5));
series.getData().add(new XYChart.Data<>(2, 10));
series.getData().add(new XYChart.Data<>(3, 15));
series.getData().add(new XYChart.Data<>(4, 20));
// সিরিজ যোগ করা
lineChart.getData().add(series);
// Scene এবং Stage তৈরি
Scene scene = new Scene(lineChart, 800, 600);
stage.setTitle("LineChart Example");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
BarChart এক ধরনের চার্ট যেখানে বার বা কলাম ব্যবহার করে ডেটা প্রদর্শন করা হয়। এটি সাধারনত তুলনামূলক ডেটা দেখানোর জন্য ব্যবহৃত হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class BarChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষের জন্য ক্যাটেগরি এবং নম্বর এক্সিস তৈরি
CategoryAxis xAxis = new CategoryAxis();
NumberAxis yAxis = new NumberAxis();
xAxis.setLabel("Category");
yAxis.setLabel("Value");
// বার চার্ট তৈরি
BarChart<String, Number> barChart = new BarChart<>(xAxis, yAxis);
barChart.setTitle("Bar Chart Example");
// ডেটা সিরিজ তৈরি
XYChart.Series<String, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
// ডেটা পয়েন্ট যোগ করা
series.getData().add(new XYChart.Data<>("A", 30));
series.getData().add(new XYChart.Data<>("B", 50));
series.getData().add(new XYChart.Data<>("C", 70));
// সিরিজ যোগ করা
barChart.getData().add(series);
// Scene এবং Stage তৈরি
Scene scene = new Scene(barChart, 800, 600);
stage.setTitle("BarChart Example");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
PieChart একটি চার্ট যা একটি গোলাকার ডায়াগ্রামে ডেটা ভাগ করে দেখায়, সাধারণত শতাংশ বা অনুপাতের ভিত্তিতে।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.PieChart;
import javafx.stage.Stage;
public class PieChartExample extends Application {
@Override
public void start(Stage stage) {
// পাই চার্ট তৈরি
PieChart pieChart = new PieChart();
// ডেটা পয়েন্ট যোগ করা
PieChart.Data slice1 = new PieChart.Data("Category A", 30);
PieChart.Data slice2 = new PieChart.Data("Category B", 50);
PieChart.Data slice3 = new PieChart.Data("Category C", 20);
// ডেটা যোগ করা
pieChart.getData().addAll(slice1, slice2, slice3);
// Scene এবং Stage তৈরি
Scene scene = new Scene(pieChart, 500, 400);
stage.setTitle("PieChart Example");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
AreaChart একটি বিশেষ ধরনের লাইন চার্ট যেখানে ডেটা লাইনটি আন্ডারলাইনের মাধ্যমে পূর্ণ হয়, এটি একটি অঞ্চল তৈরি করে।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.scene.chart.AreaChart;
import javafx.stage.Stage;
public class AreaChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষের জন্য নম্বর এক্সিস তৈরি
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
xAxis.setLabel("X Axis");
yAxis.setLabel("Y Axis");
// এরিয়া চার্ট তৈরি
AreaChart<Number, Number> areaChart = new AreaChart<>(xAxis, yAxis);
areaChart.setTitle("Area Chart Example");
// ডেটা সিরিজ তৈরি
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
// ডেটা পয়েন্ট যোগ করা
series.getData().add(new XYChart.Data<>(1, 5));
series.getData().add(new XYChart.Data<>(2, 10));
series.getData().add(new XYChart.Data<>(3, 15));
// সিরিজ যোগ করা
areaChart.getData().add(series);
// Scene এবং Stage তৈরি
Scene scene = new Scene(areaChart, 800, 600);
stage.setTitle("AreaChart Example");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
ScatterChart একটি চার্ট যা ডেটা পয়েন্টগুলিকে গ্রাফে স্ক্যাটার করে প্রদর্শন করে। এটি সাধারণত সম্পর্ক বা সংশ্লিষ্ট ডেটা পয়েন্টগুলো দেখতে ব্যবহৃত হয়।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.XYChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.ScatterChart;
import javafx.stage.Stage;
public class ScatterChartExample extends Application {
@Override
public void start(Stage stage) {
// X এবং Y অক্ষের জন্য নম্বর এক্সিস তৈরি
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
xAxis.setLabel("X Axis");
yAxis.setLabel("Y Axis");
// স্ক্যাটার চার্ট তৈরি
ScatterChart<Number, Number> scatterChart = new ScatterChart<>(xAxis, yAxis);
scatterChart.setTitle("Scatter Chart Example");
// ডেটা সিরিজ তৈরি
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
// ডেটা পয়েন্ট যোগ করা
series.getData().add(new XYChart.Data<>(1, 5));
series.getData().add(new XYChart.Data<>(2, 10));
series.getData().add(new XYChart.Data<>(3, 15));
// সিরিজ যোগ করা
scatterChart.getData().add(series);
// Scene এবং Stage তৈরি
Scene scene = new Scene(scatterChart, 800, 600);
stage.setTitle("ScatterChart Example");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
JavaFX তে বিভিন্ন ধরনের built-in charts প্রদান করা হয়েছে যা আপনাকে ডেটা ভিজ্যুয়ালাইজেশন এবং বিশ্লেষণের জন্য দরকারী চার্ট তৈরি করতে সাহায্য করে। LineChart
, BarChart
, PieChart
, AreaChart
, এবং ScatterChart
সহ JavaFX-এর চমৎকার গ্রাফিক্যাল উপাদানগুলি ব্যবহার করে আপনি আপনার অ্যাপ্লিকেশনটিতে সহজেই চার্ট যোগ করতে পারেন।
JavaFX Charts ব্যবহার করে আপনি বিভিন্ন ধরনের চার্ট তৈরি করতে পারেন, যেমন LineChart, BarChart, PieChart, AreaChart ইত্যাদি। Data Series হল সেই ডেটা যা চার্টে প্রদর্শিত হয়, এবং এটি চার্টের অংশ হিসেবে কাজ করে। আপনি Data Series ব্যবহার করে চার্টে ডেটা যোগ করতে পারেন এবং সেই ডেটার ভিত্তিতে চার্টটি রেন্ডার হবে।
নিচে, আমি একটি LineChart উদাহরণ দিব, যেখানে XYChart.Series
ব্যবহার করে Data Series যোগ করা হবে।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class LineChartExample extends Application {
@Override
public void start(Stage primaryStage) {
// X এবং Y অক্ষের জন্য NumberAxis তৈরি
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
// চার্ট তৈরি করা
LineChart<Number, Number> lineChart = new LineChart<>(xAxis, yAxis);
// চার্টের টাইটেল সেট করা
lineChart.setTitle("Sample Line Chart");
// Data Series তৈরি করা
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Data Series 1"); // Data Series এর নাম সেট করা
// Data Series এ ডেটা যোগ করা
series.getData().add(new XYChart.Data<>(1, 23));
series.getData().add(new XYChart.Data<>(2, 14));
series.getData().add(new XYChart.Data<>(3, 15));
series.getData().add(new XYChart.Data<>(4, 24));
series.getData().add(new XYChart.Data<>(5, 34));
series.getData().add(new XYChart.Data<>(6, 36));
series.getData().add(new XYChart.Data<>(7, 22));
// আরেকটি Data Series যোগ করা
XYChart.Series<Number, Number> series2 = new XYChart.Series<>();
series2.setName("Data Series 2");
series2.getData().add(new XYChart.Data<>(1, 33));
series2.getData().add(new XYChart.Data<>(2, 25));
series2.getData().add(new XYChart.Data<>(3, 32));
series2.getData().add(new XYChart.Data<>(4, 40));
series2.getData().add(new XYChart.Data<>(5, 25));
series2.getData().add(new XYChart.Data<>(6, 18));
series2.getData().add(new XYChart.Data<>(7, 20));
// Data Series যোগ করা চার্টে
lineChart.getData().addAll(series, series2);
// Scene তৈরি এবং সেট করা
Scene scene = new Scene(lineChart, 800, 600);
primaryStage.setTitle("JavaFX Line Chart Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
NumberAxis
এবং Y অক্ষের জন্য NumberAxis
ব্যবহার করা হয়েছে।NumberAxis
এর উপর লাইন চার্ট তৈরি করা হয়েছে।series
এবং series2
এখানে যোগ করা হয়েছে)।new XYChart.Data<>(1, 23)
১ এর জন্য ২৩ মানের ডেটা পয়েন্ট যোগ করবে।এই কোডটি একটি LineChart তৈরি করবে, যেখানে দুটি Data Series থাকবে এবং প্রতিটি সিরিজের মধ্যে কিছু ডেটা পয়েন্ট থাকবে। আপনি একটি গ্রাফ দেখতে পাবেন যেখানে এক্স অক্ষের মান (১ থেকে ৭) এবং ওয়াই অক্ষের মান বিভিন্ন ডেটা পয়েন্টের মাধ্যমে প্লট হবে।
এখানে, একটি BarChart এর মধ্যে Data Series যোগ করার উদাহরণ দেওয়া হলো:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class BarChartExample extends Application {
@Override
public void start(Stage primaryStage) {
// X এবং Y অক্ষের জন্য CategoryAxis এবং NumberAxis তৈরি
CategoryAxis xAxis = new CategoryAxis();
NumberAxis yAxis = new NumberAxis();
// চার্ট তৈরি করা
BarChart<String, Number> barChart = new BarChart<>(xAxis, yAxis);
barChart.setTitle("Sample Bar Chart");
// Data Series তৈরি করা
XYChart.Series<String, Number> series = new XYChart.Series<>();
series.setName("2024");
// Data Series এ ডেটা যোগ করা
series.getData().add(new XYChart.Data<>("Jan", 100));
series.getData().add(new XYChart.Data<>("Feb", 200));
series.getData().add(new XYChart.Data<>("Mar", 150));
series.getData().add(new XYChart.Data<>("Apr", 75));
series.getData().add(new XYChart.Data<>("May", 50));
// অন্য Data Series তৈরি করা
XYChart.Series<String, Number> series2 = new XYChart.Series<>();
series2.setName("2025");
series2.getData().add(new XYChart.Data<>("Jan", 120));
series2.getData().add(new XYChart.Data<>("Feb", 220));
series2.getData().add(new XYChart.Data<>("Mar", 180));
series2.getData().add(new XYChart.Data<>("Apr", 90));
series2.getData().add(new XYChart.Data<>("May", 60));
// Data Series যোগ করা বার চার্টে
barChart.getData().addAll(series, series2);
// Scene তৈরি এবং সেট করা
Scene scene = new Scene(barChart, 800, 600);
primaryStage.setTitle("JavaFX Bar Chart Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
CategoryAxis
এবং NumberAxis
এর উপর বার চার্ট তৈরি করা হয়েছে।new XYChart.Data<>("Jan", 100)
।এটি একটি BarChart তৈরি করবে, যেখানে দুটি Data Series থাকবে এবং প্রতিটি সিরিজের জন্য বিভিন্ন মাসের ডেটা বার হিসেবে প্রদর্শিত হবে।
XYChart.Series
ব্যবহার করে ডেটা সিরিজ যোগ করতে পারেন।JavaFX এর মাধ্যমে আপনি শক্তিশালী Charts এবং Data Visualization তৈরি করতে পারেন। JavaFX তে বিভিন্ন ধরনের বিল্ট-ইন চ্যাট (যেমন LineChart, BarChart, PieChart, ScatterChart ইত্যাদি) রয়েছে, যা আপনাকে ডেটা ভিজ্যুয়ালাইজেশনের জন্য উপযুক্ত কন্ট্রোল প্রদান করে। তবে যদি আপনার প্রয়োজন হয় Custom Charts তৈরি করার, তাহলে আপনি JavaFX-এর XYChart ক্লাস বা Chart ক্লাস এক্সটেন্ড করে কাস্টম চ্যাট তৈরি করতে পারেন।
JavaFX Charts এবং Data Series যোগ করার জন্য আপনাকে সাধারণত Series (যেমন XYChart.Series) এবং Data (যেমন XYChart.Data) ক্লাসগুলি ব্যবহার করতে হবে।
এখানে একটি LineChart তৈরি করা হয়েছে যেখানে Data Series যোগ করা হচ্ছে। আমরা একটি XYChart.Series ব্যবহার করে ডেটা যোগ করবো এবং সেই ডেটা দিয়ে একটি লাইন চ্যাট তৈরি করব।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class LineChartExample extends Application {
@Override
public void start(Stage primaryStage) {
// X এবং Y অক্ষ তৈরি
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
// X এবং Y অক্ষের টাইটেল সেট করা
xAxis.setLabel("X Axis");
yAxis.setLabel("Y Axis");
// LineChart তৈরি করা
LineChart<Number, Number> lineChart = new LineChart<>(xAxis, yAxis);
lineChart.setTitle("Sample Line Chart");
// Data Series তৈরি করা
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Data Series 1");
// Data Points যোগ করা
series.getData().add(new XYChart.Data<>(1, 5));
series.getData().add(new XYChart.Data<>(2, 10));
series.getData().add(new XYChart.Data<>(3, 20));
series.getData().add(new XYChart.Data<>(4, 25));
series.getData().add(new XYChart.Data<>(5, 30));
// Series চ্যাটে যোগ করা
lineChart.getData().add(series);
// Scene তৈরি এবং সেট করা
Scene scene = new Scene(lineChart, 800, 600);
primaryStage.setTitle("JavaFX LineChart Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
এই কোডের মাধ্যমে একটি LineChart তৈরি হবে, যেখানে X অক্ষে 1, 2, 3, 4, 5 এবং Y অক্ষে সেগুলির উপযুক্ত মান (5, 10, 20, 25, 30) প্রদর্শিত হবে।
এখানে একটি BarChart তৈরি করা হয়েছে যেখানে Data Series যোগ করা হচ্ছে। এটি বার গ্রাফ হিসাবে তথ্য প্রদর্শন করে।
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class BarChartExample extends Application {
@Override
public void start(Stage primaryStage) {
// X এবং Y অক্ষ তৈরি
CategoryAxis xAxis = new CategoryAxis();
NumberAxis yAxis = new NumberAxis();
// X এবং Y অক্ষের টাইটেল সেট করা
xAxis.setLabel("Categories");
yAxis.setLabel("Values");
// BarChart তৈরি করা
BarChart<String, Number> barChart = new BarChart<>(xAxis, yAxis);
barChart.setTitle("Sample Bar Chart");
// Data Series তৈরি করা
XYChart.Series<String, Number> series = new XYChart.Series<>();
series.setName("Category Data");
// Data Points যোগ করা
series.getData().add(new XYChart.Data<>("A", 40));
series.getData().add(new XYChart.Data<>("B", 60));
series.getData().add(new XYChart.Data<>("C", 80));
series.getData().add(new XYChart.Data<>("D", 100));
// Series চ্যাটে যোগ করা
barChart.getData().add(series);
// Scene তৈরি এবং সেট করা
Scene scene = new Scene(barChart, 800, 600);
primaryStage.setTitle("JavaFX BarChart Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
এই কোডের মাধ্যমে একটি BarChart তৈরি হবে, যেখানে ক্যাটেগরি "A", "B", "C", "D" এর জন্য মান (40, 60, 80, 100) দেখানো হবে।
JavaFX-এ আপনি যদি Custom Chart তৈরি করতে চান, তবে Chart ক্লাস এক্সটেন্ড করে কাস্টম চ্যাট তৈরি করতে পারেন। নিচে একটি কাস্টম চ্যাট তৈরির উদাহরণ দেওয়া হয়েছে:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.Chart;
import javafx.scene.chart.XYChart;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class CustomChartExample extends Application {
public class CustomChart extends Chart {
private final XYChart.Series<Number, Number> series;
public CustomChart() {
super(new XYChart.XYChartStyle());
series = new XYChart.Series<>();
series.setName("Custom Series");
// Custom Data Points
series.getData().add(new XYChart.Data<>(1, 10));
series.getData().add(new XYChart.Data<>(2, 15));
series.getData().add(new XYChart.Data<>(3, 20));
}
@Override
protected void layoutChartChildren(double x, double y) {
// Custom chart rendering logic (e.g., drawing lines, bars, etc.)
}
}
@Override
public void start(Stage primaryStage) {
CustomChart customChart = new CustomChart();
// Layout for displaying custom chart
StackPane root = new StackPane();
root.getChildren().add(customChart);
// Scene and Stage setup
Scene scene = new Scene(root, 800, 600);
primaryStage.setTitle("Custom Chart Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Chart
ক্লাস এক্সটেন্ড করে তৈরি করা হয়েছে। এটি একটি কাস্টম চ্যাট তৈরি করতে ব্যবহৃত হয়।JavaFX চ্যাট কন্ট্রোলস এবং কাস্টম চ্যাট তৈরি করার মাধ্যমে আপনি বিভিন্ন ধরনের ডেটা ভিজ্যুয়ালাইজেশন তৈরি করতে পারেন:
JavaFX এর Charts API-র মাধ্যমে আপনি সহজেই বিভিন্ন ধরনের গ্রাফ তৈরি করতে পারেন, যেমন LineChart, BarChart, PieChart, এবং ScatterChart। আপনি Data Series এবং Data Points যোগ করে ডেটা ভিজ্যুয়ালাইজেশন সহজভাবে তৈরি করতে পারেন। কাস্টম চার্ট তৈরি করার জন্য, আপনাকে Chart ক্লাস এক্সটেন্ড করতে হবে এবং প্রয়োজনীয় লজিক লিখতে হবে।
Read more