Combined এবং Overlaid Charts তৈরি করা

Advanced Chart Types - জেফ্রিচার্ট (JFreeChart) - Big Data and Analytics

402

JFreeChart লাইব্রেরি ব্যবহার করে আপনি Combined Charts এবং Overlaid Charts তৈরি করতে পারেন, যা বিভিন্ন ধরনের চার্টকে একত্রিত করে একটি গ্রাফিক্যাল রিপ্রেজেন্টেশন তৈরি করে। এই ধরনের চার্টগুলোর মাধ্যমে একাধিক ডেটা সেটের তুলনা এবং বিশ্লেষণ করা সহজ হয়।

Combined Charts

Combined Charts হলো এমন চার্ট, যেখানে একাধিক চার্ট একসাথে প্রদর্শিত হয়। এই ধরনের চার্টগুলি সাধারণত দুটি বা তার বেশি ডেটা সেটের তুলনা করার জন্য ব্যবহৃত হয়। JFreeChart এ এটি করা হয় একাধিক প্লট বা চার্টকে একত্রিত করে।

Combined 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.chart.plot.SpiralPlot;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.chart.plot.XYPlot;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;

import javax.swing.*;

public class CombinedChartExample {
    public static void main(String[] args) {
        // ডেটাসেট ১ (Category Dataset)
        DefaultCategoryDataset dataset1 = new DefaultCategoryDataset();
        dataset1.addValue(10, "Series1", "Jan");
        dataset1.addValue(20, "Series1", "Feb");
        dataset1.addValue(30, "Series1", "Mar");

        // ডেটাসেট ২ (XY Dataset)
        XYSeries series = new XYSeries("XY Data");
        series.add(1.0, 2.0);
        series.add(2.0, 3.0);
        series.add(3.0, 4.0);
        XYSeriesCollection dataset2 = new XYSeriesCollection(series);

        // দুটি চার্ট তৈরি করা
        JFreeChart barChart = ChartFactory.createBarChart(
                "Bar Chart Example", // চার্টের শিরোনাম
                "Month",             // এক্স-অক্ষের নাম
                "Value",             // ওয়াই-অক্ষের নাম
                dataset1,            // ডেটাসেট ১
                PlotOrientation.VERTICAL,
                true,
                true,
                false
        );

        JFreeChart lineChart = ChartFactory.createXYLineChart(
                "Line Chart Example", // চার্টের শিরোনাম
                "X",                 // এক্স-অক্ষের নাম
                "Y",                 // ওয়াই-অক্ষের নাম
                dataset2,            // ডেটাসেট ২
                PlotOrientation.VERTICAL,
                true,
                true,
                false
        );

        // Combined Plot তৈরি করা
        CategoryPlot combinedPlot = barChart.getCategoryPlot();
        XYPlot xyPlot = lineChart.getXYPlot();
        combinedPlot.setDomainPannable(true);

        // Combined Chart তৈরি করা
        JFreeChart combinedChart = new JFreeChart(
                "Combined Chart",   // Combined Chart শিরোনাম
                JFreeChart.DEFAULT_TITLE_FONT,
                combinedPlot,
                true
        );

        // Combined Chart প্যানেল তৈরি করা
        ChartPanel chartPanel = new ChartPanel(combinedChart);
        chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));

        // JFrame এ Combined Chart দেখানো
        JFrame frame = new JFrame();
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

ব্যাখ্যা:

  • এখানে দুটি আলাদা চার্ট (একটি Bar Chart এবং একটি Line Chart) তৈরি করা হয়েছে এবং Combined Chart তৈরি করার জন্য এগুলোর প্লট একত্রিত করা হয়েছে।
  • CategoryPlot এবং XYPlot দুটি আলাদা প্লট ব্যবহার করা হয়েছে এবং তাদের একত্রিত করা হয়েছে JFreeChart এর মাধ্যমে।

Overlaid Charts

Overlaid Charts হলো এমন চার্ট যেখানে দুটি বা তার বেশি চার্ট একে অপরের উপর অবস্থান করে। এটি সাধারণত একাধিক ডেটা সেটের মধ্যে সম্পর্ক বা সঙ্গতি প্রদর্শন করার জন্য ব্যবহৃত হয়। JFreeChart এ এটি তৈরি করা হয় একাধিক প্লটকে একসাথে আচ্ছাদিত (overlay) করে।

