highchart csv导出自定义文件名和值

时间:2017-02-09 10:06:04

标签: javascript csv highcharts

  Please refer below JS fiddle link.
  https://jsfiddle.net/2pd1natw/1/

// this is my JS for reference
  $(function () {
    var k = 0;
    $('#container').highcharts({
        chart: {
            type: 'column',
            zoomType: 'xy',
            events: {
                drilldown: function (e){
                    if (!e.seriesOptions) {
                        var chart = this,
                        drilldowns = {
                            '2015':{
                                name: '2015',
                                data: [
                                    ['Q4-2015',89]
                                ]
                            },
                            '2016':{
                                name: '2016',
                                data: [
                                    ['Q2-2016',95],
                                    ['Q3-2016',99]
                                ]
                            }
                        },
                        drilldownsLines = {
                            '2015':{
                                type: 'spline',
                                name: '2015',
                                data: [
                                    ['Q4-2015',11.45]
                                ],
                                yAxis: 1
                            },
                                '2016':{
                                type: 'spline',
                                name: '2016',
                                yAxis: 1,
                                data: [
                                    ['Q2-2016',11.2],
                                    ['Q3-2016',11.5]
                                ]
                            }
                        },
                        series = drilldowns[e.point.name],
                        seriesLine = drilldownsLines[e.point.name];
                        chart.addSingleSeriesAsDrilldown(e.point, series);
                        chart.addSingleSeriesAsDrilldown(e.point, seriesLine);
                        chart.applyDrilldown();
                    }
                }
            }
        },
        title: {
            text: 'Rental & Capital Value Trend'
        },
        exporting: {
                enabled: true,
            csv:{
                columnHeaderFormatter:function(item, key, series){
                    if(key === '' || key === undefined){
                        return 'Period';
                    }else if(key === 'y' && k == 0){
                        k = k + 1;
                        return 'Rental Value (INR/SF/Month)';
                    }else if(key === 'y' && k == 1){
                        k = 0;
                        return 'Capital Value (INR/SF)';
                    }
                }
            },
            buttons:{
                contextButton:{
                    menuItems: [{
                        textKey: 'downloadCSV',
                        onclick: function (){
                            this.downloadCSV();
                        }
                    }]
                }
            }
        },
        xAxis: {
            type: 'category',
        },
        yAxis: [{
            min: 0,
            title: {
                text: 'Rental Value (INR/SF/Month)'
            },
            labels: {
                format: '{value}'
            }
        }, {
            min:0,
            tickInterval:5,
            title: {
                text: 'Capital Value (INR/SF)'
            },
            labels: {
                format: '{value} K'
            },
            opposite:true
        }],
        tooltip:{
            formatter:function(){
                var s='';
                $.each(this.points, function () {
                    if(this.series.type == 'spline'){
                        s += '<br/>Capital Value : ' + this.y+ 'K';
                    }else{
                        s += '<br/> Rental Value : ' + this.y;
                    }
                });
                return s;
            },
            shared:true
        },
        legend: {
            layout: 'horizontal',
            align: 'left',
            size: '12px',
            x: 50,
            verticalAlign: 'bottom',
            y: 20,
            floating: true
        },
        plotOptions: {
            series: {
                borderWidth: 0,
                dataLabels: {
                    enabled: false
                }
            }
        },
        series: [{
                name: 'Renatl Value (INR/SFT/Month)',
                color: '#EE8908',
                data: [
                    {
                        name: '2015',
                        y: 89,
                        drilldown: true
                    }, {
                        name: '2016',
                        y: 90,
                        drilldown: true
                    }
                ]
            },{
                name:'Capital Value (INR/SF)',
                color:'#F8BB6C',
                type:'spline',
                yAxis:1,
                data:[
                    {
                        name:'2015',
                        y:11.45
                    },{
                        name:'2016',
                        y:15.22
                        }
                ],
                tooltip: {
                    valueSuffix: 'K'
                }
            }
        ],
        drilldown: {
            /*activeAxisLabelStyle: {
                textDecoration: 'none'
            },*/
            series: []
        }
    });
});

有两种情况我被卡住了。

  1. 当我尝试将图表导出为csv后,下钻文件名称应为“季度租金 - 资本趋势”,然后再向下钻取“年度租金 - 资本趋势”。         例如向下钻取文件名之前应该像“Yearly rental-capital trend.csv”             向下钻取文件名后应该像“Quarterly rental-capital trend.csv”

  2. 导出到csv后,资本值应附加“K”。 例如期间|租金价值|资本价值      2015年| 90 | 11.15 K

    任何帮助都将受到赞赏,感谢并提前。

0 个答案:

没有答案