Dataset কি এবং কিভাবে কাজ করে?

JFreeChart এর মৌলিক ধারণা - জেফ্রিচার্ট (JFreeChart) - Java Technologies

356

JFreeChart একটি জনপ্রিয় ওপেন সোর্স লাইব্রেরি যা Java তে চার্ট তৈরি করার জন্য ব্যবহৃত হয়। এটি বিভিন্ন ধরনের চার্ট যেমন বার চার্ট, পাইন্ট চার্ট, লাইনে চার্ট ইত্যাদি তৈরি করতে সাহায্য করে। JFreeChart ব্যবহার করতে গেলে আপনাকে একটি Dataset ব্যবহার করতে হয়, যা চার্টে প্রদর্শিত ডেটা সংরক্ষণ এবং পরিচালনা করে।

Dataset কি?

Dataset হল একটি ডেটা স্ট্রাকচার যা JFreeChart চার্ট তৈরি করতে ব্যবহার করা হয়। এটি একটি শুদ্ধ ডেটা উত্স হিসেবে কাজ করে এবং চার্টে কিভাবে ডেটা প্রদর্শিত হবে তা নির্ধারণ করে। JFreeChart এর মাধ্যমে চার্ট তৈরি করতে গেলে ডেটা প্রথমে Dataset এ রাখতে হয়, তারপর সেই Dataset কে চার্টে প্লট করা হয়।

JFreeChart বিভিন্ন ধরনের Dataset ক্লাস সরবরাহ করে, যা বিভিন্ন ধরনের চার্টের জন্য উপযোগী। এই Dataset গুলি একাধিক ফর্ম্যাটে ডেটা সঞ্চয় করতে সক্ষম এবং ডেটা পরিবর্তনের উপর ভিত্তি করে চার্ট আপডেট করতে সাহায্য করে।


Dataset এর প্রকারভেদ

JFreeChart-এ কিছু প্রধান Dataset প্রকার রয়েছে, যা নির্দিষ্ট চার্ট তৈরি করার জন্য ব্যবহৃত হয়:

1. CategoryDataset

  • CategoryDataset হল সবচেয়ে জনপ্রিয় Dataset, যা সাধারণত bar charts, line charts ইত্যাদির জন্য ব্যবহৃত হয়। এটি ক্যাটাগরি ভিত্তিক ডেটা (যেমন প্রোডাক্ট, মাস, বা দেশের নাম) নিয়ে কাজ করে।
  • এটি Row এবং Column এর মাধ্যমে ডেটা সঞ্চয় করে।
  • Example: sales data of different products across multiple months.

Code Example:

DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(10, "Category 1", "January");
dataset.addValue(20, "Category 1", "February");
dataset.addValue(30, "Category 1", "March");

2. XYDataset

  • XYDataset XY চার্ট, scatter plots বা line charts তৈরি করার জন্য ব্যবহৃত হয়। এটি নির্দিষ্ট এক্স (X) এবং ওয়াই (Y) অ্যাক্সিসে ডেটা পয়েন্ট যুক্ত করে।
  • Example: A plot showing the relationship between temperature and time.

Code Example:

XYSeries series = new XYSeries("Series 1");
series.add(1.0, 2.0);
series.add(2.0, 4.0);
series.add(3.0, 6.0);
XYSeriesCollection dataset = new XYSeriesCollection(series);

3. IntervalXYDataset

  • IntervalXYDataset হলো একটি বিশেষ ধরনের XYDataset, যেখানে ডেটা পয়েন্টের মধ্যে intervals থাকতে পারে।
  • এটি বিশেষভাবে bar charts বা range plots তৈরিতে ব্যবহৃত হয়, যেখানে ডেটা পয়েন্টের পরিধি (range) থাকে।

Code Example:

IntervalXYDataset dataset = new XYBarDataset(series, 0.10);

4. TimeSeriesDataset

  • TimeSeriesDataset ব্যবহার করা হয় যখন ডেটা টাইম সিরিজ ফরম্যাটে থাকে (যেমন সময়ে সময়ের পরিবর্তন)।
  • এটি সাধারণত line charts বা time-based plots তৈরির জন্য ব্যবহার করা হয়।

Code Example:

TimeSeries series = new TimeSeries("Time Series");
series.addOrUpdate(new Second(10, 10, 10, 10, 10, 2020), 100);
TimeSeriesCollection dataset = new TimeSeriesCollection(series);

Dataset কিভাবে কাজ করে?

