Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.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
Javascript 如何在gRaphael linechart hoverColumn函数中检索当前X值?_Javascript_Linechart_Vml_Graphael - Fatal编程技术网

Javascript 如何在gRaphael linechart hoverColumn函数中检索当前X值?

Javascript 如何在gRaphael linechart hoverColumn函数中检索当前X值?,javascript,linechart,vml,graphael,Javascript,Linechart,Vml,Graphael,下面我发布了一些代码和注释,用于制作带有标记悬停效果的简单gRaphael折线图(包括的脚本文件可以在和中找到)。代码按其应有的方式工作(因此,对于从gRaphael线形图开始的其他人来说,这是一个很好的示例),但我有一个关于标记函数的文本参数的问题/请求: 按原样,标记将在当前列中显示每个点的Y值(此.values[i]),但我希望同时显示X值和Y值(X,Y)。我相信这很简单,但到目前为止我还不知道怎么做。添加逗号和空格没有问题,这只是,“+this.values[i],但我不知道如何处理X值

下面我发布了一些代码和注释,用于制作带有标记悬停效果的简单gRaphael折线图(包括的脚本文件可以在和中找到)。代码按其应有的方式工作(因此,对于从gRaphael线形图开始的其他人来说,这是一个很好的示例),但我有一个关于标记函数的文本参数的问题/请求:

按原样,标记将在当前列中显示每个点的Y值(此.values[i]),但我希望同时显示X值和Y值(X,Y)。我相信这很简单,但到目前为止我还不知道怎么做。添加逗号和空格没有问题,这只是
,“+this.values[i]
,但我不知道如何处理X值
这个.attr(“x”)
是我到目前为止最接近的,但这是纸上的x坐标,而不是图表x轴上的x值;-)

有人能帮我吗

// make tags at every point on the current column
for (var i = 0; i < this.y.length; i++) {
  this.tags.push(
  // make tag (x, y, text, degree, radius)
paper.tag(this.x, this.y[i], this.values[i], 0, 4).insertBefore(this).attr([{ fill: "#ffffff" }, { fill: this.symbols[i].attr("fill") }])
);
//在当前列的每个点上创建标记
对于(var i=0;i


函数图(){
var纸张=拉斐尔(“纸张”);
var-chartwidth=800;
var chartheight=300;
var charttopleftx=20;
var charttoplefty=0;
//图表
var linechart=纸张。线条图(charttopleftx、charttoplefty、chartwidth、chartheight、,
//X坐标集
[
[0, 1, 2, 3, 4, 5],
[0, 1, 2, 3, 4, 5],
[0, 1, 2, 3, 4, 5]
],
//Y坐标集
[
[500, 550, 540, 510, 600, 570],
[500, 525, 400, 450, 390, 490],
[500, 425, 500, 430, 650, 425]
],
//图表配置
{轴:“0 0 1 1”,符号:“圆”,平滑:假,axisxstep:5});
//圆点
折线图.symbols.attr({r:4});
//标签
折线图.悬停列(
//展示
函数onmousein(){
this.tags=paper.set();//创建一组标记(以便能够在一次操作中隐藏所有标记)
//在当前列的每个点上制作标记
对于(var i=0;i
尝试在chrome中列出对象(CTRL+SHIFT+I->Console)。例如,为piechart图例中的每个标签获取cy和y

var pieChart = paper.piechart(w, h, rad, values, {legend: legend, legendpos: "south", minPercent: 0.1, legendothers: "Others"});

for( var i = 0; i < pieChart.labels.length; i++ ) {
 var CY=pieChart.labels[i][0][0].cy.animVal.value;
 var Y=pieChart.labels[i][1][0].y.animVal[0].value;
}
var pieChart=paper.pieChart(w,h,rad,values,{图例:图例,legendpos:“南”,minPercent:0.1,legenthers:“其他”});
对于(var i=0;i
是否希望在折线图上显示点的坐标?如果是,我可以发布解决方案。@Neha Choudhary是的,我希望在翻动折线图时,当前点(列)的X和Y坐标都显示在标记中。我上面的代码仅显示Y坐标(此.values[I]).Thanks您是否可以尝试类似于
折线图.symbols.cx
折线图.symbols.cy
?@Neha Choudhary我现在已经尝试过了,但都没有效果。标记只是显示未定义。顺便说一句,这对我来说不再那么重要,所以不要花太多时间来弄清楚。谢谢
var pieChart = paper.piechart(w, h, rad, values, {legend: legend, legendpos: "south", minPercent: 0.1, legendothers: "Others"});

for( var i = 0; i < pieChart.labels.length; i++ ) {
 var CY=pieChart.labels[i][0][0].cy.animVal.value;
 var Y=pieChart.labels[i][1][0].y.animVal[0].value;
}