Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Highcharts导出PDF-用于动态插入的系列_Javascript_Jquery_Pdf_Highcharts - Fatal编程技术网

Javascript Highcharts导出PDF-用于动态插入的系列

Javascript Highcharts导出PDF-用于动态插入的系列,javascript,jquery,pdf,highcharts,Javascript,Jquery,Pdf,Highcharts,我已经动态插入了highcharts系列,我一直在尝试将图表导出为PDF格式,如下所示 小提琴示例: 更新代码: // getMyChart() starts function getMyChart() { var myChart; Highcharts.setOptions({ lang: { thousandsSep: ',', nu

我已经动态插入了highcharts系列,我一直在尝试将图表导出为PDF格式,如下所示

小提琴示例:

更新代码:

// getMyChart() starts 

function getMyChart() {
    var myChart;
    Highcharts.setOptions({
                    lang: {
                        thousandsSep: ',',
                         numericSymbols: ['M']
                    }
                });

    var options = {
        chart : {
            renderTo : 'container',
            type : 'area'
            },

        xAxis : {
            lineWidth: 0,
            categories : []
        },

        yAxis : [ {
                    title : {
                        text : 'Averages',
                    },

                    lineWidth: 0,
                    } ,
                    {
                    title : {
                        text : 'Values',
                    },

                    opposite: true,
                    lineWidth: 0,

                }],
         series : []
  };

        // jQuery 

        $.get(url, function(xml) {
            var $xml = $(xml);
            $xml.find('categories Date').each(
                        function(i, category) {
                            options.xAxis.categories.push($(category).text());
                        });


            $xml.find('type Series').each(
                        function(i, series) {
                            var seriesOptions = {
                                name : $(series).find('name').text(),
                                data : []

                                };
                                $(series).find('data point').each(
                                    function(i, point) {
                                        seriesOptions.data.push(parseInt($(point).text()));
                                        });
                                options.series.push(seriesOptions);
                            });

            myChart = new Highcharts.Chart(options);
            });
    //jquery ends

    //  .getSVG function 

       Highcharts.getSVG = function(charts) {

            var svgArr = [],
            top = 0,
            width = 0;

        $.each(charts, function(i, chart) {
            var svg = chart.getSVG();
            svg = svg.replace('<svg', '<svg transform="translate(0,' + top + ')" ');
            svg = svg.replace('</svg>', '</svg>');

            top += chart.chartHeight;
            width = Math.max(width, chart.chartWidth);

            svgArr.push(svg);
        });

        console.log(svgArr);
        return '<svg height="'+ top +'" width="' + width + '" version="1.1" xmlns="http://www.w3.org/2000/svg">' + svgArr.join('') + '</svg>';
    };
    Highcharts.exportCharts = function(charts, options) {

        options = Highcharts.merge(Highcharts.getOptions().exporting, options);

        Highcharts.post(options.url, {
            filename: options.filename || 'Pulse_Chart',
            type: options.type,
            width: options.width,
            svg: Highcharts.getSVG(charts)
        });
    };

    $('#export').click(function() {
        Highcharts.exportCharts([myChart], {type: 'application/pdf'});
    });

    } // getMyCharts ends
我使用jQuery动态插入序列

有可能输出这样的图表吗?谁能指出我哪里出了问题?
感谢您的时间和帮助。

对于Highcharts,无论您如何加载系列(在init上或使用
addSeries()
),当前图表都以PDF格式导出。你有什么问题?也许最好发布你的实际代码,而不是有效的代码。@PawełFus我已经在这里发布了我的实际代码。您能告诉我应该做什么吗?您可以看到,
chart
是未定义的,因为您在本地范围中定义了chart:
var chart=new Highcharts.chart(选项)。事实上,您应该在代码的开头定义图表:
var图表然后使用
chart=newhighcharts.chart(选项)。哦,谢谢!我纠正了它,我得到了这个错误
SCRIPT438:对象不支持属性或方法“getSVG”
。我甚至添加了这个
,你能用这些更改更新你的代码吗?很难猜出什么是错的:)也许尝试使用不同的变量,不是
chart
,而是
myChart
<div id="container" class="myChart" style="width: 100%; height: 500px; margin: 0 auto"></div>
    <button id="export">Export all</button>
SCRIPT5009: 'chart' is undefined