1. Produkter
  2.   Regneark
  3.   Node.js
  4.   XLSX-Chart
 
  

Gratis Node.js-bibliotek til at oprette flere Excel-diagrammer

Top open source Node.js-bibliotek til at generere simple og avancerede diagrammer i et Excel-regneark. Det opretter flere diagrammer i én fil, diagrammer til web-downloads og diagrammer fra en skabelon i Node.js.

Hvad er XLSX-Chart?

Hvis du arbejder i Node.js og har brug for at generere Excel-filer med indlejrede diagrammer, er den open‑source pakke XLSX-Chart et meget godt alternativ at overveje. Mange biblioteker giver dig mulighed for at generere Excel‑regneark, sætte celleværdier osv., men færre understøtter diagrammer/grafer indlejret i XLSX. XLSX-Chart udfylder dette hul. API‑et er temmelig ligetil — du angiver diagramtype, titler, felter, data og skriver derefter filen. Det understøtter flere typer (søjle, søjle‑stak, linje, område, radar, spredning, cirkel), så du kan vælge den, der passer bedst til dine data. Hvis du har brug for mere kontrol (layout, stilarter), kan du levere din egen Excel‑skabelon, som diagramgenereringen skal baseres på.

XLSX-Chart er en letvægts Node.js-pakke udviklet af Dmitriy Samortsev, som gør det muligt for softwareudviklere at oprette Excel-diagrammer programmatisk i Node.js‑apps. Den giver dig metoder til at skrive direkte til en fil eller generere binære data (til download via HTTP), hvilket er praktisk i webapplikationer. Biblioteket abstraherer kompleksiteten ved at arbejde med Excels Open XML-format og leverer et intuitivt API til at generere forskellige diagramtyper. Uanset om du bygger business intelligence‑dashboard, automatiserede rapporteringssystemer eller dataanalyseværktøjer, tilbyder XLSX-Chart en ligetil løsning til generering af Excel-diagrammer. Dets intuitive API, understøttelse af flere diagramtyper og fleksible outputmuligheder gør det til et fremragende valg for udviklere, der bygger rapporteringssystemer, business intelligence‑værktøjer eller data‑visualiseringsapplikationer.

Previous Next

Kom i gang med XLSX-Chart

For at installere XLSX-Chart kan du bruge npm, JavaScripts pakkehåndtering. Brug venligst følgende kommandoer for en vellykket installation.

Installer XLSX-Chart via npm

npm install xlsx-chart

Du kan downloade det kompilerede delte bibliotek fra GitHub-repositoriet og installere det.

Oprettelse af et simpelt søjlediagram i Node.js

Det open source XLSX-Chart-bibliotek har inkluderet fuld støtte til at oprette simple og avancerede diagrammer i et Excel‑regneark i Node.js‑applikationer. Følgende kodeeksempel opretter et søjlediagram, der sammenligner kvartalsvise salg på tværs af fire produkter. Titellisten repræsenterer dataserierne (kvartaler), mens felterne repræsenterer kategorierne (produkter). Data‑objektet indeholder de faktiske værdier for hver kombination.

Hvordan opretter man et enkelt Excel-diagram, der viser kvartalsvis salg i 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);
    }
});

Opret flere diagrammer i én fil i Node.js

En af XLSX-Charts kraftfulde funktioner er at generere flere diagrammer i én projektmappe i Node.js‑applikationer. Biblioteket gør det muligt for softwareudviklere at oprette diagrammer med brugerdefinerede værdier og flere visualiseringer. Følgende kodeeksempel viser, hvordan udviklere kan oprette en omfattende rapport med tre forskellige diagramtyper. Diagram‑arrayet giver dig mulighed for at definere flere visualiseringer, hver med sin egen konfiguration. chartTitle‑egenskaben giver hvert diagram et beskrivende navn. Dette er især nyttigt til ledelses‑dashboards eller detaljerede analytiske rapporter.

Hvordan opretter man flere diagrammer i én fil i Node.js-apps?

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);

Generering af diagrammer til web-downloads

Det open source XLSX-Chart-bibliotek gør det let for softwareudviklere at generere diagrammer, som nemt kan downloades via en web‑applikation. Her er et kraftfuldt eksempel, der demonstrerer oprettelse af et søjlediagram inden for en Express.js‑rute. generate‑metoden returnerer diagram‑dataene som en buffer, som derefter sendes til klienten med de rette headers for download. Denne tilgang er ideel til dynamisk rapportgenerering uden at oprette midlertidige filer på serveren.

Hvordan opretter man Excel-diagrammer til web-downloads i 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);
    });
});

Brug brugerdefinerede skabeloner til at oprette Excel-diagrammer

For organisationer med specifikke branding‑krav giver brugerdefinerede skabeloner fuld kontrol over oprettelse og håndtering af Excel‑diagrammer. templatePath‑optionen peger på en forudformatteret Excel‑fil. XLSX-Chart vil bruge denne skabelon som grundlag og anvende dine data, mens den bevarer brugerdefineret formatering, farver, skrifttyper og layout. Bemærk, at brugerdefinerede skabeloner i øjeblikket fungerer bedst med søjlediagrammer. Følgende kode demonstrerer, hvordan man opnår dette.

Hvordan opretter man Excel-diagrammer via brugerdefinerede skabeloner i 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!");
    }
});

 Dansk