Rabu, 01 April 2020

UAS Komputer Grafik Arif Ramdani 171011400897

1. Buat project baru dan beri nama. Misal

UAS_ArifRamdani_171011400897

2. Buat new java class kemudian masukkan source berikut untuk menyambungkan ke database.

package uasariframdani_171011400897;
import com.mysql.cj.jdbc.MysqlDataSource;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @Arif Ramdani 171011400897
 */
public class Test {
    public Connection createConnection(){
     Connection connection = null;
        MysqlDataSource sql = new MysqlDataSource();
       
        sql.setServerName("localhost");
        sql.setPortNumber(3306);
        sql.setUser("root");
        sql.setPassword("");
        sql.setDatabaseName("datawarga");
       
        try {
            connection = sql.getConnection();
        } catch (SQLException ex) {
            Logger.getLogger(Test.class.getName()).log(Level.SEVERE, null, ex);
        }
        return connection;
    }
}

3, Buat JFrame dan masukkan source seperti berikut:

package uasariframdani_171011400897;

/**
 *
 * @author windows 10
 */
public class Main extends javax.swing.JFrame {

    /**
     * Creates new form Main
     */
    public Main() {
        initComponents();
    }

    /**
     * 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">                         
    private void initComponents() {

        jMenuBar2 = new javax.swing.JMenuBar();
        jMenu3 = new javax.swing.JMenu();
        jMenu4 = new javax.swing.JMenu();
        jPanel1 = new javax.swing.JPanel();
        jMenuBar1 = new javax.swing.JMenuBar();
        arifmenu = new javax.swing.JMenu();
        arifdesa = new javax.swing.JMenuItem();
        arifdata = new javax.swing.JMenuItem();
        ariflog = new javax.swing.JMenu();

        jMenu3.setText("File");
        jMenuBar2.add(jMenu3);

        jMenu4.setText("Edit");
        jMenuBar2.add(jMenu4);

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        arifmenu.setText("Data");

        arifdesa.setText("Desa");
        arifdesa.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                arifdesaActionPerformed(evt);
            }
        });
        arifmenu.add(arifdesa);

        arifdata.setText("Data Covid19");
        arifdata.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                arifdataActionPerformed(evt);
            }
        });
        arifmenu.add(arifdata);

        jMenuBar1.add(arifmenu);

        ariflog.setText("Logout");
        ariflog.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                ariflogActionPerformed(evt);
            }
        });
        jMenuBar1.add(ariflog);

        setJMenuBar(jMenuBar1);

        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, 279, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>                       

    private void arifdesaActionPerformed(java.awt.event.ActionEvent evt) {                                       
        DataDesa ds = new DataDesa();
        ds.setVisible(true);
    }                                       

    private void arifdataActionPerformed(java.awt.event.ActionEvent evt) {                                       
       DataCovid19 co = new DataCovid19();
       co.setVisible(true);
    }                                       

    private void ariflogActionPerformed(java.awt.event.ActionEvent evt) {                                       
       Login log = new Login();
       log.setVisible(true);
       setVisible(false);
       dispose();
    }                                     

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(Main.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(Main.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(Main.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(Main.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Main().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                   
    private javax.swing.JMenuItem arifdata;
    private javax.swing.JMenuItem arifdesa;
    private javax.swing.JMenu ariflog;
    private javax.swing.JMenu arifmenu;
    private javax.swing.JMenu jMenu3;
    private javax.swing.JMenu jMenu4;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JMenuBar jMenuBar2;
    private javax.swing.JPanel jPanel1;
    // End of variables declaration                 
}

4. Buat new java class untuk membuat Pie Chart, masukkan kode berikut :
package UTS_ArifRamdani;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot3D;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.data.general.PieDataset;
import org.jfree.util.Rotation;

public class PieUts extends JFrame {
    double n1=0,n2=0, n3=0, n4=0;
    public void setNilai(String nilai1, String nilai2, String nilai3, String nilai4){
try {
n1 = Double.parseDouble(nilai1);
} catch (NumberFormatException ex){}
try {
n2 = Double.parseDouble(nilai2);
} catch (NumberFormatException ex){}
try {
n3 = Double.parseDouble(nilai3);
} catch (NumberFormatException ex){}
try {
n4 = Double.parseDouble(nilai4);
} catch (NumberFormatException ex){}
   
        this.setSize(600, 400);
        this.setTitle("Diagram Pie Data Covid-19");
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//membuatdiagram/chart jfreechart
//Membuat/mengkakulasikandata char
    PieDataset dataset = buildData();
    PieDataset dataset1 = buildData1();
// Membuatchart berdasarkandata yang adapadadataset
    JFreeChart chart = buildChart(dataset, "Data Penduduk Yang Terkena Covid 19");
    JFreeChart chart1 = buildChart1(dataset1, "Perbandingan Data Keselamatan");
// Memasukanchart padapanel agar lebihmudahditampilkanpadakomponenswing containe
    ChartPanel pieChart= new ChartPanel(chart);
    ChartPanel pieChart1= new ChartPanel(chart1);
//memasukanchart panel kedalamjpanel
    this.setContentPane(pieChart);
   
    JPanel panel = new JPanel(new GridLayout(2, 2));
        panel.add(new ChartPanel(chart));
        panel.add(new ChartPanel(chart1));
        setContentPane(panel);
}

    private JFreeChart buildChart(PieDataset dataset, String judul) {
        JFreeChart chart = ChartFactory.createPieChart3D("Data Penduduk Yang Terkena Covid 19", // Judul Chart
                dataset, // data chart yang akan di tampilkan
                true, // jika ya, maka akan legend chart/diagram ditampilkan
                true,
                false);
        PiePlot3D plot = (PiePlot3D) chart.getPlot();
        plot.setForegroundAlpha(0.6f);
        return chart;
    }
   
    private JFreeChart buildChart1(PieDataset dataset, String judul) {
    JFreeChart chart1 = ChartFactory.createPieChart3D("Perbandingan Data Keselamatan", // Judul Chart
                dataset, // data chart yang akan di tampilkan
                true, // jika ya, maka akan legend chart/diagram ditampilkan
                true,
                false);
        PiePlot3D plot = (PiePlot3D) chart1.getPlot();
        plot.setForegroundAlpha(0.6f);
   
        return chart1;
    }

private PieDataset buildData() {
    DefaultPieDataset dataSet= new DefaultPieDataset();
    dataSet.setValue("Positif"+n1, n1);
    dataSet.setValue("PDP"+n2, n2);
    dataSet.setValue("ODP"+n3, n3);
   
    return dataSet;
}
private PieDataset buildData1() { 
    DefaultPieDataset dataSet1= new DefaultPieDataset();
    dataSet1.setValue("Kematian"+n4, n4);
    dataSet1.setValue("Data Termasuk Positif, PDP, ODP",n1+n2+n3);
   
    return dataSet1;
}

public static void main(String[] args) {
    try {
           UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    } catch (Exception e) {
    }
    SwingUtilities.invokeLater(new Runnable() {
        @Override
            public void run() {
            new PieUts().setVisible(true);
        }
    });
}
}


Tidak ada komentar:

Posting Komentar