Pie Chart এর অংশসমূহের Label এবং Color কাস্টমাইজ করা

Pie Chart তৈরি করা - জেফ্রিচার্ট (JFreeChart) - Java Technologies

307

JFreeChart Java-এর একটি শক্তিশালী লাইব্রেরি যা ডেটা ভিজ্যুয়ালাইজেশনে ব্যবহার হয়। আপনি বিভিন্ন ধরনের চার্ট তৈরি করতে পারেন, যার মধ্যে একটি জনপ্রিয় টাইপ হল Pie Chart (পাই চার্ট)। Pie Chart বিভিন্ন ভাগ বা সেকশনে বিভক্ত হয় এবং প্রতিটি সেকশনের জন্য একটি ভ্যালু বা শতাংশ দেখায়।

এখন, আমরা দেখব কিভাবে JFreeChartPie Chart তৈরি করা যায় এবং এর অংশগুলোর Label এবং Color কাস্টমাইজ করা যায়।


1. JFreeChart এ Pie Chart তৈরি করা

প্রথমে, JFreeChart দিয়ে একটি সাধারণ Pie Chart তৈরি করা হবে। তারপরে, আমরা প্রতিটি সেকশনের Label এবং Color কাস্টমাইজ করব।

Step 1: Pie Chart তৈরি করা

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) {
        // Pie chart dataset তৈরি করা
        DefaultPieDataset dataset = new DefaultPieDataset();
        dataset.setValue("Category 1", 40);
        dataset.setValue("Category 2", 30);
        dataset.setValue("Category 3", 20);
        dataset.setValue("Category 4", 10);

        // Pie chart তৈরি করা
        JFreeChart pieChart = ChartFactory.createPieChart(
                "Pie Chart Example",    // Chart title
                dataset,               // Dataset
                true,                  // Include legend
                true                   // Tooltips enabled
        );

        // ChartPanel তৈরি করা এবং সেট করা
        ChartPanel chartPanel = new ChartPanel(pieChart);
        chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));

        // JFrame তৈরি করে chart panel যোগ করা
        JFrame frame = new JFrame("JFreeChart Pie Chart Example");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এই কোডে আমরা একটি সাধারণ Pie Chart তৈরি করেছি যেখানে DefaultPieDataset ব্যবহার করা হয়েছে। প্রতিটি সেকশনের জন্য ভ্যালু নির্ধারণ করা হয়েছে এবং একটি Pie Chart তৈরি করা হয়েছে।


2. Pie Chart এর অংশসমূহের Label কাস্টমাইজ করা

Pie Chart এর প্রতিটি অংশের জন্য লেবেল (Label) কাস্টমাইজ করার জন্য, আমরা PiePlot ব্যবহার করি, যা Pie Chart এর প্লট তৈরি করে এবং সেই প্লটের লেবেল কাস্টমাইজ করতে সাহায্য করে।

Step 2: Pie Chart এর লেবেল কাস্টমাইজ করা

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.chart.labels.PieSectionLabelGenerator;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.chart.labels.StandardPieSectionLabelGenerator;
import javax.swing.*;

public class PieChartExample {
    public static void main(String[] args) {
        // Pie chart dataset তৈরি করা
        DefaultPieDataset dataset = new DefaultPieDataset();
        dataset.setValue("Category 1", 40);
        dataset.setValue("Category 2", 30);
        dataset.setValue("Category 3", 20);
        dataset.setValue("Category 4", 10);

        // Pie chart তৈরি করা
        JFreeChart pieChart = ChartFactory.createPieChart(
                "Pie Chart Example",    // Chart title
                dataset,               // Dataset
                true,                  // Include legend
                true                   // Tooltips enabled
        );

        // PiePlot ব্যবহার করে লেবেল কাস্টমাইজ করা
        PiePlot plot = (PiePlot) pieChart.getPlot();
        PieSectionLabelGenerator labelGenerator = new StandardPieSectionLabelGenerator(
                "{0} = {1} ({2})"
        );
        plot.setLabelGenerator(labelGenerator);  // লেবেল ফরম্যাট কাস্টমাইজ করা

        // ChartPanel তৈরি করা এবং সেট করা
        ChartPanel chartPanel = new ChartPanel(pieChart);
        chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));

        // JFrame তৈরি করে chart panel যোগ করা
        JFrame frame = new JFrame("JFreeChart Pie Chart Example");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এখানে, আমরা StandardPieSectionLabelGenerator ব্যবহার করেছি, যা লেবেলের ফরম্যাট কাস্টমাইজ করতে সহায়তা করে। {0}, {1}, {2} এর মাধ্যমে আপনি সেকশনের নাম, মান এবং শতাংশ প্রদর্শন করতে পারেন।


