Bezpłatna biblioteka Node.js do tworzenia wielu wykresów Excel
Najlepsza biblioteka open source Node.js do generowania prostych i zaawansowanych wykresów w arkuszu Excel. Tworzy wiele wykresów w jednym pliku, wykresy do pobrania z sieci oraz wykresy z szablonu w Node.js.
Czym jest XLSX-Chart?
Jeśli pracujesz w Node.js i potrzebujesz generować pliki Excel z osadzonymi wykresami, pakiet open‑source XLSX-Chart jest bardzo dobrą opcją do rozważenia. Wiele bibliotek pozwala generować arkusze kalkulacyjne Excel, ustawiać wartości komórek itp., ale niewiele obsługuje wykresy/grafy osadzone w pliku XLSX. XLSX-Chart wypełnia tę lukę. API jest dość proste — określasz typ wykresu, tytuły, pola, dane, a następnie zapisujesz plik. Obsługuje kilka typów (kolumna, pasek, linia, obszar, radar, wykres rozrzutu, kołowy), więc możesz wybrać ten, który najlepiej pasuje do Twoich danych. Jeśli potrzebujesz większej kontroli (układ, style), możesz podać własny szablon Excel jako bazę generowania wykresu.
XLSX-Chart to lekka paczka Node.js opracowana przez Dmitriya Samortseva, która umożliwia programistom tworzenie wykresów Excel w sposób programowy w aplikacjach Node.js. Dostarcza metod do bezpośredniego zapisywania do pliku lub generowania danych binarnych (do pobrania przez HTTP), co jest przydatne w aplikacjach internetowych. Biblioteka ukrywa złożoność pracy z formatem Open XML Excela, oferując intuicyjne API do generowania różnych typów wykresów. Niezależnie od tego, czy tworzysz pulpity nawigacyjne Business Intelligence, zautomatyzowane systemy raportowania, czy narzędzia analizy danych, XLSX-Chart oferuje proste rozwiązanie do generowania wykresów Excel. Jego intuicyjne API, wsparcie wielu typów wykresów i elastyczne opcje wyjścia czynią go doskonałym wyborem dla deweloperów budujących systemy raportowania, narzędzia Business Intelligence lub aplikacje wizualizacji danych.
Rozpoczęcie pracy z XLSX-Chart
Aby zainstalować XLSX-Chart, możesz użyć npm, menedżera pakietów dla JavaScript. Proszę użyć poniższych poleceń, aby instalacja przebiegła pomyślnie.
Zainstaluj XLSX-Chart przez npm
npm install xlsx-chartMożesz pobrać skompilowaną bibliotekę współdzieloną z repozytorium GitHub i ją zainstalować.
Tworzenie prostego wykresu kolumnowego w Node.js
Biblioteka open source XLSX-Chart zawiera pełne wsparcie do tworzenia prostych i zaawansowanych wykresów w arkuszach Excel w aplikacjach Node.js. Następujący przykład kodu tworzy wykres kolumnowy porównujący kwartalne wyniki sprzedaży czterech produktów. Tablica tytułów reprezentuje serie danych (kwartały), natomiast pola reprezentują kategorie (produkty). Obiekt danych zawiera rzeczywiste wartości dla każdej kombinacji.
Jak stworzyć prosty wykres Excel pokazujący sprzedaż kwartalną w 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);
}
});
Tworzenie wielu wykresów w jednym pliku w Node.js
Jedną z potężnych funkcji XLSX-Chart jest generowanie wielu wykresów w jednym skoroszycie w aplikacjach Node.js. Biblioteka umożliwia programistom tworzenie wykresów z własnymi wartościami i wieloma wizualizacjami. Następujący przykład kodu pokazuje, jak programiści mogą stworzyć kompleksowy raport z trzema różnymi typami wykresów. Tablica wykresów pozwala zdefiniować wiele wizualizacji, z każdą własną konfiguracją. Właściwość chartTitle nadaje każdemu wykresowi opisową nazwę. Jest to szczególnie przydatne w panelach menedżerskich lub szczegółowych raportach analitycznych.
Jak stworzyć wiele wykresów w jednym pliku w aplikacjach 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);
Generowanie wykresów do pobrania w sieci
Biblioteka open source XLSX-Chart ułatwia programistom generowanie wykresów, które można łatwo pobrać za pośrednictwem aplikacji internetowej. Oto potężny przykład demonstrujący generowanie wykresu słupkowego w ramach trasy Express.js. Metoda generate zwraca dane wykresu jako bufor, który jest następnie wysyłany do klienta z odpowiednimi nagłówkami do pobrania. Takie podejście jest idealne do dynamicznego generowania raportów bez tworzenia tymczasowych plików na serwerze.
Jak stworzyć wykresy Excel do pobierania z sieci w 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);
});
});
Użycie własnych szablonów do tworzenia wykresów Excel
For organizations with specific branding requirements, custom templates provide complete control for creating and managing Excel charts. The templatePath option points to a pre-formatted Excel file. XLSX-Chart will use this template as the foundation, applying your data while preserving custom formatting, colors, fonts, and layouts. Note that custom templates currently work best with column charts. The following code demonstrates how to achieve it.
Jak stworzyć wykresy Excel przy użyciu szablonów niestandardowych w 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!");
}
});