Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

JMHeartley/WPF-Chart-Controls

Open more actions menu
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

167 Commits
167 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📈 WPF Chart Controls 📊

A WPF control library for responsive column, line, and pie charts.

NuGet Version GitHub contributors GitHub last commit MIT License

🖥️ Demo

Kareem has a video demoing and explaining functionality or you can download and check out the charts in the Example project.

📊 2D Column Chart

Usage

  1. Import the namespace
xmlns:wpfChartControls="clr-namespace:WPFChartControls;assembly=WPFChartControls"
  1. Add chart
<wpfChartControls:_2DColumnChart />
  1. Bind data to Items property
    • using code-behind
    <wpfChartControls:_2DColumnChart x:Name="ColumnChart" />
    ColumnChart.Items = TestColumnItems.Case4;
    • using attribute binding
    <wpfChartControls:_2DColumnChart Items="{Binding Items}" />

Properties

  • Items - collection of ColumnItem items to be displayed in the chart
  • ColumnBrush - brush used for the ColumnItem items
  • Stroke - brush used to draw the axis and lines
  • StrokeThickness - thickness of the axis and lines
  • IntervalCount - number of intervals to be displayed on the Y-axis
  • InnerPadding - inner padding of the chart area

Related Objects

  • ColumnItem - an item in the column chart with a Header and Value
  • TestColumnItems - provides test case collections of ColumnItem instances

🥧 2D Pie Chart

Usage

  1. Import the namespace
xmlns:wpfChartControls="clr-namespace:WPFChartControls;assembly=WPFChartControls"
  1. Add chart
<wpfChartControls:_2DPieChart />
  1. Bind data to Items property
    • using code-behind
    <wpfChartControls:_2DPieChart x:Name="PieChart" />
    PieChart.Categories = TestPieCategories.Case6;
    • using attribute binding
    <wpfChartControls:_2DPieChart Categories="{Binding Categories}" />

Properties

  • Categories - collection of PieCategory items to be displayed in the chart
  • StrokeBrush - brush used to draw the strokes of the pie slices
  • StrokeThickness - thickness of the strokes of the pie slices
  • LegendPosition - position of the legend relative to the chart

Related Objects

  • PieCategory - a category in a pie chart with a Percentage, Title, and ColorBrush
  • LegendPosition - position of the legend (values: Top, Left, Right, Bottom)
  • TestPieCategories - provides test case collections of PieCategory instances

📈 Line Chart

Usage

  1. Import the namespace
xmlns:wpfChartControls="clr-namespace:WPFChartControls;assembly=WPFChartControls"
  1. Add chart
<wpfChartControls:LineChart />
  1. Bind data to Items property
    • using code-behind
    <wpfChartControls:LineChart x:Name="LineChart" />
    LineChart.Values = TestLineValues.Case3;
    • using attribute binding
    <wpfChartControls:LineChart Values="{Binding Values}" />

Properties

  • Values - collection of LineValue items to be displayed in the chart
  • AxisStrokeBrush - brush used to draw the axis strokes
  • AxisStrokeThickness - thickness of the axis strokes
  • GridLineStrokeBrush - brush used to draw the grid lines
  • GridLineStrokeThickness - thickness of the grid lines
  • GridLineOpacity - opacity of the grid lines
  • InnerPadding - inner padding of the chart area
  • ValueLineStrokeBrush - brush used to draw the value line
  • ValueLineStrokeThickness - thickness of the value line
  • XIntervalCount - number of intervals to be displayed on the X-axis
  • YIntervalCount - number of intervals to be displayed on the Y-axis

Related Objects

  • LineValue - a value in a line chart with X and Y coordinates
  • TestLineValues - provides test case collections of LineValue instances

💪🏾 Credits

Thank you to Kareem Sulthan, who shared the code that became the foundation of WPF Chart Controls.

From there I did lots of refactoring, made each chart adjust sizing when the window height/width is changed, and added documentation comments to increase reusability.

📃 License

The MIT License (MIT)

Copyright (c) 2024 Kareem Sulthan, Justin M Heartley

Used by

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.