Perpustakaan Node.js Percuma untuk Mencipta Pelbagai Carta Excel
Perpustakaan Node.js Sumber Terbuka Teratas untuk Menjana Carta Mudah dan Lanjutan dalam Lembaran Kerja Excel. Ia Mencipta Pelbagai Carta dalam Satu Fail, Carta untuk Muat Turun Web & Carta daripada Templat dalam Node.js.
Apa itu XLSX-Chart?
Jika anda bekerja dalam Node.js dan perlu menjana fail Excel dengan carta tersemat, pakej sumber terbuka XLSX-Chart adalah pilihan yang sangat baik untuk dipertimbangkan. Banyak perpustakaan membenarkan anda menjana Lembaran Kerja Excel, menetapkan nilai sel, dll., tetapi lebih sedikit yang menyokong carta/graf tersemat dalam XLSX. XLSX-Chart mengisi jurang itu. API agak jelas — anda menentukan jenis carta, tajuk, medan, data, dan kemudian menulis fail. Ia menyokong beberapa jenis (lajur, bar, garisan, kawasan, radar, penyebaran, pai) supaya anda dapat memilih yang paling sesuai dengan data anda. Jika anda memerlukan kawalan lebih (susun atur, gaya), anda boleh menyediakan templat Excel anda sendiri untuk asas penjanaan carta.
XLSX-Chart ialah pakej Node.js ringan yang dibangunkan oleh Dmitriy Samortsev yang membolehkan pembangun perisian mencipta carta Excel secara programatik dalam aplikasi Node.js. Ia memberikan kaedah untuk menulis terus ke fail atau menjana data binari (untuk muat turun melalui HTTP) yang berguna dalam aplikasi web. Perpustakaan ini menyederhanakan kerumitan bekerja dengan format Open XML Excel, menyediakan API intuitif untuk menjana pelbagai jenis carta. Sama ada anda membina papan pemuka kecerdasan perniagaan, sistem laporan automatik, atau alat analisis data, XLSX-Chart menawarkan penyelesaian langsung untuk penjanaan carta Excel. API-nya yang intuitif, sokongan untuk pelbagai jenis carta, dan pilihan output yang fleksibel menjadikannya pilihan yang sangat baik untuk pembangun yang membina sistem laporan, alat kecerdasan perniagaan atau aplikasi visualisasi data.
Bermula dengan XLSX-Chart
Untuk memasang XLSX-Chart, anda boleh menggunakan npm, pengurus pakej untuk JavaScript. Sila gunakan arahan berikut untuk pemasangan yang berjaya.
Pasang XLSX-Chart via npm
npm install xlsx-chartAnda boleh muat turun pustaka perkongsian yang disusun dari repositori GitHub dan memasangnya.
Mencipta Carta Kolum Ringkas dalam Node.js
Pustaka sumber terbuka XLSX-Chart telah menyertakan sokongan lengkap untuk membuat carta mudah dan lanjutan dalam helaian kerja Excel dalam aplikasi Node.js. Contoh kod berikut mencipta carta lajur yang membandingkan jualan suku tahun di empat produk. Susunan tajuk mewakili siri data (suku tahunan), manakala medan mewakili kategori (produk). Objek data mengandungi nilai sebenar bagi setiap kombinasi.
Bagaimana Membuat Carta Excel Ringkas yang Menunjukkan Jualan Suku Tahun dalam Node.js?
var XLSXChart = require("xlsx-chart");
var xlsxChart = new XLSXChart();
var opts = {
file: "sales-report.xlsx",
chart: "column",
titles: [
"Q1 Sales",
"Q2 Sales",
"Q3 Sales"
],
fields: [
"Product A",
"Product B",
"Product C",
"Product D"
],
data: {
"Q1 Sales": {
"Product A": 5,
"Product B": 10,
"Product C": 15,
"Product D": 20
},
"Q2 Sales": {
"Product A": 10,
"Product B": 5,
"Product C": 20,
"Product D": 15
},
"Q3 Sales": {
"Product A": 20,
"Product B": 15,
"Product C": 10,
"Product D": 5
}
}
};
xlsxChart.writeFile(opts, function(err) {
if (err) {
console.error("Error generating chart:", err);
} else {
console.log("Chart created successfully:", opts.file);
}
});
Cipta Pelbagai Carta dalam Satu Fail dalam Node.js
Salah satu ciri kuat XLSX-Chart ialah menjana banyak carta dalam satu buku kerja dalam aplikasi Node.js. Pustaka ini membolehkan pembangun perisian menghasilkan carta dengan nilai tersuai dan pelbagai visualisasi. Contoh kod berikut menunjukkan cara pembangun boleh membuat laporan komprehensif dengan tiga jenis carta yang berbeza. Susunan carta membolehkan anda mendefinisikan pelbagai visualisasi, masing-masing dengan konfigurasi mereka. Properti chartTitle memberikan setiap carta nama deskriptif. Ini sangat berguna untuk papan pemuka eksekutif atau laporan analisis terperinci.
Bagaimana Membuat Pelbagai Carta dalam Satu Fail dalam Aplikasi Node.js?
let fs = require("fs");
let XLSXChart = require("xlsx-chart");
let xlsxChart = new XLSXChart();
let opts = {
charts: [{
chart: "column",
titles: ["2023", "2024"],
fields: ["Jan", "Feb", "Mar", "Apr"],
data: {
"2023": {
"Jan": 100,
"Feb": 120,
"Mar": 140,
"Apr": 130
},
"2024": {
"Jan": 110,
"Feb": 135,
"Mar": 150,
"Apr": 145
}
},
chartTitle: "Monthly Performance Comparison"
}, {
chart: "line",
titles: ["Website Traffic", "Mobile Traffic"],
fields: ["Week 1", "Week 2", "Week 3", "Week 4"],
data: {
"Website Traffic": {
"Week 1": 5000,
"Week 2": 5500,
"Week 3": 6000,
"Week 4": 6200
},
"Mobile Traffic": {
"Week 1": 3000,
"Week 2": 3500,
"Week 3": 4200,
"Week 4": 4800
}
},
chartTitle: "Traffic Analysis"
}, {
chart: "pie",
titles: ["Market Share"],
fields: ["Company A", "Company B", "Company C", "Others"],
data: {
"Market Share": {
"Company A": 35,
"Company B": 28,
"Company C": 22,
"Others": 15
}
},
chartTitle: "Market Distribution"
}]
};
xlsxChart.generate(opts, function(err, data) {
if (err) {
console.error("Error:", err);
return;
}
fs.writeFileSync("comprehensive-report.xlsx", data);
console.log("Multi-chart report created successfully!");
});
require('fs').writeFileSync('inventory.xlsx', report);
Menjana Carta untuk Muat Turun Web
Pustaka sumber terbuka XLSX-Chart memudahkan pembangun perisian menjana carta yang boleh dimuat turun dengan mudah melalui aplikasi web. Berikut ialah contoh kuat yang menunjukkan penjanaan carta bar dalam laluan Express.js. Kaedah generate memulangkan data carta sebagai penimbal, yang kemudian dihantar ke klien dengan tajuk yang sesuai untuk memuat turun. Pendekatan ini ideal untuk penjanaan laporan dinamik tanpa membuat fail sementara pada pelayan.
Bagaimana Membuat Carta Excel untuk Muat Turun Web dalam Node.js?
var XLSXChart = require("xlsx-chart");
var xlsxChart = new XLSXChart();
// Express.js route example
app.get('/download-report', function(req, res) {
var opts = {
chart: "bar",
titles: ["Revenue", "Expenses", "Profit"],
fields: ["January", "February", "March", "April"],
data: {
"Revenue": {
"January": 50000,
"February": 55000,
"March": 60000,
"April": 58000
},
"Expenses": {
"January": 30000,
"February": 32000,
"March": 35000,
"April": 33000
},
"Profit": {
"January": 20000,
"February": 23000,
"March": 25000,
"April": 25000
}
}
};
xlsxChart.generate(opts, function(err, data) {
if (err) {
return res.status(500).send("Error generating chart");
}
res.set({
"Content-Type": "application/vnd.ms-excel",
"Content-Disposition": "attachment; filename=financial-report.xlsx",
"Content-Length": data.length
});
res.status(200).send(data);
});
});
Gunakan Templat Tersuai untuk Mencipta Carta Excel
Untuk organisasi dengan keperluan penjenamaan khusus, templat tersuai menyediakan kawalan penuh untuk mencipta dan mengurus carta Excel. Pilihan templatePath menunjuk ke fail Excel yang pra-format. XLSX-Chart akan menggunakan templat ini sebagai asas, menerapkan data anda sambil mengekalkan format tersuai, warna, fon, dan susun atur. Perhatikan bahawa templat tersuai kini berfungsi paling baik dengan carta lajur. Kod berikut menunjukkan cara mencapainya.
Bagaimana Membuat Carta Excel melalui Templat Tersuai dalam Node.js?
var XLSXChart = require("xlsx-chart");
var xlsxChart = new XLSXChart();
var opts = {
file: "branded-report.xlsx",
chart: "column",
templatePath: __dirname + "/templates/company-template.xlsx",
titles: ["Sales Team A", "Sales Team B"],
fields: ["Q1", "Q2", "Q3", "Q4"],
data: {
"Sales Team A": {
"Q1": 45000,
"Q2": 52000,
"Q3": 58000,
"Q4": 61000
},
"Sales Team B": {
"Q1": 42000,
"Q2": 48000,
"Q3": 55000,
"Q4": 59000
}
}
};
xlsxChart.writeFile(opts, function(err) {
if (err) {
console.error("Template error:", err);
} else {
console.log("Branded report created!");
}
});