DevExtreme v24.1 is now available.

Explore our newest features/capabilities and share your thoughts with us.

Your search did not match any results.

JavaScript/jQuery Charts - Export and Printing API

You can use two approaches to print and export the Chart: call methods, or add a built-in button with drop-down options. The supported export formats are PNG, PDF, JPEG, SVG, and GIF.

en.wikipedia.org
Backend API
$(() => { const chartInstance = $('#chart').dxChart({ dataSource, series: { argumentField: 'name', valueField: 'height', type: 'bar', color: '#E55253', }, tooltip: { enabled: true, customizeTooltip(arg) { return { text: `<span class='title'>${arg.argumentText}</span><br />&nbsp;<br />` + `System: ${arg.point.data.system}<br />Height: ${arg.valueText} m`, }; }, }, title: 'The Highest Mountains', legend: { visible: false, }, argumentAxis: { visible: true, }, valueAxis: { visualRange: { startValue: 8000, }, label: { customizeText() { return `${this.value} m`; }, }, }, }).dxChart('instance'); $('#print').dxButton({ icon: 'print', text: 'Print', onClick() { chartInstance.print(); }, }); $('#export').dxButton({ icon: 'export', text: 'Export', onClick() { chartInstance.exportTo('Example', 'png'); }, }); });
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <title>DevExtreme Demo</title> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script>window.jQuery || document.write(decodeURIComponent('%3Cscript src="js/jquery.min.js"%3E%3C/script%3E'))</script> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/24.1.7/css/dx.light.css" /> <script src="js/dx.all.js"></script> <script src="data.js"></script> <link rel="stylesheet" type="text/css" href="styles.css" /> <script src="index.js"></script> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="chart"></div> <div id="buttonGroup"> <div id="print"></div> <div id="export"></div> </div> </div> </body> </html>
#chart { height: 440px; margin-bottom: 30px; } #buttonGroup { text-align: center; margin-bottom: 20px; } #buttonGroup > .dx-button { margin: 0 20px; } .title { font-size: 15px; font-weight: 500; }
const dataSource = [{ name: 'Everest', height: 8848, system: 'Mahalangur Himalaya', }, { name: 'Godwin Austen', height: 8611, system: 'Baltoro Karakoram', }, { name: 'Kangchenjunga', height: 8586, system: 'Kangchenjunga Himalaya', }, { name: 'Lhotse', height: 8516, system: 'Mahalangur Himalaya', }, { name: 'Makalu', height: 8485, system: 'Mahalangur Himalaya', }, { name: 'Cho Oyu', height: 8188, system: 'Mahalangur Himalaya', }];

Use Methods to Export and Print Chart

Use the exportTo(fileName, format) and print() methods to export and print the Chart. In this demo, two buttons below the chart implement the print and export functionality. A click on the "Print" button calls the Print dialog window, and a click on the "Export" button saves a file with the component to your local storage. You can specify the file name and format in the exportTo(fileName, format) method.

Export and Print Chart with a Built-in Menu

To automatically create a button with export and print options, use the export object and set its enabled property to true. If you want to disable printing, set the printingEnabled property to false.

Set the formats property to specify an array of available export formats. The fileName property allows you to specify the name of the exported file.

You can see how this approach works in the following demo: JSON Data.

Handle Export Events

Use the following events to handle export:

NOTE

Need to create printable documents simply? Try our .NET-based DevExpress Reports: they ship with an intuitive Visual Studio Report Designer, Web Report Designer for end-user ad-hoc reporting, and a rich set of report controls, including cross tabs and charts.

You can generate a variety of report types — from simple mail-merge, table, and vertical reports to master-detail (hierarchical) and cross-tab reports, print or export them to PDF, Excel, and other formats.

Develop using VS Code? Leverage the capabilities of a brand new VS Code Report Designer extension to create and edit reports/documents on any platform, be it Windows, macOS, or Linux.

Get Started with DevExpress Reports | Explore Demos