Area Chart হল একটি ডেটা ভিজুয়ালাইজেশন টুল যা একাধিক ডেটা সিরিজের মধ্যবর্তী অঞ্চল রঙিন করে প্রদর্শন করে। এটি সাধারণত টাইটল, লেবেল, এবং রঙিন সেকশনের মাধ্যমে একটি ডেটা সিরিজের ট্রেন্ড বা পরিবর্তন দেখানোর জন্য ব্যবহৃত হয়। JFreeChart লাইব্রেরি ব্যবহার করে আপনি CategoryDataset এর মাধ্যমে Area Chart তৈরি করতে পারেন, এবং সেই চার্টের রঙ কাস্টমাইজ করতে পারবেন।
এখানে, আমরা CategoryDataset ব্যবহার করে একটি Area Chart তৈরি করব এবং এর রঙ কাস্টমাইজ করব। এই প্রক্রিয়ায়, আপনি ডেটার উপর ভিত্তি করে একটি চার্ট তৈরি করবেন এবং তার পরে চার্টের আঞ্চলিক অংশগুলির রঙ পরিবর্তন করবেন।
১. Area Chart তৈরি করা CategoryDataset এর মাধ্যমে
CategoryDataset হল একটি ডেটাসেট যা সাধারণত ক্যাটেগরি এবং তাদের মানের জন্য ব্যবহৃত হয়। এটি DefaultCategoryDataset ক্লাসের মাধ্যমে তৈরি করা হয় এবং এতে একাধিক সিরিজের ডেটা রাখা সম্ভব। এটির সাহায্যে একাধিক সিরিজের ডেটা গ্রাফিক্যালি প্রদর্শন করা যায়।
উদাহরণ: Area Chart তৈরি করা
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;
import javax.swing.JFrame;
public class AreaChartExample {
public static void main(String[] args) {
// ডেটাসেট তৈরি
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(5.0, "Series1", "January");
dataset.addValue(8.0, "Series1", "February");
dataset.addValue(6.0, "Series1", "March");
dataset.addValue(10.0, "Series1", "April");
dataset.addValue(7.0, "Series1", "May");
// Area Chart তৈরি
JFreeChart chart = ChartFactory.createAreaChart(
"Area Chart Example", // Title
"Month", // X-axis Label
"Value", // Y-axis Label
dataset, // Dataset
PlotOrientation.VERTICAL,// Plot Orientation
true, // Include Legend
true // Tooltips enabled
);
// চার্ট প্যানেল তৈরি
ChartPanel chartPanel = new ChartPanel(chart);
chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));
// JFrame এ চার্ট প্রদর্শন
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(chartPanel);
frame.pack();
frame.setVisible(true);
}
}
এখানে, আমরা DefaultCategoryDataset ব্যবহার করে একটি Area Chart তৈরি করেছি যেখানে প্রতি মাসের জন্য একটি সিরিজের ডেটা যুক্ত করা হয়েছে। এটি একটি সোজা Area Chart তৈরি করবে।
২. Area Chart এর Color Customization
JFreeChart এ আপনি চার্টের বিভিন্ন অংশের রঙ কাস্টমাইজ করতে পারেন, যেমন সিরিজের রঙ, ফিলিং রঙ, আঞ্চলিক অংশের রঙ ইত্যাদি। নিচে আমরা দেখাবো কীভাবে Area Chart এর সেকশনের রঙ পরিবর্তন করা যায়।
রঙ কাস্টমাইজেশন:
AreaPlot এর setRangeGridlinePaint() মেথড এবং সিরিজের setFillPaint() এর মাধ্যমে আপনি রঙ কাস্টমাইজ করতে পারবেন।
উদাহরণ: Area Chart এর রঙ কাস্টমাইজ করা
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.AreaPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;
import javax.swing.*;
import java.awt.Color;
public class AreaChartWithColorCustomization {
public static void main(String[] args) {
// ডেটাসেট তৈরি
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(5.0, "Series1", "January");
dataset.addValue(8.0, "Series1", "February");
dataset.addValue(6.0, "Series1", "March");
dataset.addValue(10.0, "Series1", "April");
dataset.addValue(7.0, "Series1", "May");
// Area Chart তৈরি
JFreeChart chart = ChartFactory.createAreaChart(
"Area Chart Example", // Title
"Month", // X-axis Label
"Value", // Y-axis Label
dataset, // Dataset
PlotOrientation.VERTICAL,// Plot Orientation
true, // Include Legend
true // Tooltips enabled
);
// AreaPlot রঙ কাস্টমাইজেশন
AreaPlot plot = (AreaPlot) chart.getPlot();
plot.setDomainGridlinePaint(Color.GRAY); // গ্রিডলাইন রঙ
plot.setRangeGridlinePaint(Color.BLACK); // Y-অক্ষের গ্রিডলাইন রঙ
// সিরিজের রঙ কাস্টমাইজেশন
chart.getCategoryPlot().getRenderer().setSeriesFillPaint(0, Color.CYAN); // সিলেক্টেড সিরিজের রঙ
// চার্ট প্যানেল তৈরি
ChartPanel chartPanel = new ChartPanel(chart);
chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));
// JFrame এ চার্ট প্রদর্শন
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(chartPanel);
frame.pack();
frame.setVisible(true);
}
}
এখানে, AreaPlot এর মাধ্যমে গ্রিডলাইন রঙ এবং সিরিজের রঙ কাস্টমাইজ করা হয়েছে। setSeriesFillPaint() মেথড ব্যবহার করে আমরা সিরিজের ব্যাকগ্রাউন্ড রঙ (যেমন, সায়ান) পরিবর্তন করেছি।
সারাংশ
Area Chart একটি শক্তিশালী ডেটা ভিজুয়ালাইজেশন টুল যা JFreeChart লাইব্রেরি ব্যবহার করে তৈরি করা যায় এবং CategoryDataset ব্যবহার করে একাধিক ডেটা সিরিজকে গ্রাফে তুলে ধরতে সহায়তা করে। এই চার্টের মাধ্যমে আপনি পরিবর্তনশীল ডেটা ট্র্যাক করতে পারেন, এবং এর আঞ্চলিক অংশগুলির রঙ কাস্টমাইজ করে এটি আরও সহজে বোঝা যায়। Color Customization আপনাকে চার্টের ভিজুয়াল কনফিগারেশন সম্পাদন করার জন্য আরও বেশি ফ্লেক্সিবিলিটি প্রদান করে, যা আপনার ডেটা ভিজুয়ালাইজেশনের প্রভাব এবং ব্যবহারকারীর অভিজ্ঞতা উন্নত করতে সহায়ক।
Read more