Basic Chart তৈরি করা

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

434

JFreeChart ব্যবহার করে সহজেই বিভিন্ন ধরণের চার্ট তৈরি করা যায়। নিচে একটি সাধারণ Bar Chart এবং Line Chart তৈরির প্রক্রিয়া বর্ণনা করা হয়েছে।


প্রয়োজনীয় লাইব্রেরি

JFreeChart ব্যবহার করতে হলে প্রথমে আপনাকে JFreeChart.jar ফাইলটি আপনার প্রোজেক্টে যুক্ত করতে হবে। যদি আপনি Maven ব্যবহার করেন, তবে নিচের Maven dependency ব্যবহার করে JFreeChart ইনস্টল করতে পারেন।

Maven Dependency

<dependency>
    <groupId>org.jfree</groupId>
    <artifactId>jfreechart</artifactId>
    <version>1.5.3</version>
</dependency>

১. Basic Bar Chart তৈরি করা

নিচে একটি সাধারণ Bar Chart তৈরির কোড দেওয়া হল। এই চার্টে বিভিন্ন ভাষার জনপ্রিয়তা সম্পর্কিত ডেটা প্রদর্শন করা হবে।

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

import javax.swing.*;

public class BarChartExample {
    public static void main(String[] args) {
        // ডেটাসেট তৈরি করা
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.addValue(50, "Languages", "Java");
        dataset.addValue(30, "Languages", "Python");
        dataset.addValue(20, "Languages", "C++");

        // বার চার্ট তৈরি করা
        JFreeChart barChart = ChartFactory.createBarChart(
                "Programming Language Popularity",  // চার্টের টাইটেল
                "Programming Language",            // এক্স-অক্ষের নাম
                "Popularity",                      // ওয়াই-অক্ষের নাম
                dataset                            // ডেটাসেট
        );

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

        // JFrame এ চার্ট প্রদর্শন
        JFrame frame = new JFrame();
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এখানে DefaultCategoryDataset ব্যবহার করা হয়েছে ডেটা সংরক্ষণ করার জন্য এবং ChartFactory.createBarChart() মেথড দিয়ে বার চার্ট তৈরি করা হয়েছে।


২. Basic Line Chart তৈরি করা

এখন একটি সাধারণ Line Chart তৈরি করা হবে, যেখানে বিভিন্ন বছরের জন্য একটি ডেটা সিরিজ প্রদর্শিত হবে।

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

import javax.swing.*;

public class LineChartExample {
    public static void main(String[] args) {
        // ডেটাসেট তৈরি করা
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.addValue(10, "Year", "2020");
        dataset.addValue(15, "Year", "2021");
        dataset.addValue(20, "Year", "2022");
        dataset.addValue(25, "Year", "2023");

        // লাইন চার্ট তৈরি করা
        JFreeChart lineChart = ChartFactory.createLineChart(
                "Yearly Growth",        // চার্টের টাইটেল
                "Year",                 // এক্স-অক্ষের নাম
                "Growth",               // ওয়াই-অক্ষের নাম
                dataset                // ডেটাসেট
        );

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

        // JFrame এ চার্ট প্রদর্শন
        JFrame frame = new JFrame();
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এই কোডের মাধ্যমে একটি সাধারণ Line Chart তৈরি করা হয়েছে, যেখানে DefaultCategoryDataset ব্যবহার করে বিভিন্ন বছর এবং তাদের সংশ্লিষ্ট ডেটা দেওয়া হয়েছে। ChartFactory.createLineChart() মেথড দিয়ে চার্টটি তৈরি করা হয়েছে।


উপসংহার

এভাবে JFreeChart ব্যবহার করে আপনি সহজে Bar Chart বা Line Chart তৈরি করতে পারেন। JFreeChart এর সাহায্যে আরও বিভিন্ন ধরনের চার্ট তৈরি করা সম্ভব, এবং এগুলো কাস্টমাইজ করে আপনার প্রয়োজন অনুযায়ী উপস্থাপন করা যায়।

Content added By

Line Chart বা লাইন চার্ট হলো ডেটার মধ্যে সম্পর্ক বা পরিবর্তন চিত্রায়ন করতে ব্যবহৃত একটি জনপ্রিয় চার্ট। এটি বিশেষত সময়সীমার মধ্যে ডেটার ট্রেন্ড বা ধারা দেখতে সাহায্য করে। JFreeChart লাইব্রেরি ব্যবহার করে সহজেই লাইন চার্ট তৈরি করা সম্ভব।

নিচে একটি সাধারণ উদাহরণ দেখানো হলো, যেখানে JFreeChart দিয়ে Line Chart তৈরি করা হয়েছে।


Line Chart তৈরি করার উদাহরণ

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

import javax.swing.*;

public class LineChartExample {
    public static void main(String[] args) {
        // ডেটাসেট তৈরি করা
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.addValue(1.0, "Series1", "Jan");
        dataset.addValue(4.0, "Series1", "Feb");
        dataset.addValue(3.0, "Series1", "Mar");
        dataset.addValue(5.0, "Series1", "Apr");
        dataset.addValue(2.0, "Series1", "May");
        dataset.addValue(6.0, "Series1", "Jun");

        // লাইন চার্ট তৈরি করা
        JFreeChart lineChart = ChartFactory.createLineChart(
                "Monthly Data",         // চার্টের শিরোনাম
                "Month",                // X-অক্ষের লেবেল
                "Value",                // Y-অক্ষের লেবেল
                dataset,                // ডেটাসেট
                org.jfree.chart.plot.PlotOrientation.VERTICAL, // লাইন চার্টের অরিয়েন্টেশন
                true,                   // লেজেন্ড প্রদর্শন
                true,                   // টুলটিপস
                false                   // URL বা ইন্টারঅ্যাকশন
        );

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

        // JFrame এ চার্ট দেখানো
        JFrame frame = new JFrame("JFreeChart Line Chart Example");
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

কোড ব্যাখ্যা

  • ডেটাসেট তৈরি: এখানে DefaultCategoryDataset ব্যবহার করা হয়েছে ডেটা সংরক্ষণ করার জন্য, যেখানে প্রতিটি ডেটা পয়েন্টে একটি মান এবং তার সংশ্লিষ্ট মাস রয়েছে।
  • ChartFactory.createLineChart(): এই মেথডটি দিয়ে লাইন চার্ট তৈরি করা হয়। এর মধ্যে চারটি প্রধান প্যারামিটার রয়েছে:
    • Chart Title (চার্টের শিরোনাম)
    • X-axis Label (X-অক্ষের লেবেল)
    • Y-axis Label (Y-অক্ষের লেবেল)
    • Dataset (ডেটাসেট)
    • PlotOrientation.VERTICAL: এটি লাইন চার্টের অরিয়েন্টেশন নির্দেশ করে, যা ভার্টিকাল অবস্থানে হবে।
  • ChartPanel: এটি একটি প্যানেল তৈরি করে যা JFrame-এ চার্ট প্রদর্শন করতে সাহায্য করে।
  • JFrame: JFrame ব্যবহার করে একটি নতুন উইন্ডো তৈরি করা হয় এবং সেখানে চার্টটি প্রদর্শিত হয়।

লাইন চার্ট কাস্টমাইজেশন

আপনি JFreeChart-এ লাইন চার্টের বিভিন্ন বৈশিষ্ট্য কাস্টমাইজ করতে পারেন, যেমন:

  • রঙ পরিবর্তন করা
  • লাইনের স্টাইল পরিবর্তন করা (যেমন দাগ বা সলিড লাইন)
  • X এবং Y অক্ষের স্কেল পরিবর্তন করা
  • লেজেন্ড এবং টুলটিপস কাস্টমাইজ করা

সারসংক্ষেপ

JFreeChart দিয়ে সহজেই Line Chart তৈরি করা যায়, যা ডেটার ট্রেন্ড বা পরিবর্তন প্রদর্শন করতে সাহায্য করে। উপরোক্ত উদাহরণে দেখানো হয়েছে কীভাবে একটি সাধারণ লাইন চার্ট তৈরি করা যায় এবং সেটি Java Swing অ্যাপ্লিকেশনের মধ্যে প্রদর্শন করা যায়। JFreeChart অনেক ধরনের কাস্টমাইজেশন এবং ইন্টারঅ্যাকটিভ ফিচার প্রদান করে, যা ব্যবহারকারীদের চার্টের ডিজাইন এবং কার্যকারিতা আরও উন্নত করতে সাহায্য করে।

Content added By

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


Bar Chart এবং Column Chart এর মধ্যে পার্থক্য

  • Bar Chart: এটি একটি অনুভূমিক (horizontal) চার্ট, যেখানে বিভিন্ন ক্যাটেগরি বা ডেটা পয়েন্টের মান অনুভূমিকভাবে চিত্রিত করা হয়। এটি সাধারণত ডেটা পয়েন্টের তুলনা করতে ব্যবহৃত হয় যেখানে ক্যাটেগরির নাম অনেক বড় বা দীর্ঘ হতে পারে।
  • Column Chart: এটি একটি উল্লম্ব (vertical) চার্ট, যেখানে ডেটা পয়েন্টের মান উল্লম্বভাবে চিত্রিত করা হয়। এটি সাধারণত সময়, পরিমাণ বা অন্যান্য বিশ্লেষণাত্মক ডেটা দেখতে ব্যবহৃত হয়।

JFreeChart এ Bar Chart এবং Column Chart তৈরি করার উদাহরণ

Bar Chart উদাহরণ

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

import javax.swing.*;

public class BarChartExample {
    public static void main(String[] args) {
        // ডেটাসেট তৈরি করা
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.addValue(10, "Category 1", "January");
        dataset.addValue(20, "Category 1", "February");
        dataset.addValue(30, "Category 1", "March");
        
        // বার চার্ট তৈরি করা
        JFreeChart barChart = ChartFactory.createBarChart(
                "Sales for the First Quarter",   // চার্টের শিরোনাম
                "Month",                         // এক্স-অক্ষের লেবেল
                "Sales (in units)",              // ওয়াই-অক্ষের লেবেল
                dataset                          // ডেটাসেট
        );
        
        // চার্ট প্যানেল তৈরি করা
        ChartPanel chartPanel = new ChartPanel(barChart);
        chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));
        
        // JFrame এ চার্ট দেখানো
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এই কোডে, Bar Chart তৈরি করা হয়েছে যেখানে এক্স-অক্ষের উপর মাস এবং ওয়াই-অক্ষের উপর বিক্রয় (Sales) দেখানো হয়েছে।

Column Chart উদাহরণ

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

import javax.swing.*;

public class ColumnChartExample {
    public static void main(String[] args) {
        // ডেটাসেট তৈরি করা
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.addValue(15, "Category 1", "Q1");
        dataset.addValue(25, "Category 1", "Q2");
        dataset.addValue(35, "Category 1", "Q3");
        
        // কলাম চার্ট তৈরি করা
        JFreeChart columnChart = ChartFactory.createBarChart(
                "Quarterly Sales",           // চার্টের শিরোনাম
                "Quarter",                   // এক্স-অক্ষের লেবেল
                "Sales (in units)",          // ওয়াই-অক্ষের লেবেল
                dataset                      // ডেটাসেট
        );
        
        // চার্ট প্যানেল তৈরি করা
        ChartPanel chartPanel = new ChartPanel(columnChart);
        chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));
        
        // JFrame এ চার্ট দেখানো
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এই উদাহরণে, Column Chart ব্যবহার করা হয়েছে যেখানে এক্স-অক্ষের উপর ত্রৈমাসিক (Quarter) এবং ওয়াই-অক্ষের উপর বিক্রয় (Sales) মান দেখানো হয়েছে।


Bar Chart এবং Column Chart এর ব্যবহার

১. ডেটা তুলনা:
Bar Chart এবং Column Chart উভয়ই ডেটা পয়েন্টের মধ্যে তুলনা করতে ব্যবহৃত হয়। Bar Chart সাধারণত ব্যবহার করা হয় যখন তুলনামূলক ক্যাটেগরি বা মানের মধ্যে পার্থক্য স্পষ্টভাবে দেখা দরকার।

২. ট্রেন্ড ভিজুয়ালাইজেশন:
Column Chart সাধারণত সময়ভিত্তিক ডেটা, যেমন মাস, ত্রৈমাসিক বা বছর অনুযায়ী ডেটা প্রদর্শনের জন্য বেশি ব্যবহৃত হয়, যেমন Quarterly Sales বা Annual Revenue

৩. সহজ এবং বোধগম্য:
এই দুইটি চার্ট সঠিকভাবে ব্যবহার করলে ডেটা উপস্থাপন অনেক সহজ এবং বোধগম্য হয়ে ওঠে, যা ব্যবহারকারীদের বা ডেটা বিশ্লেষকদের সাহায্য করে দ্রুত সিদ্ধান্ত গ্রহণে।


JFreeChart এর মধ্যে Bar Chart এবং Column Chart এর কাস্টমাইজেশন

১. চার্টের রঙ পরিবর্তন:
JFreeChart ব্যবহারকারীদের চার্টের বার বা কলামের রঙ কাস্টমাইজ করার সুযোগ দেয়, যেমন:

barChart.setBackgroundPaint(Color.white);
CategoryPlot plot = (CategoryPlot) barChart.getPlot();
plot.setRangeGridlinePaint(Color.black);

২. লেবেল কাস্টমাইজেশন:
চার্টের লেবেল কাস্টমাইজ করতে JFreeChart এর CategoryAxis এবং ValueAxis ক্লাস ব্যবহার করা যায়।

৩. লেজেন্ড এবং টাইটেল কাস্টমাইজেশন:
Chart এর লেজেন্ড এবং টাইটেল কাস্টমাইজ করে এর ডিজাইন আরও আকর্ষণীয় করা যায়।


সারসংক্ষেপ

JFreeChart ব্যবহার করে Bar Chart এবং Column Chart তৈরির প্রক্রিয়া খুবই সহজ এবং সোজা। এই চার্টগুলো ডেটা ভিজুয়ালাইজেশনের জন্য অত্যন্ত জনপ্রিয় এবং তুলনা বা সময়ের সাথে ডেটার পরিবর্তন প্রদর্শন করতে সহায়ক। JFreeChart এ এই চার্টগুলোকে কাস্টমাইজ করা যায় এবং এক্সপোর্ট অপশনও রয়েছে, যা ডেভেলপারদের তাদের ডেটাকে আরও কার্যকরভাবে উপস্থাপন করতে সহায়তা করে।

Content added By

Pie Chart বা পাই চার্ট হল একটি গোলাকার গ্রাফ যা একটি পূর্ণ বৃত্তের অংশগুলিকে বিভিন্ন আকারে ভাগ করে প্রতিটি বিভাগের অনুপাত দেখায়। এটি সাধারণত ব্যবহারকারীর কাছে প্রোপর্শন বা ভাগের তুলনা করার জন্য উপকারী। JFreeChart লাইব্রেরি দিয়ে সহজে পাই চার্ট তৈরি এবং কাস্টমাইজ করা সম্ভব।


JFreeChart দিয়ে Pie Chart তৈরি করা

JFreeChart দিয়ে একটি সাধারণ Pie Chart তৈরি করতে হলে প্রথমে একটি DefaultPieDataset তৈরি করতে হবে, যেখানে আমরা পাই চার্টের জন্য ডেটা সংরক্ষণ করব। এরপর, ChartFactory এর সাহায্যে পাই চার্ট তৈরি করা যাবে। নিচে একটি উদাহরণ দেওয়া হল:

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;

import javax.swing.*;

public class PieChartExample {
    public static void main(String[] args) {
        // ডেটাসেট তৈরি করা
        DefaultPieDataset dataset = new DefaultPieDataset();
        dataset.setValue("Java", 50);  // "Java" - 50%
        dataset.setValue("Python", 30);  // "Python" - 30%
        dataset.setValue("C++", 20);  // "C++" - 20%

        // পাই চার্ট তৈরি করা
        JFreeChart pieChart = ChartFactory.createPieChart(
                "Programming Language Usage", // চার্টের টাইটেল
                dataset,                      // ডেটাসেট
                true,                         // লেজেন্ড দেখানো
                true,                         // টুলটিপস দেখানো
                false                         // URL দেখানো নয়
        );

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

        // JFrame এ চার্ট দেখানো
        JFrame frame = new JFrame("Pie Chart Example");
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এই কোডটি একটি সহজ পাই চার্ট তৈরি করবে, যেখানে Java, Python, এবং C++ ভাষার জনপ্রিয়তার ভিত্তিতে ভাগ করা হয়েছে।


Pie Chart কাস্টমাইজ করা

JFreeChart দিয়ে তৈরি করা পাই চার্টটি বিভিন্নভাবে কাস্টমাইজ করা যেতে পারে। এর মধ্যে রয়েছে:

১. চার্টের রঙ পরিবর্তন

pieChart.setSectionPaint("Java", java.awt.Color.RED);  // "Java" সেকশনের রঙ লাল হবে
pieChart.setSectionPaint("Python", java.awt.Color.GREEN);  // "Python" সেকশনের রঙ সবুজ হবে
pieChart.setSectionPaint("C++", java.awt.Color.BLUE);  // "C++" সেকশনের রঙ নীল হবে

২. লেজেন্ড কাস্টমাইজ করা

pieChart.getLegend().setPosition(RectangleEdge.BOTTOM);  // লেজেন্ডটি নিচে অবস্থান করবে

৩. টাইটেল কাস্টমাইজ করা

pieChart.setTitle("Programming Language Usage (Updated)");  // টাইটেল আপডেট করা

৪. টুলটিপ কাস্টমাইজ করা

pieChart.getPlot().setSectionToolTipGenerator(new StandardPieSectionLabelGenerator("{0}: {1}"));

এটি প্রতিটি সেকশনের নাম এবং মান টুলটিপ হিসেবে দেখাবে।

৫. শৈলী কাস্টমাইজ করা (Explosion effect)

pieChart.getPlot().setSectionDepth(0.20);  // প্রতিটি সেকশন একে অপর থেকে একটু দূরে থাকবে

৬. দ্বিতীয় সেকশনের বিশেষ গুরুত্ব দেওয়া (Exploded Pie Chart)

pieChart.getPlot().setSectionExploded("Java", true);  // "Java" সেকশন এক্সপ্লোড করা হবে

Pie Chart এক্সপোর্ট করা

JFreeChart দিয়ে তৈরি করা পাই চার্টকে ছবি হিসেবে সংরক্ষণ করা যায়। উদাহরণস্বরূপ, আমরা এটি PNG ফরম্যাটে এক্সপোর্ট করতে পারি:

import org.jfree.chart.ChartUtilities;
import java.io.File;
import java.io.IOException;

try {
    // এক্সপোর্ট করার জন্য ফাইল তৈরি
    ChartUtilities.saveChartAsPNG(new File("pie_chart.png"), pieChart, 600, 400);
} catch (IOException e) {
    e.printStackTrace();
}

সারসংক্ষেপ

JFreeChart লাইব্রেরি দিয়ে খুব সহজেই Pie Chart তৈরি এবং কাস্টমাইজ করা যায়। আপনি আপনার প্রয়োজন অনুযায়ী এই চার্টের রঙ, টাইটেল, লেজেন্ড, টুলটিপ এবং আরও অনেক কিছু কাস্টমাইজ করতে পারবেন। এটি ডেটার ভিজুয়াল রিপ্রেজেন্টেশনকে আরও আকর্ষণীয় এবং বোধগম্য করে তোলে, যা বিভিন্ন ক্ষেত্র যেমন ব্যবসা, বিজ্ঞান, শিক্ষায় এবং আরও অনেক জায়গায় ব্যবহার করা যায়।

Content added By

JFreeChart লাইব্রেরি ব্যবহার করে Scatter Chart এবং Area Chart তৈরি করা একটি সহজ এবং কার্যকরী উপায় ডেটা ভিজুয়ালাইজেশনের জন্য। Scatter Chart এবং Area Chart সাধারণত বিভিন্ন ধরনের ডেটা সম্পর্ক এবং ট্রেন্ড বিশ্লেষণ করতে ব্যবহৃত হয়।


Scatter Chart ব্যবহার

Scatter Chart বা স্ক্যাটার চার্ট সাধারণত দুটি ভেরিয়েবলের মধ্যে সম্পর্ক বা সমন্বয় প্রদর্শন করার জন্য ব্যবহৃত হয়। এটি X এবং Y অক্ষের মধ্যে পয়েন্ট চিত্রিত করে, এবং এই পয়েন্টগুলির মধ্যে সম্পর্ক বা ছড়িয়ে থাকা (distribution) বিশ্লেষণ করা সহজ হয়। এটি সাধারণত Correlation বা Trend বিশ্লেষণের জন্য উপযুক্ত।

Scatter 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 javax.swing.*;

public class ScatterChartExample {
    public static void main(String[] args) {
        // ডেটাসেট তৈরি করা
        XYSeries series = new XYSeries("Data Points");
        series.add(1.0, 2.0);
        series.add(2.0, 3.0);
        series.add(3.0, 5.0);
        series.add(4.0, 4.0);
        series.add(5.0, 6.0);

        XYSeriesCollection dataset = new XYSeriesCollection(series);

        // স্ক্যাটার চার্ট তৈরি করা
        JFreeChart scatterChart = ChartFactory.createScatterPlot(
                "Scatter Chart Example",   // চার্টের শিরোনাম
                "X-Axis",                  // X-Axis লেবেল
                "Y-Axis",                  // Y-Axis লেবেল
                dataset                    // ডেটাসেট
        );

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

        // JFrame এ চার্ট দেখানো
        JFrame frame = new JFrame();
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এই কোডটি একটি Scatter Chart তৈরি করবে যেখানে ডেটার পয়েন্টগুলি X এবং Y অক্ষের উপর চিত্রিত হবে।

Scatter Chart কাস্টমাইজেশন

  • পয়েন্টের আকার পরিবর্তন:

    scatterChart.getXYPlot().getRenderer().setSeriesShape(0, Shape.TRIANGLE);
    
  • রঙ পরিবর্তন:

    scatterChart.getXYPlot().getRenderer().setSeriesPaint(0, Color.RED);
    

Area Chart ব্যবহার

Area Chart বা এরিয়া চার্ট একটি ধরনের গ্রাফ যা Line Chart এর মতো, তবে এখানে এলাকা পূর্ণ করা হয়। এটি ডেটার মধ্যে ট্রেন্ড এবং ভলিউমের পরিবর্তনগুলি ভালোভাবে প্রদর্শন করে। এটি সাধারণত Time Series Data বা Cumulative Data বিশ্লেষণের জন্য ব্যবহৃত হয়, যেখানে আপনার ডেটা ধারাবাহিকভাবে বাড়ে বা কমে।

Area Chart উদাহরণ

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

import javax.swing.*;

public class AreaChartExample {
    public static void main(String[] args) {
        // ডেটাসেট তৈরি করা
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.addValue(1.0, "Series1", "Jan");
        dataset.addValue(4.0, "Series1", "Feb");
        dataset.addValue(3.0, "Series1", "Mar");
        dataset.addValue(5.0, "Series1", "Apr");
        dataset.addValue(2.0, "Series1", "May");
        dataset.addValue(6.0, "Series1", "Jun");

        // এরিয়া চার্ট তৈরি করা
        JFreeChart areaChart = ChartFactory.createAreaChart(
                "Monthly Sales",           // চার্টের শিরোনাম
                "Month",                   // X-Axis লেবেল
                "Sales",                   // Y-Axis লেবেল
                dataset                    // ডেটাসেট
        );

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

        // JFrame এ চার্ট দেখানো
        JFrame frame = new JFrame();
        frame.setContentPane(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এই কোডটি একটি Area Chart তৈরি করবে, যেখানে একাধিক মাসের জন্য বিক্রয় ডেটা প্রদর্শিত হবে।

Area Chart কাস্টমাইজেশন

  • রঙ পরিবর্তন:

    areaChart.getPlot().setBackgroundPaint(Color.LIGHT_GRAY);
    
  • এলাকা পূর্ণ রঙ পরিবর্তন:

    areaChart.getXYPlot().getRenderer().setSeriesPaint(0, Color.CYAN);
    
  • লাইন স্টাইল পরিবর্তন:

    areaChart.getXYPlot().getRenderer().setSeriesStroke(0, new BasicStroke(2.0f));
    

Scatter এবং Area Chart এর মধ্যে পার্থক্য

  • Scatter Chart:
    • ডেটার মধ্যে সম্পর্ক বা প্রান্তিকতা দেখা যায়।
    • সাধারণত correlation এবং distribution বিশ্লেষণের জন্য ব্যবহৃত হয়।
    • পয়েন্ট গুলি একে অপরের থেকে পৃথক।
  • Area Chart:
    • লাইন এবং এলাকা দিয়ে ডেটার ভলিউম বা ট্রেন্ড দেখানো হয়।
    • সাধারণত time-series ডেটা বা cumulative বিশ্লেষণের জন্য ব্যবহৃত হয়।
    • একাধিক সি্রিজের জন্য ব্যবহার করা যেতে পারে যেখানে বিভিন্ন মানের পরিবর্তন দেখা যায়।

সারসংক্ষেপ

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

Content added By
Promotion

Are you sure to start over?

Loading...