Highcharts -导出模块

Highcharts - Exporting Module

本文关键字:模块 Highcharts      更新时间:2023-09-26

我使用highcharts来生成从数据库中提取的图形数据。

我在使用导出模块时遇到了麻烦。我已经包含了导出属性:

exporting{
  enabled:true
}

但是按钮没有出现…

我也把export .js链接到文件了…没有按钮出现…

还有其他人有这个问题吗?

编辑:

代码如下:

$.ajax({
               type:"POST",
               url: "retrievechartdata.php",
           data: {questionId:qId, questionIdTwo:qIdTwo, title:title, titleTwo:titleTwo, from:from, to:to},
               dataType: "json",
               success: function(data) {
         //$("#response").html("<div class='successMessage'>"+ data.valuesTwo +"</div>");   
                   var maxY = parseInt(data.max) + 1;          
                   var minY = parseInt(data.min);          
           if(minY > 0){
             minY = 0;
           }else{
             minY -= 1;
           }
           var cdata = new Array();  
           cdata= data.values.split(',');  
           for(var i=0;i<cdata.length;i++)  
           {  
             cdata[i]= parseInt(cdata[i]);  
           } 
           var leg = false;
           var title = data.questionTitle;
           if(data.valuesTwo != "FALSE"){
             leg = true;
             title += " & "+data.questionTitleTwo; 
             var cdataTwo = new Array();  
             cdataTwo = data.valuesTwo.split(',');  
             for(var i=0;i<cdataTwo.length;i++)  
               {  
             cdataTwo[i]= parseInt(cdataTwo[i]);  
               } 
           }
              chart = new Highcharts.Chart({
      chart: {
         renderTo: 'container',
         zoomType: 'x',
         spacingRight: 20
      },
      credits: {
        enabled: false
      },
       title: {
         text: title
      },
       subtitle: {
         text: document.ontouchstart === undefined ?
            'Click and drag in the plot area to zoom in' :
            'Drag your finger over the plot to zoom in'
      },
      xAxis: {
         type: 'datetime',
         maxZoom: 14 * 24 * 3600000, // fourteen days
         lineWidth: 1,
         lineColor: '#999999',
         title: {
            text: 'Date' 
         }
      },
      yAxis: {
         title: {
            text: data.questionTitle
         },
     labels: {
        y: 2
     },
     lineWidth: 1,
         lineColor: '#999999',
         gridLineWidth: 1,
     gridLineColor: '#eaeaea',
     min: minY,
     max: maxY, 
         startOnTick: false,
         showFirstLabel: false
      },
      tooltip: {
         shared: true               
      },
      legend: {
         enabled: leg
      },
      plotOptions: {
         area: {
            Color: {
               linearGradient: [0, 0, 0, 600],
               stops: [
                  [0, 'rgb(69, 114, 167)'],
                  [1, 'rgba(2,0,0,0)']
               ]
            },
            lineWidth: 1,           
            marker: {
               enabled: false,
               states: {
                  hover: {
                     enabled: true,
                     radius: 5
                  }
               }
            },
            shadow: false,
            states: {
               hover: {
                  lineWidth: 1                  
               }
            }
         }
      },
      series: [{
         type: 'spline',
         name: data.questionTitle,
         pointInterval: 24 * 3600 * 1000,
     pointStart: Date.UTC(data.year, data.month, data.day),
     data: cdata,
     lineColor:  '#f6a828',
     color: '#418ed6'
      },
      {
         type: 'spline',
         name: data.questionTitleTwo,
         pointInterval: 24 * 3600 * 1000,
     pointStart: Date.UTC(data.year, data.month, data.day),
     data: cdataTwo,
     lineColor:  '#808080',
     color: '#ff0000'
      }],
      exporting: {
        enabled: true
      }
   })

您使用的是Highcharts的哪个版本?哪个版本的jQuery?

目前是v2.1.6,我建议您使用最新版本,因为他们不断修复错误,添加新功能等。

在v2.0之前,不支持导出功能

为了使导出模块工作,您只需要做以下事情:

1- 第一个:在highcharts脚本之后添加js脚本,像这样:

    ...
    <script type="text/javascript" src="../js/highcharts.js"></script>
    <!-- 1b) Optional: the exporting module -->
    <script type="text/javascript" src="../js/modules/exporting.js"></script>
    ...

导出模块默认是启用的,所以不需要你发布的代码,所以你可以删除它:

exporting{
  enabled:true
}

2- 秒:确保正确发布exporting-server/index.php文件

这里是关于导出模块安装的官方文档:

    <
  1. 输出模块/gh>

从版本2.0开始,Highcharts提供了一个导出模块,允许用户下载图表的图像或PDF文件。该模块由一个额外的JavaScript文件exports .js和一个用PHP编写的web服务或服务器模块组成。Hililide Software免费提供导出web服务。如果在图表中包含导出模块,则右上方将出现两个按钮。一个按钮打印图表,这只在客户端完成。另一个按钮处理导出。默认情况下,图表的SVG表示形式通过POST发送到http://export.highcharts.com,然后使用Apache的Batik转换器将其转换为PDF、PNG或JPEG。

请参阅导航和导出参考项,以获取可用选项的完整文档。关于导出相关成员,请参见参考资料中的"方法和属性"。

在这里你可以看到关于导出模块的配置选项:http://www.highcharts.com/ref/#exporting

希望对你有帮助。

确保脚本标签有

type = " text/javascript"