Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/360.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
Java:标在绘制线上的某些坐标_Java_List_Arraylist - Fatal编程技术网

Java:标在绘制线上的某些坐标

Java:标在绘制线上的某些坐标,java,list,arraylist,Java,List,Arraylist,我正在开发一个程序,该程序从生成的实时数字数组列表中创建一条绘制线。这些数字不一定是线性的,可能会形成一种扭曲的模式。该程序计算反演点并将其提供给用户,然而,当存在大量反演时,屏幕上的混乱可能是一个相当大的问题。是否有办法重写/修改代码,使其仅打印某些数字,例如,如果此人希望仅显示数字80、90和143。所附代码: CustomCoordinate是一个自定义类,用于帮助设置列表,为清晰起见包括在内 private int count; private int num; public Cus

我正在开发一个程序,该程序从生成的实时数字数组列表中创建一条绘制线。这些数字不一定是线性的,可能会形成一种扭曲的模式。该程序计算反演点并将其提供给用户,然而,当存在大量反演时,屏幕上的混乱可能是一个相当大的问题。是否有办法重写/修改代码,使其仅打印某些数字,例如,如果此人希望仅显示数字80、90和143。所附代码:


CustomCoordinate是一个自定义类,用于帮助设置列表,为清晰起见包括在内

private int count;
private int num;

public CustomCoordinate(long time, double value, int number) {
    super(time, value);
    this.count = number;
}

public int getCount() {
    return count;
}

为了澄清,SELDATEINSE是一个日历对象,用户在其中输入第一个数据点标签沿x轴定位的日期。在此之前的任何反转都不会被标记,之后的任何反转都不会被标记

int x = 0;
if (inversions) {
    for(CustomCoordinate c : points) {
        if(c.getTime() > selDateInSec) {
            Label lbl = new Label (instr.format(++x), f, txtColor, bgColor);
            lbl.setLocation(c);
            addFigure(lbl);
        }
    }
}

提前感谢

您可以从用户那里获取他们感兴趣的点的信息,然后使用
过滤器
功能过滤出感兴趣的点。因此,您可以只显示感兴趣的点,而不会出现混乱。

我不太确定是否理解您的问题,但如果您只想打印给定的数字,为什么不在遇到这些数字时检查并打印?如果是视觉问题,您可能需要计算这些标签的大致大小(计算实际大小可能是一项复杂的任务,但近似值应该足够),然后仅在标签彼此距离足够远时添加标签。我尝试了“如果数字是这个,请打印数字”解决方案,但如果与日期功能配合使用,则会出现严重故障。在没有开始日期的情况下完成时,它可以正常工作,但数据输出在该上下文中并不真正有用。我会看看我能为标签问题做些什么,谢谢你的建议,尽管这是我的第二个问题。我不确定我是否完全理解你的问题。将日期检查(如果需要)和数字结合起来有什么问题?问题是,当使用日期检查时,标签出现在不正确的点上。例如,我在第37点得到一个50的标签。我试着看看是否出现了一种模式,它是否总是向后或向前标记一定数量的点,但没有效果。如果我不使用日期功能,第50点将标记为“50”。此外,我在另一段代码中使用了日期功能,这段代码运行得非常好,因此我知道问题不在于日期功能本身。嗯,计算日期过滤产生的偏移量怎么样?因此,如果由于日期过滤器的原因,从第23点开始,则第27个渲染点应获得标签50等。