Overlaid 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.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;

import javax.swing.*;
import java.awt.*;

public class OverlaidChartExample {
    public static void main(String[] args) {
        // ডেটাসেট ১ (XY Dataset)
        XYSeries series1 = new XYSeries("Series 1");
        series1.add(1.0, 5.0);
        series1.add(2.0, 6.0);
        series1.add(3.0, 7.0);

        // ডেটাসেট ২ (XY Dataset)
        XYSeries series2 = new XYSeries("Series 2");
        series2.add(1.0, 3.0);
        series2.add(2.0, 4.0);
        series2.add(3.0, 5.0);

        XYSeriesCollection dataset1 = new XYSeriesCollection(series1);
        XYSeriesCollection dataset2 = new XYSeriesCollection(series2);

        // Overlaid Line Chart তৈরি করা
        JFreeChart chart = ChartFactory.createXYLineChart(
                "Overlaid Line Chart",   // চার্টের শিরোনাম
                "X",                     // এক্স-অক্ষের নাম
                "Y",                     // ওয়াই-অক্ষের নাম
                dataset1,                // প্রথম ডেটাসেট
                PlotOrientation.VERTICAL,
                true,                    // লেজেন্ড দেখানো
                true,                    // টুলটিপস
                false                    // URL সমর্থন
        );

        // XYPlot এ দ্বিতীয় সিরিজ যোগ করা
        XYPlot plot = chart.getXYPlot();
        plot.setDataset(1, dataset2);  // দ্বিতীয় ডেটাসেট যোগ করা
        XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
        plot.setRenderer(1, renderer);  // দ্বিতীয় সিরিজের জন্য রেন্ডারার সেট করা

        // চার্ট প্যানেল তৈরি করা
        ChartPanel chartPanel = new ChartPanel(chart);
        chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));

        // JFrame এ Overlaid Chart দেখানো
        JFrame frame = new JFrame();
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

ব্যাখ্যা:

  • এখানে দুটি XYSeries তৈরি করা হয়েছে এবং XYLineChart এর মাধ্যমে প্রথম সিরিজটি প্রর্দশিত হয়েছে।
  • দ্বিতীয় সিরিজটি setDataset(1, dataset2) পদ্ধতি ব্যবহার করে XYPlot এ যোগ করা হয়েছে এবং দুটি সিরিজ একে অপরের উপরে দেখানো হচ্ছে।

Combined এবং Overlaid Charts এর মধ্যে পার্থক্য

  1. Combined Charts:
    • একাধিক চার্টের প্লটকে একত্রিত করা হয়।
    • প্রতিটি চার্ট আলাদা অংশে প্রদর্শিত হয়।
    • সাধারণত বিভিন্ন ধরনের চার্ট (যেমন বার, লাইন) একত্রিত করা হয়।
  2. Overlaid Charts:
    • একাধিক চার্ট একে অপরের উপরে প্রদর্শিত হয়।
    • ডেটা সেটের তুলনা করার জন্য এটি বেশি ব্যবহৃত হয়, যেমন একাধিক লাইন গ্রাফ একসাথে প্রদর্শন করা।
    • বিভিন্ন ডেটাসেট একে অপরের উপর লেয়ার করা হয়।

সারসংক্ষেপ

JFreeChart ব্যবহার করে আপনি Combined Charts এবং Overlaid Charts তৈরি করতে পারেন, যা একাধিক ডেটা সেটের তুলনা এবং বিশ্লেষণ করতে সহায়ক। Combined Charts এ একাধিক চার্ট একত্রিত করা হয়, যেখানে প্রতিটি চার্ট আলাদা অংশে প্রদর্শিত হয়। অন্যদিকে, Overlaid Charts এ একাধিক চার্ট একে অপরের উপরে অবস্থান করে, যা ডেটা সেটের তুলনা বা সম্পর্ক বিশ্লেষণ করতে সহায়ক।

Content added By
Promotion

Are you sure to start over?

Loading...