QCChart2D Charting Tools for WPF

New Version 2.3

Add high-speed line plots, bar plots, scatter plots, open-high-low-close plots, candlestick plots, bubble plots, contour plots, histogram plots, polar plots, antenna plots, ring charts, and pie charts, to WPF workstation and WPF web applications using the QCChart2D Charting Tools for WPF.

JPEG Images of some of the example programs that are included with the software. Click on the thumbnail image to view at actual size.


Financial and Stock Charting


Engineering, Medical Charting and Graphics


Scientific Charting and Data Visualization


Statistical Charting


Business and Marketing Charting

.Net Stepped Line Chart .Net Vertical Date/Time Axis .Net Dual Horizontal Bar Chart
.Net Line Fill Chart .Net Pie and Horizontal Bar Chart Bar Chart with Multi-Color Gradient  


The QCChart2D for WPF charting toolkit, written using C#, is for developers who want to add sophisticated interactive charting graphics to their WPF applications. The toolkit includes support for linear, logarithmic, polar and antenna coordinate systems used by engineering and scientific end users. It also includes support for advanced time/date, event and elapsed time coordinate systems required by business end users. Advanced user interface functions allow users to interact with applications using the mouse: adding annotations, selecting, marking and moving data points, drilldown, tooltips and zooming into a particular chart region.
Anyone who purchased an earlier revision of QCChart2D for WPF  in the previous two years can upgrade for free using the the download link(s) they were sent in an e-mail at the time of the original order. Versions older than that can be upgraded.


Download Demos (400 KB)  – Download a demo program, displaying many different chart types, you can run from Windows.
QCChart2D User Manual – View the QCChart2D user manual using Adobe Acrobat.

Frequently Asked Questions – See a collection of frequently asked questions concerning the QCChart2D software.

Download Trial Version(21 MB) – Download a full-featured, 30-day trial version. of the software.


Related Quinn-Curtis Products


New Features added to Revision 2.3


Event-Based Charting

QCChart2D now supports event-based plotting. In event-based plotting, the coordinate system is scaled to the number of event objects. Each event object represents an x-value, and one or more y-values. Since an event object can represent one or more y-values for a single x-value, it can be used as the source for simple plot types (simple line plot, simple bar plot, simple scatter plot, simple line marker plot) and group plot types (open-high-low-close plots, candlestick plots, group bars, stacked bars, etc.). Event objects can also store custom data tooltips, and x-axis strings. The most common use for event-based plotting will be for displaying time-based data which is discontinuous: financial markets data for example. A more detailed description of Event-based charting is found in this white paper on the subject: An Event-based Coordinate System for Use in the Plotting of Discontinuous Time Data.

  • Remove arbitrary (non-periodic) days, holidays for example, from the time/date scale.
  • Allow for a sub range of a day which crosses 24:00, i.e. 18:00 to 3:00.
  • Allow for multiple, active time ranges within the same 24-hour period, i.e. 9:00 to 12:00 and 14:00 to 18:00.
  • Smooth panning and zooming of data across discontinuous time boundaries.
  • Allow for exceptions to the predefined set of rules. For example, be able to include a weekend day, or a specific set of hours normally excluded from the scale.

Feature Summary

  • Visual Studio .Net 2008,  2010, 2012, 2013 and 2015 -The software is compatible with  Visual Studio2008, Visual Studio2010, and higher.  All example program projects are in Visual Studio 2008 format, and automatically convert to Visual 2010 format when loaded using that compiler.
  • Windows 32-bit/64-bit Compatible – The software will run as 32-bit on Windows 32-bit operating systems and as 64-bit on Windows 64-bit operating systems. This is a feature of programs and libraries written using .Net (Version 2.0 or greater) in general.
  • SharpDevelop – The software is also compatible with SharpDevelop 3.X and higher.  SharpDevelop is a free IDE for C# and VB developers writing for the WPF/.Net platform.
  • Plot Types – Line plots, area plots, bar plots, line marker plots, floating bars, scatter plots, group plots, open-high-low-close plots, error bar plots, pie charts, contour plots, candlestick plots, line gap plots, cell plots, histogram plots, arrow plots, bubble plots, polar plots, multi-line plots, stacked line plots, box-whisker plots, floating stacked bar plots, ring plots, antenna plots, versa plots.. An unlimited number of plot types can be combined in the same chart.
  • Datasets – Datasets hold the data plotted in the chart. Charts can plot an unlimited number of datasets, each dataset can contain an unlimited number of data points. Datasets can hold numeric and .Net DateTime based data. Mark data points invalid, forcing a break in plotted lines.


.Net Dataset Viewer .Net Dataset Viewer
Simple dataset viewer  Group dataset viewer


  • Dataset Viewer – A new dataset viewer class will display simple and group datasets in a grid-like table. The grid can be positioned anywhere on the chart. Individual grid cells can be edited and the associated chart immediately updated using the synchronize feature.
  • Coordinate Systems – Linear, logarithmic, time/date and polar coordinate systems. An unlimited number of coordinate system, and axes, can be overlaid in the same plotting area of a graph.
  • Time/Date Coordinate Systems – The time/date scale is specified using .Net DateTime objects. The time/date scales take into account the varying number of days in months and years. The scales can also take into account non-continuous time/date scales where a 5-day week is used, or where a full day consists of a specific time interval that can be something less than a 24-hour day. For example, it is possible to define a time/date scale where weekends are excluded and the day consists of the hours between 9:30 AM and 4:00 PM. Starting with Rev. 2.0, the Time/Date scale can be either horizontal or vertical.
  • Elapsed Time Coordinate System – The original Time/Date scale proved less than optimal for the display of TimeSpan data, i.e., time values not associated with a specific calendar date. Starting with Rev. 2.0, the software supports elapsed time plotting, based on the .Net TimeSpan class.  The elapsed time scale can be either horizontal or vertical. This includes new dataset types (ElapsedTimeSimpleDataset, ElapsedTimeGroupDataset), a new coordinate system class (ElapsedTimeCoordinates), a new axis class (ElapsedTimeAxis) and a new axis labels class (ElapsedTimeAxisLabels).
  • Event-Based Coordinate System – Event-based charting further expands the plotting capability of QCChart2D – adding features important to the financial services industries.   The includes new dataset types EventSimpleDataset, EventGroupDataset), a new coordinate system class (EventCoordinates), a new axis class (EventAxis) and a new axis labels class (EventAxisLabels). For more information see: An Event-based Coordinate System for Use in the Plotting of Discontinuous Time Data.
.Net Antenna Axes
 Linear axes     Logarithmic axes Polar axes Date axes    Antenna axes
Vertical Date/Time Axis Elapsed Time Axis
Vertical date/time axis Standard time axes Time axes with custom range Elapsed time axis  Axis labels 

Examples of linear, logarithmic, polar and time/date axes – click to enlarge


  • Axis Types – Linear, logarithmic, time/date, elapsed time, event, antenna, and polar axis types. All axis types have manual and auto-scaling modes for setting axis ranges. Axis auto-scaling modes handle multiple datasets, group data and contour data. A chart can have an unlimited number of axes.
  • Axis Labels – Axes can have decimal, exponential, time, date, elapsed time, string and multi-line labels. Programmers can define custom numeric and time/date axis labels.
  • Chart Titles – Charts can have a main title, a subhead and a footer. Axes can have horizontal and vertical titles.
  • Grid Options – Grid lines of any line style and color can highlight major and minor axis tick marks.
  • Export Chart Images – The software uses the the standard .Net image encoders to export charts in JPEG, WMP, BMP, GIF, TIFF, and PNG formats.
  • Import .Net Image object – Use .Net Image objects as plot elements in a chart, or as a background object.
  • Legends for All Plot Types – Position horizontal and vertical legends anywhere in a chart. A chart can have an unlimited number of legends.
  • Mouse Support – A group of classes implementing mouse event delegates can locate, select and move chart objects like data plots, axes, titles, and legends.


Simple zooming – before picture Simple zooming – after picture


.Net Chart Zoom Before .Net Chart Zoom After
Super zooming – before picture Super zooming – after picture


  • Simple and Super Zooming – Zoom a simple xy axis pair, or simultaneous zoom an unlimited number of x- and y-axes.


MagniView chart MagniView chart
The MagniView cursor magnifies what is under it The MagniView class works with charts that overlay multiple coordinate systems


  • MagniView – Similar  to zooming, the mouse controls a “magnifying” rectangle as it passes over an existing chart. The area of the chart within the bounds of the magnifying rectangle is “magnified” and continuously redrawn in a separate window. The MagniView class works with charts that use a simple xy axis pair,  and charts that combine one or more coordinate systems.
  •  Panning – Use the new MoveCoordinates class to pan data in the x- and y-dimension. Click and drag in the plot area and rescale the graph proportionally.


WPF Data Cursors and Markers
   Example of a data cursor and markers – click to enlarge
  • Data Cursors – XOR data cursors are used to position the mouse cursor over data points in a plot.
  • Data Markers – Drop special marker symbols on to the data presented in a graph, much like a bookmark in a word processing document.


WPF Chart Annotations
        Examples of a annotations – click to enlarge
  • Graph Annotations – Add an unlimited number single and multi-line text objects, arrows and geometric objects to a chart.


Bar Chart with Multi-Color Gradient
Multi-color gradient applied to a bar plot and mapped to the plot area of the chart  A simple two-color gradient shades a pie chart
  • Multi-Color Gradients – Bars and other area fill objects can be filled using multi-color gradients. Mult-color gradients can be mapped to the object, the plot are of the chart, or the entire graph.


WPF Chart Data Tooltips WPF Custom Chart Data Tooltips
Standard tooltip Custom tooltip


  • Data ToolTips – Select a data point with the mouse and popup a tooltip window that displays the data x- and/or y-values for the data points. Programmers can create custom information displays for tooltip windows.
  • Data Compression – Large datasets can be compressed, increasing display speed without loss of detail.
  • Based on the WPF Retained Graphics Drawing Framework – Compatible with WPF components and applications.
  • 100% Managed .Net Code – The software is entirely written in C#, resulting in provide better performance and scalability. Managed .Net code makes applications easier to deploy and maintain.
  • Documentation and Demo/Example Programs – The software includes a comprehensive 400 page user manual with many programming examples, XML help for every class and 90 complete example charts. Every programming example, and example program is presented in C# and Visual Basic.


QCChart2D Developer Licensing

  • Our license agreement can be found here.
  • The QCChart2D Developer License is available in a Developers Version (model #WPF-CHT-DEVR) that does not time out. Free updates for two years.
  • The QCChart2D Developer License is licensed to a single individual. It cannot be used by multiple people at the same company, unless a separate license is purchased for each person. Site licenses are also available. Contact sales@quinn-curtis.com with details of how many seats you wish to purchase and we will respond with a quote.
  • The QCChart2D software does not use a redistributable license, unlike the previous versions (1.5, 1.6) of the software.  The basic developer license permits you to include QCChart2D as part of your application and distribute an unlimited number  royalty free.


QCChart2D Redistributable Licensing


  • The QCChart2D Software does not use a redistributable license. The basic developer license permits you to include QCChart2D as part of your application and distribute an unlimited number of copies of your application, royalty free. We do not allow developers to use this software to create a graphics toolkit (a library or any type of graphics component that will be used in combination with a program development environment) for resale to other developers.


QCChart2D Source Code

  • The commented source code to the QCChart2D charting software is now available. The source code is written entirely in C#. In can be compiled using  Visual Studio 2008/2010 compilers.  It can be ordered using the model # WPF-CHT-SRC.
  • Purchasers of the QCChart2D source code must also own a valid Developer License, since all example programs, user manuals, and license files are installed as part of the Developer version of the software.


Custom Programming Services


  • QCChart2D is an extremely powerful and flexible software package. It contains over 1000 methods and properties in more than 120 classes. The user manual and  help file documentation are more than 1000 pages. This can be overwhelming to the average programmer who wants to start programming today and have the prototype of an application working in a week.
  • The variety of user interfaces for charting applications is as diverse as the industries using the software. The end-user of an application at a mutual fund expects to interact with the chart in a manner different than that of an end-user in health care. The same can be said for other industries: semiconductors, quality control, teaching, biotechnology, etc.
  • That is why we have written so many outstanding example programs, pulled from a wide variety of industries using many different styles of user interface.
  • We know that your application may be similar to, but still uniquely different from any of our example programs. To that end we offer our programming services to write for you a custom example program that demonstrates how to code the chart format and user interface you want. That jump start to your project can save you many weeks of work and make you look like a chart programming genius. All  you have to be able to do is describe in detail what you want the example to do.
  • Using QCChart2D for .Net and WPF, our range of expertise includes Managed C++ (MC++), VB, and C#  programming languages. For more information or a quote, please contact our sales department at sales@quinn-curtis.com.
  • Doesn’t have the features you need ? Let us know what those are so we can add them in a subsequent release. Contact: info@quinn-curtis.com

    Ordering Information

    Click here to go to Download Ordering

    Description Model # Price
    QCChart2D WPF Developer Software WPF-CHT-DEVR $200
    QCChart2D WPF Source Code WPF-CHT-SRC $550
    You must own WPF-CHT-DEVR to purchase Source Code