不为iOS和Safari显示Highcharts

时间:2017-08-01 08:53:44

标签: highcharts

我遇到问题,我无法在iOS和Safari上显示我的Highcharts的数据。 Chrome显示没问题。在您看来,我的错误的答案是什么? 谢谢

3 个答案:

答案 0 :(得分:2)

在您的代码中使用Date.getTime(),它为您提供UNIX时间戳(自1970-01-01以来的毫秒数)时间

iOS上的Safari和Chrome无法解析此类日期,您需要对其进行不同的转换,以使其适用于Safari和Highcharts。

正如this example中所述,您可以使用Date.UTC(year,month,day)来解析Highcharts的日期。

试试这个并告诉我它是否有效!

BTW您不再需要对日期进行排序;)

答案 1 :(得分:0)

ISO Highcharts

JS Fiddle Example

使用与以下相同的代码进行工作

HTML

 <div id="container" style="min-width: 310px; max-width: 800px; height: 400px; 
    margin: 0 auto">
 </div>

JS

Highcharts.chart('container', {
chart: {
    type: 'bar'
},
credits: {
            enabled: false
        },
        exporting: { 
            enabled: false
         },
title: {
    text: 'Campus Placement Preferences'
},
xAxis: {
    categories: ['BACHELOR', 'MASTER', 'DIPLOMA', 'DOCTORATE'],

     labels: {
         enabled: true
     },
     minorTickLength: 0,
     tickLength: 0
      },
  yAxis: {
    min: 0,
    title: {
        text: ''
    },
    gridLineColor: 'transparent'
},
legend: {
    reversed: true
},

tooltip: {
                    headerFormat: '<span style="font-size:11px">
 {series.name}</span><br>',
                    pointFormat: '<span style="color:{point.color}"></span> 
    <b>{point.y}%</b> of total 100%<br/>'
                },
   plotOptions: {
    series: {
        stacking: 'percent'
    }
 },
  series: [{
      name: 'NO',
    color:'#70d8ff',
    data: [50, 30, 40, 70]
 }, {
    name: 'YES',
    color:'#1d3166',
    data: [50, 70, 60, 30]
}]
});

答案 2 :(得分:-1)

我在Safari上收到了一个非常明确的错误,并且我iPad上的浏览器没有显示高位图中的数据。我基于使用new Date()的函数指定了图表的开始和结束时间。读取此线程Why does Date.parse give incorrect results?后,我使用给定的解析功能解析了开始日期和结束日期(在图表选项中指定),现在highcharts可以正常工作了!