গ্রাফের স্টাইল এবং কালার কাস্টমাইজেশন

Java Technologies - অ্যাপাচি পিওআই (পাওয়ারপয়েন্ট) গ্রাফ (Charts) ম্যানিপুলেশন |
142
142

অ্যাপাচি পিওআই (Apache POI) মডিউলটি PowerPoint ফাইল (.pptx এবং .ppt) ফরম্যাটে গ্রাফের স্টাইল এবং কালার কাস্টমাইজেশন করার জন্য ব্যবহৃত হতে পারে। আপনি যদি PowerPoint স্লাইডে গ্রাফ বা চার্ট যুক্ত করতে চান, তবে XSLF (নতুন .pptx) মডিউলটি ব্যবহারের মাধ্যমে সহজেই বিভিন্ন গ্রাফের ধরন এবং তাদের স্টাইল কাস্টমাইজ করা সম্ভব।

এই গাইডে, আমরা দেখবো কিভাবে Apache POI ব্যবহার করে PowerPoint স্লাইডে গ্রাফ যুক্ত করা এবং তার স্টাইল ও কালার কাস্টমাইজ করা যায়।

১. XSLF (PowerPoint .pptx ফাইল) ফরম্যাটে গ্রাফ কাস্টমাইজেশন

১.১ Maven ডিপেনডেন্সি

আপনার Maven প্রোজেক্টে Apache POI এর poi-ooxml ডিপেনডেন্সি যোগ করুন:

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>5.2.3</version> <!-- NiFi ব্যবহারকারীর নির্দিষ্ট ভার্সন চেক করুন -->
</dependency>

১.২ গ্রাফের ধরন তৈরি এবং স্টাইল কাস্টমাইজেশন

Apache POI দিয়ে আপনি বেশ কিছু ধরনের গ্রাফ যেমন বার চার্ট (Bar Chart), পাই চার্ট (Pie Chart), লাইন চার্ট (Line Chart) ইত্যাদি তৈরি করতে পারেন। এখানে একটি বার চার্টের উদাহরণ দেওয়া হল যেখানে স্টাইল এবং কালার কাস্টমাইজ করা হয়েছে।

import org.apache.poi.xslf.usermodel.*;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFRichTextString;

import java.io.FileOutputStream;
import java.io.IOException;
import java.awt.Color;

public class PowerPointChartCustomization {
    public static void main(String[] args) throws IOException {
        // নতুন PowerPoint প্রেজেন্টেশন তৈরি
        XMLSlideShow ppt = new XMLSlideShow();

        // স্লাইড তৈরি
        XSLFSlide slide = ppt.createSlide();

        // একটি চার্ট তৈরি করা
        XSLFChart chart = slide.createChart();
        chart.setAnchor(new java.awt.Rectangle(100, 100, 500, 300));

        // চার্টের ডেটা সেট করা
        XSLFChartData data = chart.getChartData();
        XSLFChartData.Series series = data.addSeries();
        series.addPoint(10);
        series.addPoint(20);
        series.addPoint(30);
        series.addPoint(40);

        // গ্রাফের স্টাইল কাস্টমাইজেশন
        chart.setTitle("Sample Bar Chart");
        chart.setChartType(XSLFChart.ChartType.BAR);

        // বার চার্টের জন্য কালার কাস্টমাইজেশন
        series.setFillColor(Color.BLUE); // বার গুলোর রঙ

        // এক্সিস স্টাইল কাস্টমাইজেশন
        chart.getAxis(AxisPosition.BOTTOM).setTickMarkType(XSLFChart.AXIS_TICK_MARK.CROSS); // এক্সিসের টিক মার্কস কাস্টমাইজ
        chart.getAxis(AxisPosition.LEFT).setTickMarkType(XSLFChart.AXIS_TICK_MARK.NONE);

        // চার্টের লিজেন্ড স্টাইল কাস্টমাইজ
        chart.getLegend().setVisible(true);
        chart.getLegend().setPosition(XSLFChart.LegendPosition.BOTTOM);

        // ফাইল আউটপুট
        try (FileOutputStream out = new FileOutputStream("chart_customization.pptx")) {
            ppt.write(out);
        }

        System.out.println("PowerPoint ফাইল তৈরি হয়েছে এবং গ্রাফের স্টাইল কাস্টমাইজ করা হয়েছে!");
    }
}

