1)我有一个Androidplot XYPlot,有些值为0表示"没有数据"在那一点上。我可以用值来隐藏这些点" 0"从情节?
2)如果我无法隐藏它们,我可以让图形线从前一点到0值点再到下一点,另一种颜色(如红色)表示这是一个点"没有数据"?
答案 0 :(得分:0)
XYPlot的底层模型是XYSeries,它使用Numbers来表示点。如果你正在实现自己的XYSeries,那么只需从getX(i)/ getY(i)返回null,其中i是任何“无数据”元素的索引。
如果你正在使用SimpleXYSeries,那么只需将null传递给你用来填充它的构造函数,模型或setX / Y方法。
绘制绘图时,您应该看到您的行被分解,遇到空值。
答案 1 :(得分:0)
在考虑到尼克斯的回答后,我得到了它的工作:
plot = (XYPlot) findViewById(R.id.mySimpleXYPlot);
// nums is an array holding different numbers, where some are 0.
Number Nullnumber = null;
SimpleXYSeries series1test;
series1test = new SimpleXYSeries("title");
for (int j = 0; j < nums.length; j++){
if(nums[j]==0){
series1test.addLast(j, Nullnumber); // Does not display points for 0 values
//series1test.addLast(j, nums[j]); // Displays points for 0 values
} else {
series1test.addLast(j, nums[j]);
}
}
LineAndPointFormatter series1Format = new LineAndPointFormatter();
series1Format.setPointLabelFormatter(new PointLabelFormatter());
series1Format.configure(getApplicationContext(),
R.xml.line_point_formatter_with_plf1);
plot.addSeries(series1test, series1Format);