Welcome

Have Fun..!

SOFTWARE

Di blog ini Anda bisa Download berbagai macam Software secara gratis and Have fun.

Music

Di blog ini anda akan mendapatkan berbagai macam music terkeren,lagu-lagu terbaru-terpopuler,juga info-info seputar music yang terupdate dan teknik marching band pun di bahas di blog ini

Motor Sport

Di blog ini Anda bisa melihat berbagai macam motor sport (moge) beserta spesifikasi dan lain-lain nya.

Games

Di blog ini anda akan mendapatkan berbagai macam games-games free/pro yang seru yang bisa anda download dan juga walktrought nya

Dan berbagai macam lainnya yang menarik untuk di kunjungi

Di blog ini anda akan mendapatkan berbagai macam hal-hal menarik seperti di antaranya mengenai National geographi, film, komedi, berita terupdate,tips,trik,hack,kesehatan bahkan Source Code Java

Program Grafik IP mahasiswa PTIIK

Program Grafik IP mahasiswa PTIIK

    kasus/soal:
Membuat aplikasi Graphics and animation
    cara membuat dan source code :

buat project Android seperti biasa. Kemudian kita letakkan file library AChartEngine, misal yang penulis gunakan adalah achartengine-1.0.0.jar, dicopy dari Explorer, buka Eclipse, buka folder libs di project yang sedang dibuat kemudian Paste.

   Setelah itu tuliskan kode program di MainActivity.java sebagai berikut :

package com.example.androidchart;

import java.util.Random;

import org.achartengine.ChartFactory;
import org.achartengine.GraphicalView;
import org.achartengine.chart.BarChart.Type;
import org.achartengine.chart.PointStyle;
import org.achartengine.model.XYMultipleSeriesDataset;
import org.achartengine.model.XYSeries;
import org.achartengine.renderer.XYMultipleSeriesRenderer;
import org.achartengine.renderer.XYSeriesRenderer;

import android.app.Activity;
//import android.database.Cursor;
//import android.database.sqlite.SQLiteDatabase;
import android.graphics.Color;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.Menu;
import android.widget.LinearLayout;

public class MainActivity extends Activity {
//    protected Cursor cursor;
//    SQLHelper dbHelper;
       
        private GraphicalView mChart;
       
        private XYSeries visitsSeries ;
        private XYMultipleSeriesDataset dataset;
       
        private XYSeriesRenderer visitsRenderer;
        private XYMultipleSeriesRenderer multiRenderer;
       
        public double[] arrnilai = {31,35,29,26,30,24,20,35};
        public String[] arrurutan = {"1", "2", "3", "4", "5", "6", "7", "8"}; //"14/4", "18/4", "24/4", "30/4", "7/5"};
        public String[] arrlabel = {"1", "2", "3", "4", "5", "6", "7", "8"};

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
/*        dbHelper = new SQLHelper(this);
       
        SQLiteDatabase db = dbHelper.getReadableDatabase();

                       cursor = db.rawQuery("SELECT * FROM histori WHERE id_member = '" + MainActivity.idlogin + "' ORDER BY id_histori ASC",null);

                       arrlemak = new double[cursor.getCount()];
                       arrurutan = new String[cursor.getCount()];
                       arrtgl = new String[cursor.getCount()];
                       cursor.moveToFirst();
                       for (int cc=0; cc < cursor.getCount(); cc++)
                       {
                                      cursor.moveToPosition(cc);
                                      arrlemak[cc] = Double.parseDouble(cursor.getString(2).toString());
                                      arrurutan[cc] = String.valueOf(cc+1);
                                      arrtgl[cc] = cursor.getString(4).toString();
                       }
*/       
        // Setting up chart
        setupChart();
     
        // Start plotting chart
        new ChartTask().execute();     
    }
    private void setupChart(){
       
        // Creating an  XYSeries for Visits
        visitsSeries = new XYSeries("- IP mahasiswa PTIIK tiap Semester -");
       
       
        // Creating a dataset to hold each series
        dataset = new XYMultipleSeriesDataset();
        // Adding Visits Series to the dataset
        dataset.addSeries(visitsSeries);     
       
       
        // Creating XYSeriesRenderer to customize visitsSeries
        visitsRenderer = new XYSeriesRenderer();
        visitsRenderer.setColor(Color.rgb(0, 150, 255));
        visitsRenderer.setPointStyle(PointStyle.CIRCLE);
        visitsRenderer.setFillPoints(true);
        visitsRenderer.setLineWidth(2);
        visitsRenderer.setDisplayChartValues(true);
       
       
        // Creating a XYMultipleSeriesRenderer to customize the whole chart
        multiRenderer = new XYMultipleSeriesRenderer();
       
        multiRenderer.setChartTitle("*-persentase IP mahasiswa PTIIK-*");
        multiRenderer.setXTitle("Semester");
        multiRenderer.setYTitle("persentase IP");
        multiRenderer.setZoomButtonsVisible(true);
        multiRenderer.setXLabels(0);
       
        multiRenderer.setXAxisMin(0);
        multiRenderer.setXAxisMax(5);
       
        multiRenderer.setYAxisMin(0);
        multiRenderer.setYAxisMax(40);
       
        multiRenderer.setBarSpacing(2);
       
        // Adding visitsRenderer to multipleRenderer
        // Note: The order of adding dataseries to dataset and renderers to multipleRenderer
        // should be same
        multiRenderer.addSeriesRenderer(visitsRenderer);
       
        // Getting a reference to LinearLayout of the MainActivity Layout
        LinearLayout chartContainer = (LinearLayout) findViewById(R.id.chart_container);
       
                      
        mChart = (GraphicalView) ChartFactory.getBarChartView(getBaseContext(), dataset, multiRenderer, Type.DEFAULT);
       
       
                       // Adding the Line Chart to the LinearLayout
        chartContainer.addView(mChart);
       
    }
   
   
    private class ChartTask extends AsyncTask<Void, String, Void>{

        // Generates dummy data in a non-ui thread
                       @Override
                       protected Void doInBackground(Void... params) {
                                      int i = 0;
                                      try{
                                                     do{
                                                                    String [] values = new String[3];
                                                                    Random r = new Random();
                                                                    int visits = r.nextInt(10);
                                                                   
                                                                    values[0] = arrurutan[i]; // Integer.toString(i);
                                                                    values[1] = String.valueOf(arrnilai[i]); //Integer.toString(visits);
                                                                    values[2] = arrlabel[i];
                                                                                                 
                                                                    publishProgress(values);                                                              
                                                                    Thread.sleep(750);
                                                                    i++;
                                                     }while(i<=4);
                                      }catch(Exception e){ }
                                      return null;
                       }
                      
                       // Plotting generated data in the graph
                       @Override
                       protected void onProgressUpdate(String... values) {
                                      visitsSeries.add(Double.parseDouble(values[0]), Double.parseDouble(values[1]));
                                      multiRenderer.addXTextLabel(Double.parseDouble(values[0]), arrlabel[Integer.parseInt(values[0])-1]);
                                      mChart.repaint();
                       }
       
    }   

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}

-  Buat layout tampilan di activity_main.xml sebagai berikut :


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
    
    <TextView
        android:id="@+id/tv_title"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="Android Chart" />
    
    <LinearLayout 
        android:id="@+id/chart_container"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/tv_title" >
        
    </LinearLayout>

</RelativeLayout>



- Untuk AndroidManifest.xml tidak perlu dirubah atau ditambah :


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.androidchart"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk

        android:minSdkVersion="8"
        android:targetSdkVersion="16" />

    <application

        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.androidchart.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>
        </activity>
    </application>

</manifest>











·       screenshoot: