We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback


Overview

The WPF 100% Stacked Area Chart shows the relative percentage of multiple data series in stacked areas. The cumulative proportion of each stacked area always totals 100%. The y-axis will always be rendered with the range 0–100. It supports zooming, scrolling, tooltip, trackball, and selection.

WPF 100 Percentage Stacked Area Chart documentation

WPF 100 Percentage Stacked Area Chart


Key features

WPF Grouped Stacked Area Chart

Grouped stacked chart

Group a series with another series using the group name in a chart. Group the series with different stacking names separately.

WPF Vertical Stacked Area Chart

Vertical chart

Rotate the chart to plot data vertically and view it from a different perspective.

WPF Stacked Area Chart showing Empty Point aka Null Point

Empty/Null point chart

Empty or null data points are elegantly handled.

WPF Stacked Area Chart with Customized Border and Color

UI styling

Customize the color and border of the chart using the built-in APIs to make it visually unique.


Code example

<Window x:Class="ChartExample.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:ChartExample"
        xmlns:chart="clr-namespace:Syncfusion.UI.Xaml.Charts;assembly=Syncfusion.SfChart.WPF"
        mc:Ignorable="d"
        Title="WPF 100% Stacked Area Chart" Height="450" Width="700">
    
    <!--Setting DataContext-->
    <Window.DataContext>
        <local:ViewModel/>
    </Window.DataContext>
    
    <StackPanel>
        <chart:SfChart Height="300" Width="500">
         <!--Initialize the horizontal axis for the Chart-->
            <chart:SfChart.PrimaryAxis>
                <chart:DateTimeAxis LabelFormat="ddd" />
            </chart:SfChart.PrimaryAxis>
          
            <!--Initialize the vertical axis for the Chart-->
            <chart:SfChart.SecondaryAxis>
                <chart:NumericalAxis />
            </chart:SfChart.SecondaryAxis>

            <!--Adding 100% Stacked Area Chart to the Chart-->

            <chart:StackingArea100Series 
                ItemsSource="{Binding Accidents}"
                XBindingPath="Month"
                YBindingPath="Bus">
            </chart:StackingArea100Series>

            <chart:StackingArea100Series 
                ItemsSource="{Binding Accidents}"
                XBindingPath="Month"
                YBindingPath="Car">
            </chart:StackingArea100Series>

            <chart:StackingArea100Series 
                ItemsSource="{Binding Accidents}"
                XBindingPath="Month"
                YBindingPath="Truck">
            </chart:StackingArea100Series>
        </chart:SfChart>
    </StackPanel>
</Window>
public class StackingAreaChartModel
    {
        public DateTime Month { get; set; }
        public double Bus { get; set; }
        public double Car { get; set; }
        public double Truck { get; set; }
    }

public class ViewModel
{
    public ObservableCollection<StackingAreaChartModel> Accidents
        {
            get;
            set;
        }
       

    public ViewModel()
    {
          this.Accidents = new ObservableCollection<StackingAreaChartModel>();
            DateTime mth = new DateTime(2011, 1, 1);

            Accidents.Add(new StackingAreaChartModel() { Month = mth.AddMonths(6), Bus = 3, Car = 4, Truck = 5 });
            Accidents.Add(new StackingAreaChartModel() { Month = mth.AddMonths(7), Bus = 4, Car = 5, Truck = 6 });
            Accidents.Add(new StackingAreaChartModel() { Month = mth.AddMonths(8), Bus = 3, Car = 4, Truck = 5 });
            Accidents.Add(new StackingAreaChartModel() { Month = mth.AddMonths(9), Bus = 4, Car = 5, Truck = 6 });
            Accidents.Add(new StackingAreaChartModel() { Month = mth.AddMonths(10), Bus = 7, Car = 8, Truck = 7 });
            Accidents.Add(new StackingAreaChartModel() { Month = mth.AddMonths(11), Bus = 4, Car = 5, Truck = 6 });
            Accidents.Add(new StackingAreaChartModel() { Month = mth.AddMonths(12), Bus = 7, Car = 8, Truck = 7 });
            Accidents.Add(new StackingAreaChartModel() { Month = mth.AddMonths(13), Bus = 4, Car = 5, Truck = 6 });
    }
}

Learning resources

Navigate to the GitHub code used to configure the WPF stacked area chart.

GitHub code

The WPF 100% Stacked Area Chart configuration code is available in GitHub.

Navigate to the options available in the user guide to customize the WPF stacked area chart.

WPF 100% Stacked Area Chart User Guide

Learn more about the available options to customize WPF 100% Stacked Area Charts.

Navigate to the API reference documentation of the WPF complete stacked area chart.

WPF 100% Stacked Area Chart API references

Explore the WPF 100% Stacked Area Chart APIs.


100+ WPF CONTROLS

Scroll up icon

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

Live Chat Icon For mobile
Live Chat Icon