Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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
Highcharts 如何获取highchart中每个数据点的id_Highcharts_Highstock - Fatal编程技术网

Highcharts 如何获取highchart中每个数据点的id

Highcharts 如何获取highchart中每个数据点的id,highcharts,highstock,Highcharts,Highstock,实际上,我正在使用Highstock库,并使用PHP和MySQL生成一个带有折线图(数据分组)的图形。我使用JSON格式来绘制图表 我有大约50000条记录用于绘制图表,当我单击数据点时,我需要在弹出窗口中显示id 我像这样使用JSON字符串 [ [1345575960000,303.38,1], [1345575960000,303.32,2], [1345575960000,303.25,3], [1345575960000,303.17,4], [1345575960000,303.09,

实际上,我正在使用Highstock库,并使用PHP和MySQL生成一个带有折线图(数据分组)的图形。我使用JSON格式来绘制图表

我有大约50000条记录用于绘制图表,当我单击数据点时,我需要在弹出窗口中显示id

我像这样使用JSON字符串

[
[1345575960000,303.38,1],
[1345575960000,303.32,2],
[1345575960000,303.25,3],
[1345575960000,303.17,4],
[1345575960000,303.09,5],
[1345575960000,303.01,6]
]
在我使用的javascript中

$.getJSON('data/jsonp.php?filename='+ name +'.json&callback=?', function(data) {

var jsonData = [],
dataLength = data.length;

for (j = 0; j < dataLength; j++) {
    jsonData.push([
        data[j][0], // x value
        data[j][1], // y value
        data[j][2] // id
    ]);
}

seriesOptions[i] = {
    name: name,
    data: jsonData,
    events:
        {
            click: function(event)
            {
                chart.showLoading('Loading data...');
                // HOW TO GET HERE THE ID (This is third value in JSON array)
                chart.hideLoading();
            }
        }
    };
seriesCounter++;
if (seriesCounter == names.length) {
      createChart();
}

});
$.getJSON('data/jsonp.php?文件名='+name+'.json&callback=?',函数(数据){
var jsonData=[],
dataLength=data.length;
对于(j=0;j
有人能帮我在图表上显示身份证吗


提前感谢。

您需要以不同的方式指定您的积分。试试这个:

[
    {x:1345575960000,y:303.38,id:1},
    {x:1345575960000,y:303.32,id:2}
]

然后,您应该能够在evnt处理程序中引用this.id。

您需要以不同的方式指定点。试试这个:

[
    {x:1345575960000,y:303.38,id:1},
    {x:1345575960000,y:303.32,id:2}
]

然后,您应该能够在evnt处理程序中引用此.id。

请看一个包含60000个点且id显示正确的示例


以包含60000个点的示例为例,正确显示ID



亲爱的SteveP,我根据您更改了我的JSON字符串,但现在我的图表没有显示JSON数组的任何限制要通过这种方式[{x:1345575960000,y:303.38,id:1},{x:1345575960000,y:303.32,id:2}]是的,默认限制为1000,请参阅。但是,数据分组将创建新的点,因此所有“id”属性都将被删除。我同意1000的限制,并将turboThreshold增加到50000。现在它绘制了我的图表,我使用JSON的格式是[{x:1345575960000,y:303.38,id:1},{x:1345575960000,y:303.32,id:2}]。但是当我传递623条记录时,我可以用this.ID获取ID,但当我增加一个记录数(624及以上)时,它会绘制我的图表,但this.ID返回未定义。亲爱的SteveP,我根据您的指示更改了我的JSON字符串,但现在我的图表不存在JSON数组的任何限制,以这种方式传递[{x:1345575960000,y:303.38,ID:1},{x:1345575960000,y:303.32,id:2}]Yeap,默认限制为1000,请参阅。但是,数据分组将创建新的点,因此所有“id”属性都将被删除。我同意1000的限制,并将turboThreshold增加到50000。现在它绘制了我的图表,我使用JSON的格式是[{x:1345575960000,y:303.38,id:1},{x:1345575960000,y:303.32,id:2}]。但是当我通过623条记录时,我可以用这个.ID获得ID,但当我增加一个记录数(624条及以上)时,它会绘制我的图表,但这个.ID返回未定义。我同意给定的示例显示了ID,但当我单击Zoom ALL或5M时,它也会显示ID未定义。因为当加载此数据时,数据分组工作,因此,您需要禁用它,但您应该知道,在这一数量点上,您需要设置巨大的div宽度。如何禁用数据分组可以在特定的数据分组中执行单击事件吗?因此,当我们缩放图表时,然后执行单击事件,否则我们无法执行单击事件。不幸的是,这是不可能的。我同意给定的示例显示ID,但当我单击“全部缩放”或“5M”时,ID也会显示为未定义。因为加载此数据时,数据分组工作,因此需要禁用它,但是您应该知道,在设置div的巨大宽度时需要注意的点有很多。如何禁用数据分组在特定的数据分组中是否可以执行单击事件?因此,当我们缩放图表时,然后执行单击事件,否则我们无法执行单击事件。不幸的是,这是不可能的。
 tooltip:{
        formatter:function(){
            console.log(this);

            return 'point: '+this.y + ' ID: '+this.points[0].point.id;
        }
    },