DOCX
Charts
Add bar, line, pie, area, and scatter charts to documents
Embed charts in documents using ChartCollection with chart type classes from @office-open/core.
Basic Bar Chart
import { Document, Packer, Paragraph, ChartCollection, BarChart } from "@office-open/docx";
const doc = new Document({
sections: [
{
children: [
new Paragraph({
children: [
new ChartCollection({
width: 500,
height: 300,
charts: [
new BarChart({
categories: ["Q1", "Q2", "Q3", "Q4"],
series: [{ name: "Sales", values: [10, 20, 15, 25] }],
}),
],
}),
],
}),
],
},
],
});
Multi-Series Chart
new BarChart({
categories: ["Q1", "Q2", "Q3", "Q4"],
series: [
{ name: "Product A", values: [10, 20, 15, 25] },
{ name: "Product B", values: [15, 10, 20, 30] },
],
});
Line Chart
import { LineChart } from "@office-open/docx";
new LineChart({
categories: ["Jan", "Feb", "Mar", "Apr", "May"],
series: [{ name: "Revenue", values: [100, 150, 200, 180, 250] }],
});
Pie Chart
import { PieChart } from "@office-open/docx";
new PieChart({
categories: ["Desktop", "Mobile", "Tablet"],
series: [{ name: "Traffic", values: [50, 35, 15] }],
});
Area Chart
import { AreaChart } from "@office-open/docx";
new AreaChart({
categories: ["Q1", "Q2", "Q3", "Q4"],
series: [{ name: "Revenue", values: [100, 200, 150, 250] }],
});
Scatter Chart
import { ScatterChart } from "@office-open/docx";
new ScatterChart({
series: [
{
name: "Dataset 1",
xValues: [1, 2, 3, 4, 5],
yValues: [2, 4, 1, 5, 3],
},
],
});