JasperReports একটি শক্তিশালী রিপোর্টিং টুল যা charts তৈরি করার জন্য JFreeChart লাইব্রেরি ব্যবহার করে। Charts রিপোর্টের মধ্যে গ্রাফিক্যাল উপস্থাপন তৈরি করতে ব্যবহৃত হয় এবং এটি ডেটার ভিজ্যুয়াল উপস্থাপন অনেক সহজ করে তোলে। JasperReports বিভিন্ন ধরনের charts তৈরি করার জন্য সমর্থন দেয়, যেমন Pie Chart, Bar Chart, এবং Line Chart।
এখানে, আমরা Pie Chart, Bar Chart, এবং Line Chart তৈরি করার প্রক্রিয়া এবং JasperReports Studio-এ এগুলো কিভাবে কনফিগার করা যায় তা আলোচনা করব।
1. Pie Chart তৈরি করা
Pie Chart একটি খুব জনপ্রিয় চার্ট যা ভাগফল বা শতাংশ হিসাবে ডেটা উপস্থাপন করতে ব্যবহৃত হয়।
Pie Chart তৈরি করার প্রক্রিয়া:
- Chart Element যুক্ত করা:
- JasperReports Studio-এ রিপোর্টে একটি Pie Chart যোগ করতে, আপনি chart ট্যাব থেকে Pie Chart নির্বাচন করুন।
- Dataset এবং Category নির্ধারণ:
- Pie Chart এর জন্য আপনাকে Dataset এবং Category সেট করতে হবে, যেখানে category থাকবে গ্রাফের বিভিন্ন অংশ, এবং value থাকবে প্রতিটি অংশের মান।
উদাহরণ: Pie Chart Report
JasperReports JRXML ফাইল (Pie Chart):
<chart>
<reportElement x="0" y="0" width="500" height="300"/>
<chartTitle>
<font fontName="Arial" size="14" isBold="true"/>
<textFieldExpression><![CDATA["Sales Distribution by Category"]]></textFieldExpression>
</chartTitle>
<categoryDataset>
<dataset>
<datasetRun subDataset="salesDataset"/>
</dataset>
</categoryDataset>
<categorySeries>
<categorySeriesDataset>
<seriesExpression><![CDATA[$F{category}]]></seriesExpression>
<valueExpression><![CDATA[$F{value}]]></valueExpression>
</categorySeriesDataset>
</categorySeries>
</chart>
Java Code for Pie Chart Report Generation:
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import java.util.*;
public class PieChartExample {
public static void main(String[] args) {
try {
// Create data for the Pie chart
List<Sales> salesList = new ArrayList<>();
salesList.add(new Sales("Electronics", 2000));
salesList.add(new Sales("Clothing", 1500));
salesList.add(new Sales("Books", 1000));
// Fill data into JRBeanCollectionDataSource
JRBeanCollectionDataSource jrDataSource = new JRBeanCollectionDataSource(salesList);
// Compile the report
JasperReport jasperReport = JasperCompileManager.compileReport("path/to/pie_chart_report.jrxml");
// Fill the report with data
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, jrDataSource);
// Export to PDF
JasperExportManager.exportReportToPdfFile(jasperPrint, "output/pie_chart_report.pdf");
} catch (JRException e) {
e.printStackTrace();
}
}
}
class Sales {
private String category;
private int value;
public Sales(String category, int value) {
this.category = category;
this.value = value;
}
public String getCategory() {
return category;
}
public int getValue() {
return value;
}
}
2. Bar Chart তৈরি করা
Bar Chart হল একটি সাধারণ চার্ট যা আড়াআড়ি বা উল্লম্ব বার ব্যবহার করে ডেটা উপস্থাপন করে। এটি তুলনামূলক ডেটা দেখানোর জন্য ব্যবহৃত হয়।
Bar Chart তৈরি করার প্রক্রিয়া:
- Bar Chart Element যুক্ত করা:
- JasperReports Studio-এ Bar Chart যুক্ত করতে, chart ট্যাব থেকে Bar Chart নির্বাচন করুন।
- Dataset এবং Category নির্ধারণ:
- Bar Chart এর জন্য Dataset সেট করতে হবে। এছাড়া, Category এবং Value নির্ধারণ করতে হবে।
উদাহরণ: Bar Chart Report
JasperReports JRXML ফাইল (Bar Chart):
<chart>
<reportElement x="0" y="0" width="500" height="300"/>
<chartTitle>
<font fontName="Arial" size="14" isBold="true"/>
<textFieldExpression><![CDATA["Monthly Sales by Region"]]></textFieldExpression>
</chartTitle>
<categoryDataset>
<dataset>
<datasetRun subDataset="salesDataset"/>
</dataset>
</categoryDataset>
<categorySeries>
<categorySeriesDataset>
<seriesExpression><![CDATA[$F{region}]]></seriesExpression>
<valueExpression><![CDATA[$F{sales}]]></valueExpression>
</categorySeriesDataset>
</categorySeries>
</chart>
Java Code for Bar Chart Report Generation:
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import java.util.*;
public class BarChartExample {
public static void main(String[] args) {
try {
// Create data for the Bar chart
List<Sales> salesList = new ArrayList<>();
salesList.add(new Sales("North", 1200));
salesList.add(new Sales("South", 1500));
salesList.add(new Sales("East", 1000));
// Fill data into JRBeanCollectionDataSource
JRBeanCollectionDataSource jrDataSource = new JRBeanCollectionDataSource(salesList);
// Compile the report
JasperReport jasperReport = JasperCompileManager.compileReport("path/to/bar_chart_report.jrxml");
// Fill the report with data
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, jrDataSource);
// Export to PDF
JasperExportManager.exportReportToPdfFile(jasperPrint, "output/bar_chart_report.pdf");
} catch (JRException e) {
e.printStackTrace();
}
}
}
3. Line Chart তৈরি করা
Line Chart সময়ের সাথে পরিবর্তন বা টেন্ডেন্সি দেখানোর জন্য ব্যবহৃত হয়। এটি একটি সোজা রেখা বা লাইন ব্যবহার করে বিভিন্ন ডেটা পয়েন্টের মধ্যে সম্পর্ক উপস্থাপন করে।
Line Chart তৈরি করার প্রক্রিয়া:
- Line Chart Element যুক্ত করা:
- JasperReports Studio-এ Line Chart যোগ করতে, chart ট্যাব থেকে Line Chart নির্বাচন করুন।
- Dataset এবং Category নির্ধারণ:
- Line Chart এর জন্য Dataset সেট করতে হবে এবং Category এবং Value নির্ধারণ করতে হবে।
উদাহরণ: Line Chart Report
JasperReports JRXML ফাইল (Line Chart):
<chart>
<reportElement x="0" y="0" width="500" height="300"/>
<chartTitle>
<font fontName="Arial" size="14" isBold="true"/>
<textFieldExpression><![CDATA["Yearly Sales Trend"]]></textFieldExpression>
</chartTitle>
<categoryDataset>
<dataset>
<datasetRun subDataset="salesDataset"/>
</dataset>
</categoryDataset>
<categorySeries>
<categorySeriesDataset>
<seriesExpression><![CDATA[$F{year}]]></seriesExpression>
<valueExpression><![CDATA[$F{sales}]]></valueExpression>
</categorySeriesDataset>
</categorySeries>
</chart>
Java Code for Line Chart Report Generation:
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import java.util.*;
public class LineChartExample {
public static void main(String[] args) {
try {
// Create data for the Line chart
List<Sales> salesList = new ArrayList<>();
salesList.add(new Sales("2018", 5000));
salesList.add(new Sales("2019", 6000));
salesList.add(new Sales("2020", 7000));
// Fill data into JRBeanCollectionDataSource
JRBeanCollectionDataSource jrDataSource = new JRBeanCollectionDataSource(salesList);
// Compile the report
JasperReport jasperReport = JasperCompileManager.compileReport("path/to/line_chart_report.jrxml");
// Fill the report with data
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, jrDataSource);
// Export to PDF
JasperExportManager.exportReportToPdfFile(jasperPrint, "output/line_chart_report.pdf");
} catch (JRException e) {
e.printStackTrace();
}
}
}
JasperReports দিয়ে Pie Chart, Bar Chart, এবং Line Chart তৈরি করার মাধ্যমে আপনি গ্রাফিক্যাল উপস্থাপনা সহজে করতে পারেন। এই চার্টগুলি রিপোর্টে গুরুত্বপূর্ণ data trends, comparisons, এবং distributions দেখাতে ব্যবহৃত হয়।
- Pie Chart সাধারণত শতাংশের ভিত্তিতে বিভাজিত ডেটা দেখাতে ব্যবহৃত হয়।
- Bar Chart তুলনামূলক ডেটা দেখানোর জন্য ব্যবহৃত হয়।
- Line Chart সময়ের সাথে পরিবর্তন বা প্রবণতা দেখানোর জন্য ব্যবহৃত হয়।
JasperReports Studio ব্যবহার করে আপনি সহজেই এই চার্টগুলি তৈরি করতে পারবেন, এবং Java Code দিয়ে রিপোর্টে ডেটা প্রেরণ ও এক্সপোর্ট করতে পারবেন।
Read more