我正在使用一个引擎来显示线形图。我被困在试图得到触摸点的坐标(不是线形图上的坐标,而是在图形区域的任何地方)。所以我认为getSeriesAndPointForScreenCoordinate(…)在这种情况下没有帮助。
有什么建议吗?
如果您有屏幕坐标点,那么您可以调用chartView.toRealPoint()
以获得实际数据坐标值
尝试使用以下代码:
myXYPlot。setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
switch (event.getAction()) {
case MotionEvent.ACTION_MOVE:
displaycoordinates(event);
break;
case MotionEvent.ACTION_DOWN:
displaycoordinates(event);
break;
default:
break;
}
return true;
}
});
}
其中displaycoordinates()定义如下:
public void displaycoordinates(MotionEvent event) {
// TODO Auto-generated method stub
float x = event.getX();
float y = event.getY();
PointF point = new PointF(x,y);
NumberFormat nf = new DecimalFormat("#0.00");
Double j = getXval(x);
String xval = nf.format(j);
Double k = getYval(y);
String yval = nf.format(x);
if(j>=condition1 && k>=condition2 && j<=condition3 && k<=condition4)
{
toast = Toast.makeText(getApplicationContext(), xval+"xval"+yval+" yval", 0);
toast.show();
}
}