您的位置:首页 > 其它

page59-一种能够累加数据的ADT(可视化版本) [可用于数据挖掘可视化工具]

2014-10-02 10:54 357 查看
public class VisualAccumulator

  VisualAccumulator() 创建一个累加器

  void addDataValue(double val) 添加一个新的数据值

  double mean() 所有数据值的平均值

  String toString() 对象的字符串表示

所用到的java类有:



【 VisualAccumulator.java 】如下

public class VisualAccumulator {

private double total;
private int N;

public VisualAccumulator(int trials , double max){

StdDraw.setXscale(0, trials);
StdDraw.setYscale(0, max);
StdDraw.setPenRadius(.005);
}

public void addDataValue(double val){

N ++;
total += val;
StdDraw.setPenColor(StdDraw.DARK_GRAY);
StdDraw.point(N, val);
StdDraw.setPenColor(StdDraw.RED);
StdDraw.point(N, total/N);

}
public double mean(){
return total/N;
}
public String toString(){
return "mean  (" + N + "values: )" + String.format("%7.5f", mean());
}
}


【TestVisualAccumulator.java 如下 】

public class TestVisualAccumulator {

public static void main(String[] args) {

int T = Integer.parseInt(args[0]);
VisualAccumulator a = new VisualAccumulator(T, 1.0);
for (int t = 0; t < T; t++)
a.addDataValue(StdRandom.uniform());
StdOut.println(a);
}
}


最后可视化的结果如下图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