Stacked Area Chart একটি গ্রাফিক্যাল ভিজুয়ালাইজেশন টুল যা ডেটার সময়ভিত্তিক পরিবর্তন এবং প্রতিটি সিরিজের কনট্রিবিউশন প্রদর্শন করে। এটি Area Chart এর একটি বিশেষ সংস্করণ যেখানে একাধিক ডেটা সিরিজের মান একে অপরের উপরে স্তুপিত (stacked) হয়ে থাকে, যাতে আপনি প্রতিটি সিরিজের অবদান এবং মোটের সাথে তার সম্পর্ক দেখতে পারেন। এই ধরনের চার্ট সাধারণত সময়ভিত্তিক বা পরিমাণগত ডেটা ভিজুয়ালাইজ করতে ব্যবহৃত হয়, যেখানে আপনি একাধিক কেটেগরি বা সিরিজের মোট পরিমাণ একযোগে দেখতে চান।
Stacked Area Chart এর ব্যবহার
Stacked Area Chart সাধারণত সময়ভিত্তিক ডেটা বা সামগ্রিক পরিমাণ বা অংশবিশেষ বুঝতে ব্যবহার করা হয়। এটি বিশেষভাবে সহায়ক যখন আপনি বুঝতে চান যে কিভাবে বিভিন্ন উপাদান একত্রে মোটের অংশে যোগ হচ্ছে। উদাহরণস্বরূপ, এটি একাধিক বিভাগ বা প্রোডাক্টের বিক্রির পরিমাণ সময়ের সাথে পরিবর্তন এবং মোট বিক্রির অংশ হিসেবে প্রতিটি বিভাগের অবদান দেখাতে ব্যবহৃত হতে পারে।
Stacked Area Chart এর উদাহরণ
JFreeChart ব্যবহার করে একটি Stacked Area Chart তৈরি করার জন্য, আপনাকে প্রথমে XYDataset তৈরি করতে হবে। তারপর ChartFactory.createStackedAreaChart() মেথড ব্যবহার করে আপনি চার্টটি তৈরি করতে পারবেন।
নিচে একটি উদাহরণ দেওয়া হয়েছে যেখানে একটি Stacked Area Chart তৈরি করা হয়েছে:
উদাহরণ: Stacked Area Chart তৈরি করা
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
import org.jfree.chart.plot.PlotOrientation;
import javax.swing.JFrame;
public class StackedAreaChartExample {
public static void main(String[] args) {
// ১. ডেটা তৈরি করা
XYSeries series1 = new XYSeries("Product A");
series1.add(1, 1);
series1.add(2, 3);
series1.add(3, 5);
series1.add(4, 7);
XYSeries series2 = new XYSeries("Product B");
series2.add(1, 2);
series2.add(2, 4);
series2.add(3, 6);
series2.add(4, 8);
XYSeries series3 = new XYSeries("Product C");
series3.add(1, 3);
series3.add(2, 6);
series3.add(3, 9);
series3.add(4, 12);
// ২. XYSeriesCollection তৈরি করা
XYSeriesCollection dataset = new XYSeriesCollection();
dataset.addSeries(series1);
dataset.addSeries(series2);
dataset.addSeries(series3);
// ৩. Stacked Area Chart তৈরি করা
JFreeChart chart = ChartFactory.createStackedXYAreaChart(
"Sales Data", // Title
"Time", // X-axis label
"Sales ($)", // Y-axis label
dataset, // Dataset
PlotOrientation.VERTICAL, // Orientation
true, // Legend
true, // Tooltips
false // URLs
);
// ৪. চার্ট প্যানেল তৈরি
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);
}
}
কোডের ব্যাখ্যা:
- XYSeries:
- আমরা তিনটি XYSeries তৈরি করেছি, প্রতিটি সিরিজ একটি পৃথক প্রোডাক্টের বিক্রির ডেটা ধারণ করছে। এখানে "Product A", "Product B", এবং "Product C" নামে তিনটি সিরিজ ব্যবহার করা হয়েছে, এবং প্রতিটি সিরিজের জন্য সময় (x-অক্ষ) এবং বিক্রি (y-অক্ষ) মান যোগ করা হয়েছে।
- XYSeriesCollection:
- সমস্ত সিরিজকে একটি
XYSeriesCollectionএ যুক্ত করা হয়েছে, যেটি আমাদের ডেটাসেট হিসাবে কাজ করবে।
- সমস্ত সিরিজকে একটি
- ChartFactory.createStackedXYAreaChart():
- এই মেথডটি ব্যবহার করে আমরা একটি Stacked Area Chart তৈরি করেছি। এর প্যারামিটারগুলির মধ্যে চার্টের শিরোনাম, অক্ষের লেবেল, ডেটাসেট এবং অরিয়েন্টেশন (Vertical অথবা Horizontal) উল্লেখ করা হয়েছে।
- ChartPanel:
- তৈরি করা চার্টটিকে একটি
ChartPanelএ প্যাক করা হয়েছে, যাতে সেটিJFrame-এ প্রদর্শিত হতে পারে।
- তৈরি করা চার্টটিকে একটি
- JFrame:
- একটি
JFrameতৈরি করা হয়েছে, যাতে চার্টটি GUI-তে দেখানো হয়।
- একটি
Stacked Area Chart এর সুবিধা
- বিভিন্ন সিরিজের অবদান সহজে দেখা যায়: Stacked Area Chart বিভিন্ন সিরিজের অবদান একে অপরের উপরে স্তুপিত করে দেখায়, যার ফলে প্রতিটি সিরিজের পরিমাণ এবং মোট পরিমাণে তার অবদান সহজে বিশ্লেষণ করা যায়।
- সময়ভিত্তিক বিশ্লেষণ: এই চার্টটি বিশেষভাবে সময়ভিত্তিক বিশ্লেষণ করার জন্য উপযোগী। যেমন মাসিক বা ত্রৈমাসিক বিক্রির পরিবর্তন অথবা অন্যান্য সময়ে পরিবর্তিত ডেটা।
- সহজ তুলনা: আপনি একাধিক সিরিজের মধ্যে তুলনা করতে পারবেন এবং দেখতে পারবেন কোন সিরিজটি মোটের উপর কতটা প্রভাব ফেলছে।
Stacked Area Chart এর সীমাবদ্ধতা
- কম্প্লেক্স ডেটা: যদি অনেক বেশি সিরিজ থাকে, তবে সেগুলির মধ্যে সঠিক তুলনা করা কঠিন হতে পারে। অনেক সিরিজের স্তুপিত অংশ একে অপরের মধ্যে লুকিয়ে যেতে পারে, ফলে বিশ্লেষণ কঠিন হতে পারে।
- রঙের ব্যাবহার: প্রতিটি সিরিজের জন্য আলাদা রঙ ব্যবহার না করলে চার্টটি দেখতে জটিল হতে পারে এবং ডেটা বুঝতে সমস্যা হতে পারে।
সারাংশ
Stacked Area Chart একটি শক্তিশালী ভিজুয়ালাইজেশন টুল যা ডেটার অংশবিশেষ প্রদর্শন করে এবং সময়ভিত্তিক বিশ্লেষণ করতে সাহায্য করে। এটি JFreeChart দিয়ে তৈরি করা যেতে পারে, যেখানে XYSeries এবং XYSeriesCollection ব্যবহার করে ডেটা সেট তৈরি করা হয় এবং ChartFactory.createStackedXYAreaChart() দিয়ে চার্টটি তৈরি করা হয়। এটি সময়ের সাথে বিভিন্ন সিরিজের পরিমাণ এবং মোট পরিমাণের অবদান দেখাতে সাহায্য করে এবং বিশ্লেষণের জন্য সহায়ক হয়।
Read more