I'm trying to create a Highchart chart that can be downloaded as a PNG in multiple resolutions.
I've created this JSFiddle file as a test: http://jsfiddle.net/4v133hnm/26/
Here's the relevant code, I think:
export_for_print = function() {
var chart = $('#container').highcharts();
chart.exportChartLocal(null, {
chart: {
sourceWidth: 4000,
sourceHeight: 2000,
scale: 6
}
});
};
The export works fine, but it only comes through in a single resolution.
If you take a look at the custom "Export for email/desktop/print" functions, I've tried changing the sourceWidth, sourceHeight, and scale attributes, but no matter what I do, the PNG downloaded from the chart is 1200x800.
I'd really appreciate any help with this issue — thanks!
The first argument is for exporting options so you should change your code to this:
export_for_print = function() {
var chart = $('#container').highcharts();
chart.exportChartLocal({
sourceWidth: 4000,
sourceHeight: 2000,
scale: 6
}, null);
};
take a look on the documentation:
You need change the scale, the scale will change your resolution.
Here you can see one example with two different resolutions, 600x400 and 1200x800:
http://api.highcharts.com/highcharts#exporting.scale
$(function () { $('#container').highcharts({ title: { text: 'Highcharts exporting scale demo' }, subtitle: { text: 'This subtitle is HTML', useHTML: true }, xAxis: { categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] }, series: [{ data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4] }], exporting: { allowHTML: true, enabled: false } }); $('button.export').click(function () { $('#container').highcharts() .exportChart({ scale: $(this).data().scale//take a look here }); }); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script src="https://code.highcharts.com/highcharts.js"></script> <script src="https://code.highcharts.com/modules/exporting.js"></script> <div style="width: 600px; margin: 0 auto"> <div id="container" style="height: 400px"></div> <button class="export" data-scale="1">Scale = 1</button> <button class="export" data-scale="2">Scale = 2</button> </div>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.