Creamos un nuevo proyecto de tipo "JFrame Form" y en modo diseño le agregamos un jPanel y un jButton.
Código (Ventana1.java):
package freejchartpanel1;
import javax.swing.JFrame;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
public class Ventana1 extends javax.swing.JFrame {
public Ventana1() {
initComponents();
}
private void initComponents() {...} // aqui va el codigo generado automáticamente por NetBeans
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
double poblacion = 0.7;
double tasa_crecimiento = 3.9;
XYSeries series = new XYSeries("");
for (int i = 0; i < 30; i++) {
series.add(i, poblacion * 100);
// Variante de la ecuacion de Verhulst
poblacion = poblacion * tasa_crecimiento * (1 - poblacion);
}
XYSeriesCollection dataset = new XYSeriesCollection();
dataset.addSeries(series);
JFreeChart chart = ChartFactory.createXYLineChart(
"Crecimiento Población",
"Tiempo ->",
"Población ->",
dataset,
PlotOrientation.VERTICAL,
false,
false,
false
);
// Mostramos la grafica dentro del jPanel1
ChartPanel panel = new ChartPanel(chart);
jPanel1.setLayout(new java.awt.BorderLayout());
jPanel1.add(panel);
jPanel1.validate();
}
public static void main(String args[]) {
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Ventana1().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JPanel jPanel1;
// End of variables declaration
}
Resultado:
Una forma sencilla y rápida de aprender JAVA, observando y deduciendo cómo se comporta el lenguaje a través de ejemplos prácticos.
Archivo del blog
Suscribirse a:
Enviar comentarios (Atom)
Con la tecnología de Blogger.
Muchas gracias, esto lo estuve buscando todo un día, y era tan sencillo como eso!!
ResponderEliminarde donde sale ese jpanel1???
ResponderEliminarLo arrastras desde el cuadro de herramientas.
EliminarsetLayout(new java.awt.BorderLayout());
ResponderEliminarCulpa de esta linea de codigo renegue todo un dia!
Gracias!
Muchas gracias, crack
ResponderEliminarQue crack, esto es lo único que encontré en todo internet que funcione.
ResponderEliminar