Dataset কাজ করে বিভিন্ন ডেটা পয়েন্ট সংগ্রহ ও ব্যবস্থাপনার মাধ্যমে। যখন আপনি একটি Chart তৈরি করতে চান, তখন প্রথমে আপনাকে একটি Dataset তৈরি করতে হবে। সেই Dataset চার্টের জন্য ডেটা সরবরাহ করে এবং যখন ডেটাতে কোনো পরিবর্তন ঘটে, চার্ট সেই পরিবর্তন প্রতিফলিত করে।

Dataset এর কাজের প্রক্রিয়া

  1. ডেটা সংগ্রহ: Dataset প্রথমে ডেটা সংগ্রহ করে। এটি ব্যবহারকারীর কাছ থেকে ইনপুট নেয় বা অন্য কোনো উৎস (যেমন ডাটাবেস, ফাইল, API) থেকে ডেটা প্রাপ্ত করে।
  2. ডেটা স্টোরেজ: Dataset ঐ ডেটাগুলিকে যথাযথভাবে সংরক্ষণ করে। প্রতিটি ডেটা সাধারণত একটি নির্দিষ্ট শ্রেণী বা টাইপের অন্তর্ভুক্ত হয় (যেমন X, Y, Category, Value ইত্যাদি)।
  3. ডেটা চার্টে প্লট করা: Dataset একবার তৈরি হলে, এটি JFreeChart অবজেক্টে পাঠানো হয় এবং JFreeChart সেই ডেটা নিয়ে চার্ট তৈরি করে।
  4. ডেটা আপডেট: যদি ডেটাতে কোনো পরিবর্তন ঘটে (যেমন ডেটা ভ্যালু আপডেট করা, নতুন ডেটা যোগ করা), তখন Dataset সেই পরিবর্তন গ্রহণ করে এবং চার্ট আপডেট করে।

উদাহরণ সহ Dataset এর ব্যবহার

ধরা যাক, আমরা একটি Bar Chart তৈরি করতে চাই, যেখানে বিভিন্ন মাসের জন্য বিক্রয়ের ডেটা থাকবে। এখানে DefaultCategoryDataset ব্যবহার করা হবে।

উদাহরণ: Bar Chart Dataset তৈরি করা

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.data.category.DefaultCategoryDataset;

public class BarChartExample {

    public static void main(String[] args) {
        // Dataset তৈরি
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.addValue(100, "Sales", "January");
        dataset.addValue(200, "Sales", "February");
        dataset.addValue(150, "Sales", "March");
        
        // Chart তৈরি
        JFreeChart chart = ChartFactory.createBarChart(
            "Sales by Month", // Chart Title
            "Month",          // X-axis Label
            "Sales",          // Y-axis Label
            dataset           // Dataset
        );
        
        // Chart Panel তৈরি
        ChartPanel chartPanel = new ChartPanel(chart);
        
        // JFrame এ চার্ট দেখানো
        javax.swing.JFrame frame = new javax.swing.JFrame();
        frame.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
        frame.add(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

ব্যাখ্যা:

  1. DefaultCategoryDataset: এই Dataset টি আমরা bar chart এর জন্য ব্যবহার করেছি। এতে "Sales" নামে একটি সিরিজ এবং "January", "February", "March" নামক ক্যাটাগরি আছে।
  2. ChartFactory.createBarChart: এটি চার্ট তৈরির জন্য একটি বিল্ট-ইন ফাংশন যা Dataset এর মাধ্যমে বার চার্ট তৈরি করে।
  3. ChartPanel: এটি চার্টটি দেখানোর জন্য ব্যবহৃত হয়।

সারাংশ

Dataset হলো JFreeChart এর একটি গুরুত্বপূর্ণ উপাদান যা চার্টের ডেটা সংরক্ষণ এবং পরিচালনা করে। JFreeChart-এ বিভিন্ন ধরনের Dataset রয়েছে, যেমন CategoryDataset, XYDataset, TimeSeriesDataset, যা বিভিন্ন ধরনের চার্ট তৈরি করার জন্য ব্যবহৃত হয়। Dataset তৈরি করার পর, JFreeChart এই Dataset নিয়ে চার্ট তৈরি করে এবং ডেটার আপডেটের সাথে সাথে চার্টও আপডেট হয়। JFreeChart এর মাধ্যমে আপনি একাধিক ধরনের গ্রাফিক্যাল রিপ্রেজেন্টেশন তৈরি করতে পারেন, যা ডেটাকে আরও সহজভাবে বিশ্লেষণ করতে সহায়ক হয়।

Content added By
Promotion

Are you sure to start over?

Loading...