Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package GUI; import Source.OperacionesDiarias; import Source.Operario; import java.awt.Color; import java.util.ArrayList; import java.util.Collections; import javax.swing.JPanel; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.CategoryPlot; import org.jfree.chart.plot.PlotOrientation; import org.jfree.data.category.DefaultCategoryDataset; /** * * @author ainokila */ public class GraficaView extends javax.swing.JFrame { private Operario operario; JFreeChart grafica; DefaultCategoryDataset Datos = new DefaultCategoryDataset(); JPanel panel; /** * Creates new form GraficaView */ public GraficaView(Operario op) { this.operario = op; setTitle("Grafica"); setSize(800, 600); setLocationRelativeTo(null); setDefaultCloseOperation(DISPOSE_ON_CLOSE); setVisible(true); init(); } private void init() { ArrayList<OperacionesDiarias> aux = operario.getArrayOperacionesDiarias(); Collections.sort(aux); panel = new JPanel(); getContentPane().add(panel); // Fuente de Datos DefaultCategoryDataset dataset = new DefaultCategoryDataset(); for (OperacionesDiarias op : aux) { if (op.getListaOperaciones().size() > 0) { dataset.setValue(op.getPorcentaje(), operario.getNombre(), op.getFecha()); } } // Creando el Grafico JFreeChart chart = ChartFactory.createBarChart3D("Rendimiento", "Dia", "Porcentaje %", dataset, PlotOrientation.VERTICAL, true, true, false); chart.setBackgroundPaint(Color.LIGHT_GRAY); chart.getTitle().setPaint(Color.black); CategoryPlot p = chart.getCategoryPlot(); p.setRangeGridlinePaint(Color.red); // Mostrar Grafico ChartPanel chartPanel = new ChartPanel(chart); panel.add(chartPanel); repaint(); } /** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 400, Short.MAX_VALUE)); layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 300, Short.MAX_VALUE)); pack(); }// </editor-fold>//GEN-END:initComponents // Variables declaration - do not modify//GEN-BEGIN:variables // End of variables declaration//GEN-END:variables }