Project

PSWriteOffice

PowerShell document automation across OfficeIMO's document, spreadsheet, presentation, PDF, Project, Access, EPUB, invoicing, and conversion engines.

Stars 654
Forks 82
Open issues 1
Total downloads 4,320,051
Release OfficeIMO-v3.5.3
Language: C# Updated: 2026-11-03
Cmdlet

Add-OfficeWordChart

Aliases: WordChart
Module
PSWriteOffice
Aliases
WordChart
Inputs
OfficeIMO.Word.WordDocument OfficeIMO.Word.WordParagraph
Outputs
OfficeIMO.Word.WordChart

Adds a chart to a Word document.

Syntax

Add-OfficeWordChart
-CategoryProperty <String>
[-FitToPageWidth]
[-HeightPixels <Int32>]
-InputObject <Object[]>
[-Legend]
[-LegendPosition <Bottom|TopRight|Left|Right|Top>]
[-PassThru]
[-SeriesColor <String[]>]
-SeriesProperty <String[]>
[-Title <String>]
[-Type <Pie|Bar|Line|Area>]
[-WidthFraction <Double>]
[-WidthPixels <Int32>]
[-XAxisTitle <String>]
[-YAxisTitle <String>]
[<CommonParameters>]
#
Parameter set: Context
Add-OfficeWordChart
-CategoryProperty <String>
[-Document <WordDocument>]
[-FitToPageWidth]
[-HeightPixels <Int32>]
-InputObject <Object[]>
[-Legend]
[-LegendPosition <Bottom|TopRight|Left|Right|Top>]
[-PassThru]
[-SeriesColor <String[]>]
-SeriesProperty <String[]>
[-Title <String>]
[-Type <Pie|Bar|Line|Area>]
[-WidthFraction <Double>]
[-WidthPixels <Int32>]
[-XAxisTitle <String>]
[-YAxisTitle <String>]
[<CommonParameters>]
#
Parameter set: Document
Add-OfficeWordChart
-CategoryProperty <String>
[-FitToPageWidth]
[-HeightPixels <Int32>]
-InputObject <Object[]>
[-Legend]
[-LegendPosition <Bottom|TopRight|Left|Right|Top>]
[-Paragraph <WordParagraph>]
[-PassThru]
[-SeriesColor <String[]>]
-SeriesProperty <String[]>
[-Title <String>]
[-Type <Pie|Bar|Line|Area>]
[-WidthFraction <Double>]
[-WidthPixels <Int32>]
[-XAxisTitle <String>]
[-YAxisTitle <String>]
[<CommonParameters>]
#
Parameter set: Paragraph

Description

Creates a Word chart from object data using one category property and one or more numeric series properties.

Examples

Add pie and line charts to a report.

$rows = @(
    [pscustomobject]@{ Region = 'North America'; Revenue = 125000; Profit = 42000 }
    [pscustomobject]@{ Region = 'EMEA'; Revenue = 98000; Profit = 31000 }
    [pscustomobject]@{ Region = 'APAC'; Revenue = 143000; Profit = 52000 }
)
New-OfficeWord -Path .\RegionalReport.docx {
    Add-OfficeWordParagraph -Text 'Regional revenue'
    Add-OfficeWordChart -Type Pie -InputObject $rows -CategoryProperty Region -SeriesProperty Revenue -Title 'Revenue mix' -FitToPageWidth -WidthFraction 0.75
    Add-OfficeWordChart -Type Bar -InputObject $rows -CategoryProperty Region -SeriesProperty Revenue, Profit -Legend -XAxisTitle 'Region' -YAxisTitle 'Amount'
}

Creates a report with a pie chart and a multi-series bar chart from PowerShell objects.

Add a line chart to an open document.

$trend = @(
    [pscustomobject]@{ Month = 'Jan'; Sales = 10; Profit = 4 }
    [pscustomobject]@{ Month = 'Feb'; Sales = 12; Profit = 5 }
    [pscustomobject]@{ Month = 'Mar'; Sales = 15; Profit = 7 }
)
$doc = New-OfficeWord -Path .\Trend.docx -NoSave
Add-OfficeWordChart -Document $doc -Type Line -InputObject $trend -CategoryProperty Month -SeriesProperty Sales, Profit -Legend -Title 'Quarter trend'
Save-OfficeWord -Document $doc

Creates a multi-series line chart on the document and shows a legend.

Parameters

-CategoryProperty String required
Property name used for category labels.
-FitToPageWidth SwitchParameter optional
Scale the chart width to the page content width.
-HeightPixels Int32 optional
Chart height in pixels.
-InputObject Object[] requiredaliases: Data
Source objects used to build chart data.
-Legend SwitchParameter optional
Add a legend to the chart.
-LegendPosition OfficeChartLegendPosition optional
Legend position when -Legend is used.
Possible values: Bottom, TopRight, Left, Right, Top
-PassThru SwitchParameter optional
Emit the created chart.
-SeriesColor String[] optional
Color values applied to the series in order.
-SeriesProperty String[] required
Property names used as numeric series.
-Title String optional
Optional chart title.
-Type WordChartType optional
Chart type to create.
Possible values: Pie, Bar, Line, Area
-WidthFraction Double optional
Fraction of the page content width to use when -FitToPageWidth is specified.
-WidthPixels Int32 optional
Chart width in pixels.
-XAxisTitle String optional
Optional X axis title for non-pie charts.
-YAxisTitle String optional
Optional Y axis title for non-pie charts.
-Document WordDocument optionalpipeline: True (ByValue)sets: Document
Target document that will receive the chart.
-Paragraph WordParagraph optionalpipeline: True (ByValue)sets: Paragraph
Target paragraph used as the chart anchor.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.