如何仅绘制来自传感器的当前数据点?

How to plot only the current data point from sensor?

我正在从串行端口获取 LVDT 传感器数据。数据存储在变量 "values" 中。我正在映射输入然后绘图,但它也绘制了所有以前的点。我只想显示最新的值。

void draw()
{

  while ( myPort.available() > 0) 
  { 
    String values = myPort.readStringUntil(lf);
    if (values != null)
    {

      noFill();
      stroke(255, 0, 0);
      strokeWeight(1);
      float end = map(float(values), 735, 4160, 0, height); // 735 is lowest value from sensor and 4160 is max. value from sensor
      fill(255, 0, 0);
      ellipse(200, end, 10, 10);
      line(200, 400, 200, end);
    }
  }
}

目前显示是这样的:

但是我只想像这样显示最新的点:

添加一个全局变量,用于存储最后一个数据点。在绘制开始时读取数据点并将它们存储在全局变量中。这导致只注意到最后一个数据点。
在绘制开始时清除背景 (background()) 并仅绘制一个数据点:

String values;

void draw()
{
    while ( myPort.available() > 0) { 
        values = myPort.readStringUntil(lf);
    }

    background(0);
    if (values != null)
    {
        noFill();
        stroke(255, 0, 0);
        strokeWeight(1);
        float end = map(float(values), 735, 4160, 0, height); // 735 is lowest value from sensor and 4160 is max. value from sensor
        fill(255, 0, 0);
        ellipse(200, end, 10, 10);
        line(200, 400, 200, end);
    }
}