3. Pie Chart এর অংশসমূহের Color কাস্টমাইজ করা

JFreeChart এ Pie Chart এর প্রতিটি অংশের রঙ কাস্টমাইজ করার জন্য, PiePlot এর setSectionPaint() মেথড ব্যবহার করা হয়। এটি দিয়ে আপনি নির্দিষ্ট সেকশনের রঙ পরিবর্তন করতে পারেন।

Step 3: Pie Chart এর রঙ কাস্টমাইজ করা

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.data.general.DefaultPieDataset;
import java.awt.Color;
import javax.swing.*;

public class PieChartExample {
    public static void main(String[] args) {
        // Pie chart dataset তৈরি করা
        DefaultPieDataset dataset = new DefaultPieDataset();
        dataset.setValue("Category 1", 40);
        dataset.setValue("Category 2", 30);
        dataset.setValue("Category 3", 20);
        dataset.setValue("Category 4", 10);

        // Pie chart তৈরি করা
        JFreeChart pieChart = ChartFactory.createPieChart(
                "Pie Chart Example",    // Chart title
                dataset,               // Dataset
                true,                  // Include legend
                true                   // Tooltips enabled
        );

        // PiePlot ব্যবহার করে লেবেল এবং রঙ কাস্টমাইজ করা
        PiePlot plot = (PiePlot) pieChart.getPlot();
        plot.setSectionPaint("Category 1", Color.RED);    // Category 1 এর রঙ কাস্টমাইজ করা
        plot.setSectionPaint("Category 2", Color.BLUE);   // Category 2 এর রঙ কাস্টমাইজ করা
        plot.setSectionPaint("Category 3", Color.GREEN);  // Category 3 এর রঙ কাস্টমাইজ করা
        plot.setSectionPaint("Category 4", Color.ORANGE); // Category 4 এর রঙ কাস্টমাইজ করা

        // ChartPanel তৈরি করা এবং সেট করা
        ChartPanel chartPanel = new ChartPanel(pieChart);
        chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));

        // JFrame তৈরি করে chart panel যোগ করা
        JFrame frame = new JFrame("JFreeChart Pie Chart Example");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(chartPanel);
        frame.pack();
        frame.setVisible(true);
    }
}

এখানে, setSectionPaint() মেথড ব্যবহার করে প্রতিটি সেকশনের জন্য আলাদা রঙ সেট করা হয়েছে। আপনি আপনার প্রয়োজন অনুযায়ী রঙ পরিবর্তন করতে পারেন (যেমন: Color.RED, Color.BLUE, ইত্যাদি)।


4. সারাংশ

JFreeChart ব্যবহার করে Pie Chart এর অংশগুলোর Label এবং Color কাস্টমাইজ করা সহজ। আপনি PiePlot ক্লাসের মাধ্যমে লেবেল ফরম্যাট এবং রঙ কাস্টমাইজ করতে পারেন। এর মাধ্যমে আপনি বিভিন্ন সেকশনের জন্য পৃথক লেবেল এবং রঙ তৈরি করতে পারেন যা ব্যবহারকারীর জন্য আরও আকর্ষণীয় এবং পাঠযোগ্য হবে।

  • Label কাস্টমাইজেশন: লেবেলগুলিকে কাস্টম ফরম্যাটে উপস্থাপন করার জন্য StandardPieSectionLabelGenerator ব্যবহার করা হয়।
  • Color কাস্টমাইজেশন: প্রতিটি সেকশনের জন্য রঙ পরিবর্তন করতে setSectionPaint() মেথড ব্যবহার করা হয়।

এই কাস্টমাইজেশনগুলির মাধ্যমে, আপনি আপনার Pie Chart গুলিকে আরও ব্যবহারকারী বান্ধব এবং আকর্ষণীয় করে তুলতে পারবেন।

Content added By
Promotion

Are you sure to start over?

Loading...