Hola amigos, mi problema es el siguiente, este código para graficar no me grafica, al compilar me dice ke no hay ningun problema pero pues el problema es mi logica... si alguien me pudiera ayudar les agradecería muchisimo
Código Java:
Ver originalimport java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
public class GraphingData
extends JPanel { int x0,xN,y0,yN;
double xmin,xmax,ymin,ymax;
int apAncho, apAlto;
int h=getHeight();
int w=getWidth();
final int PAD = 20;
protected void paintComponent
(Graphics g
) {
super.paintComponent(g);
double x1,y1,x2,y2;
int j1,j2;
x0 = y0 = 0;
xN = apAncho-1;
yN = apAlto-1;
xmin = -5.0;
xmax = 5.0;
ymin = -7.0;
ymax = 1.0;
j1 = ValorY( 0 );
for( int i=0; i < w; i++ ){
j2 = ValorY( i+1 );
g2.fillRect(i,j1,i+1,j2 );
j1 = j2;
}
}
private int ValorY( int valor ) {
double x,y;
int retorno;
// Cartesianas equivalentes al punto de la pantalla
x = (valor * (xmax-xmin) / (h-1)) + xmin;
// Calculamos LA FUNCION
y = (3*x*x) -6;
// Escalamos la coordenada y dentro de los limites de la ventana
retorno = (int)( (y-ymin) * (w-1) / (ymax-ymin) );
// Reconvertinos el valor cartesiano a punto de pantalla
retorno = h - retorno;
return( retorno );
}
public static void main
(String[] args
) { f.
setDefaultCloseOperation(JFrame.
EXIT_ON_CLOSE); f.add(new GraphingData());
f.setSize(600,400);
f.setLocation(200,200);
f.setVisible(true);
}
}