১.৩ গ্রাফের স্টাইল এবং কালার কাস্টমাইজেশন

  • Chart Type: আপনি বিভিন্ন ধরনের চার্ট যেমন BAR, LINE, PIE, AREA ইত্যাদি ব্যবহার করতে পারেন।
  • Color Customization: উপরের কোডে series.setFillColor(Color.BLUE) দিয়ে বার চার্টের বারগুলোর রঙ পরিবর্তন করা হয়েছে। এখানে যেকোনো রঙ ব্যবহার করা যেতে পারে যেমন Color.RED, Color.GREEN, ইত্যাদি।
  • Title: চার্টের শিরোনাম chart.setTitle("Sample Bar Chart") দিয়ে সেট করা হয়েছে।
  • Axis: এক্সিসের টিক মার্ক টাইপ কাস্টমাইজ করার জন্য setTickMarkType() ব্যবহার করা হয়েছে।
  • Legend: লিজেন্ডের অবস্থান এবং দৃশ্যমানতা কাস্টমাইজ করা হয়েছে chart.getLegend().setPosition(XSLFChart.LegendPosition.BOTTOM)

২. পাই চার্ট বা অন্য কোনো চার্টের জন্য স্টাইল কাস্টমাইজেশন

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

XSLFChart pieChart = slide.createChart();
pieChart.setAnchor(new java.awt.Rectangle(100, 100, 500, 300));

// পিরামিডের জন্য ডেটা যুক্ত করা
XSLFChartData pieData = pieChart.getChartData();
XSLFChartData.Series pieSeries = pieData.addSeries();
pieSeries.addPoint(25);
pieSeries.addPoint(35);
pieSeries.addPoint(40);

// পিরামিডের কালার কাস্টমাইজেশন
pieSeries.setFillColor(Color.RED); // সেকশনের রঙ কাস্টমাইজ
pieSeries.setFillColor(Color.GREEN);

// চার্টের শিরোনাম সেট করা
pieChart.setTitle("Sample Pie Chart");

এখানে setFillColor() পদ্ধতি দিয়ে বিভিন্ন সেকশনের জন্য রঙ পরিবর্তন করা হয়েছে।


৩. Chart Customization এর আরও কিছু টিপস

  • Gridlines: গ্রিডলাইন অপশনও কাস্টমাইজ করা যায়। আপনি XSLFChart এর এক্সিস সেটিংস ব্যবহার করে গ্রিডলাইন পরিবর্তন করতে পারেন।
  • Fonts and Labels: গ্রাফের ফন্ট এবং লেবেল কাস্টমাইজ করার জন্য XSLFChartData.Series.setLabelFont() পদ্ধতি ব্যবহার করা যেতে পারে।
  • Legends: লিজেন্ডের স্টাইলের জন্য chart.getLegend().setVisible() পদ্ধতি ব্যবহার করা হয়। আপনি চাইলে লিজেন্ডকে কাস্টমাইজ করে তার অবস্থান, রঙ, আকার ইত্যাদি পরিবর্তন করতে পারেন।

সারাংশ

অ্যাপাচি পিওআই (Apache POI) ব্যবহার করে PowerPoint স্লাইডে গ্রাফ বা চার্টের স্টাইল এবং কালার কাস্টমাইজেশন করা সহজ। আপনি বিভিন্ন গ্রাফ টাইপ যেমন বার চার্ট, পাই চার্ট, লাইন চার্ট ইত্যাদি তৈরি করতে পারেন এবং তাদের বিভিন্ন বৈশিষ্ট্য যেমন রঙ, শিরোনাম, এক্সিস, লিজেন্ড ইত্যাদি কাস্টমাইজ করতে পারেন। XSLFChart এবং XSLFChartData.Series ক্লাসগুলির মাধ্যমে গ্রাফের প্রতিটি অংশকে কাস্টমাইজ করা সম্ভব।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion