
QCustomPlot is a Qt C++ widget for plotting and data visualization. It has no further dependencies and is well documented. This plotting library focuses on making good looking, publication quality 2D plots, graphs and charts, as well as offering high performance for realtime visualization applications. Have a look at the Setting Up and the Basic Plotting tutorials to get started.
QCustomPlot can export to various formats such as vectorized PDF files and rasterized images like PNG, JPG and BMP. QCustomPlot is the solution for displaying of realtime data inside the application as well as producing high quality plots for other media.
 |
 |
Default license GPL, feel free to use QCP in free software!
|
Please get in contact if you need a commercial license.
|
Plot Screenshots
The screenshots below show what can be achieved with QCustomPlot in only a few lines. To view the code, click on the respective image. All codes are also available in the full package which can be found in the download section. Inside the package, navigate to the project examples/plots/plot-examples.pro.

A simple decaying sine function with fill and its exponential envelope in red

sinc function with data points, corresponding error bars and a 2-sigma confidence band

A demonstration of several scatter point styles

Demonstrating QCustomPlot's versatility in styling the plot

A 2D color map with color scale. Color scales can be dragged and zoomed just like axes

Pixmap scatter points and a multi-lined axis label, as well as a plot title at the top

Real time generated data and time bottom axis

Multiple plot styles with different key/value axes and pi tick labeling at top axis

Logarithmic axis scaling. Note correct display of the sine function crossing zero in negative infinity

A demonstration of several line styles

Random walks with fill and smart date ticks on the bottom axis

Parametric curves with translucent gradient filling

Three stacked bar charts with manual x axis tick labels

Statistical 5-parameter-box-plot with outliers

The interaction example showing the user selection of graphs

Using items like text labels, arrows and a bracket. This is actually animated, see examples project

QCP supports multiple axes on one axis rect side and multiple axis rects per plot widget

QCP showing financial and stock data with the typical Candlestick and OHLC charts