我有一个绘制多项式的程序,由牛顿插值计算。 我正在添加点,这个程序绘制计算多项式。但我有点(0,0)的问题,我总是得到这一点,但我不应该。 这是程序中的示例屏幕:
http://i.imgur.com/8dHGmAP.png
和我的计算x []和y []
的代码public void calculate(){
if(listaPunktow.size()>1){
double dolX=minimumX();
double goraX=maksimumX();
double dolY=minimumY();
double goraY=maksimumY();
int szerokosc=wykresPanel.getWidth();
wykresPanel.domainAxis.setRange(dolX, goraX);
wykresPanel.rangeAxis.setRange(dolY, goraY);
double skala = wykresPanel.domainAxis.getRange().getLength();
x=new double[szerokosc];
y=new double[szerokosc];
double k=dolX;
for(int i=-wykresPanel.getWidth()/2; i<wykresPanel.getWidth()/2-25; i++){
k+=skala/szerokosc;
x[i+wykresPanel.getWidth()/2]=k;
double wartoscY=interpolacja.valueInX(k, listaPunktow);
y[i+wykresPanel.getWidth()/2]=wartoscY;
System.out.println("x="+k+" y="+wartoscY);
}
wykresPanel.createSeries(x, y);
}
我得到x []和y []
的输出请告诉我如何修复此(0,0)点
答案 0 :(得分:1)
我的猜测将是您的x[]
和y[]
数组中的最后一项永远不会填充在循环中,因此默认值为0.0,然后是{{ 1}}方法将该项添加到数据集中。