4
<script>
   $(function () {


        var chart = new Highcharts.Chart({
            chart: {
                renderTo: 'container',
                type: 'funnel',
                marginRight: 100
            },
            title: {
                text: 'Sales funnel'
            },
            plotArea: {
                shadow: null,
                borderWidth: null,
                backgroundColor: null
            },
            plotOptions: {
                series: {
                    dataLabels: {
                        enabled: true,
                        format: '<b>{point.name}</b> ({point.y:,.0f})',
                        color: 'black',
                        softConnector: true
                    },
                    neckWidth: '30%',
                    neckHeight: '25%'

                    //-- Other available options
                    // height: pixels or percent
                    // width: pixels or percent
                }
            },
            legend: {
                enabled: false
            },
            series: [{
                name: 'Unique users',
                data: [
                    ['Website visits',   15654],
                    ['Downloads',       4064],
                    ['Requested price list', 1987],
                    ['Invoice sent',    976],
                    ['Finalized',    846]
                ]
            }]
        });

        // Add the jQuery UI resizin
        var container = $('#container')[0];
        $('#resizer').resizable({
            // On resize, set the chart size to that of the 
            // resizer minus padding. If your chart has a lot of data or other
            // content, the redrawing might be slow. In that case, we recommend 
            // that you use the 'stop' event instead of 'resize'.
            resize: function() {
                chart.setSize(
                    this.offsetWidth - 20, 
                    this.offsetHeight - 20,
                    false
                );
            }
        });
    });​
    </script>

ハイチャートを使用してサンプルファンネルチャートを作成したので、ハイチャートのエクスポート機能を使用したくありません。div idを使用して、以下のチャートのsvgを取得する必要があります。
以下のコードは、チャートのdiv部分用であり、このdivでチャートをレンダリングします。

    <div id="container" style="height: 400px;">
    </div>



    using div id "container" i need to get svg of the chart.
4

4 に答える 4

5

getSVGインスタンスがある場合に使用できるというメソッドがありchartます。

var svg = chart.getSVG();

参照

于 2012-12-03T09:51:13.343 に答える
0

$('#container .highcharts-container')。html();を使用すると、簡単に取得できます。

これにより、svg全体が文字列として提供され、それを使用して再生できます。

また、highcharts export jsを拡張して、次の関数を使用することもできます

http://api.highcharts.com/highcharts#Chart.getSVG()

于 2012-12-03T09:55:04.420 に答える