1. produkty
  2.   Tabulka
  3.   Node.js
  4.   XLSX-Chart
 
  

Bezplatná Node.js knihovna pro vytvoření více Excel grafů

Top Open Source Node.js knihovna pro generování jednoduchých a pokročilých grafů v listu Excel. Vytváří více grafů v jednom souboru, grafy pro webové stažení a graf ze šablony v Node.js.

Co je XLSX-Chart?

Pokud pracujete v Node.js a potřebujete generovat Excel soubory s vloženými grafy, open‑source balíček XLSX-Chart je velmi dobrá volba. Mnoho knihoven vám umožní generovat listy Excel, nastavovat hodnoty buněk atd., ale jen málo z nich podporuje grafy/vizualizace vložené v souboru XLSX. XLSX-Chart tuto mezeru vyplňuje. API je poměrně jednoduché – zadáte typ grafu, názvy, pole, data a poté soubor zapíšete. Podporuje několik typů (sloupcový, pruhový, čárový, plošný, radarový, rozptylový, koláčový), takže si můžete vybrat ten, který nejlépe vyhovuje vašim datům. Pokud potřebujete větší kontrolu (rozvržení, styly), můžete poskytnout vlastní Excel šablonu, na jejímž základě se graf generuje.

XLSX-Chart je lehký Node.js balíček vyvinutý Dmitriy Samortsevem, který umožňuje vývojářům programově vytvářet Excel grafy v aplikacích Node.js. Poskytuje metody pro přímý zápis do souboru nebo generování binárních dat (pro stažení přes HTTP), což je užitečné ve webových aplikacích. Knihovna abstrahuje složitost práce s formátem Open XML Excelu a nabízí intuitivní API pro generování různých typů grafů. Ať už vytváříte dashboardy business intelligence, automatizované systémy reportování nebo nástroje pro analýzu dat, XLSX-Chart nabízí jednoduché řešení pro generování Excel grafů. Jeho intuitivní API, podpora více typů grafů a flexibilní výstupní možnosti z něj činí vynikající volbu pro vývojáře budujících systémy reportování, nástroje business intelligence nebo aplikace pro vizualizaci dat.

Previous Next

Začínáme s XLSX-Chart

Pro instalaci XLSX-Chart můžete použít npm, správce balíčků pro JavaScript. Použijte prosím následující příkazy pro úspěšnou instalaci.

Instalujte XLSX-Chart pomocí npm

npm install xlsx-chart

Můžete stáhnout zkompilovanou sdílenou knihovnu z repozitáře GitHub a nainstalovat ji.

Vytvoření jednoduchého sloupcového grafu v Node.js

Open source knihovna XLSX-Chart zahrnuje kompletní podporu pro vytváření jednoduchých i pokročilých grafů v listu Excel v rámci aplikací Node.js. Následující ukázkový kód vytváří sloupcový graf porovnávající čtvrtletní prodeje čtyř produktů. Pole titles představuje datové řady (čtvrtletí), zatímco fields představují kategorie (produkty). Objekt data obsahuje skutečné hodnoty pro každou kombinaci.

Jak vytvořit jednoduchý Excel graf zobrazující čtvrtletní prodeje v 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);
    }
});

Vytvoření více grafů v jednom souboru v Node.js

Jednou z výkonných funkcí XLSX-Chart je generování více grafů v jedné sešitu v aplikacích Node.js. Knihovna umožňuje vývojářům vytvářet grafy s vlastním nastavením a více vizualizacemi. Následující ukázkový kód ukazuje, jak mohou vývojáři vytvořit komplexní report se třemi různými typy grafů. Pole charts vám umožňuje definovat více vizualizací, každou s vlastní konfigurací. Vlastnost chartTitle dává každému grafu popisný název. To je zvláště užitečné pro výkonné dashboardy nebo podrobné analytické reporty.

Jak vytvořit více grafů v jednom souboru v aplikacích 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);

Generování grafů pro webové stažení

Open source knihovna XLSX-Chart usnadňuje vývojářům vytvářet grafy, které lze snadno stáhnout prostřednictvím webových aplikací. Zde je výkonný příklad, který ukazuje generování sloupcového grafu v rámci Express.js routy. Metoda generate vrací data grafu jako buffer, který je následně odeslán klientovi s vhodnými hlavičkami pro stažení. Tento přístup je ideální pro dynamické generování reportů bez vytváření dočasných souborů na serveru.

Jak vytvořit Excel grafy pro webové stažení v 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);
    });
});

Použití vlastních šablon k vytvoření Excel grafů

Pro organizace s konkrétními požadavky na brandování poskytují vlastní šablony úplnou kontrolu nad vytvářením a správou Excel grafů. Volba templatePath ukazuje na předformátovaný Excel soubor. XLSX-Chart použije tuto šablonu jako základ, aplikuje vaše data a zachová vlastní formátování, barvy, písma a rozvržení. Všimněte si, že vlastní šablony v současnosti fungují nejlépe u sloupcových grafů. Níže uvedený kód ukazuje, jak toho dosáhnout.

Jak vytvořit Excel grafy pomocí vlastních šablon v 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!");
    }
});

 Čeština