0% menganggap dokumen ini bermanfaat (0 suara)
1K tayangan

Mgg11 Python VisualisasiData

hhhhh

Diunggah oleh

ayyub shylsp
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
1K tayangan

Mgg11 Python VisualisasiData

hhhhh

Diunggah oleh

ayyub shylsp
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 52

Visualisasi Data

(tool: Python)

Tim Penyusun Materi Pengenalan Teknologi Informasi


Institut Teknologi Bandung © 2018
Objektif
• Mahasiswa memahami latar belakang dan pentingnya visualisasi
data
• Mahasiswa memahami prinsip-prinsip dasar visualisasi data, dan
mampu mengembangkan visualisasi data yang tepat
• Mahasiswa dapat menggunakan grafik yang disediakan Python
library untuk keperluan visualisasi data

29/10/2018 Pengenalan Teknologi Informasi 2


Pentingya Insight
Richard Hamming (1962):
“The purpose of computing is
insight not numbers”
Insight: wawanan/pengertian/pengetahuan yang
mendalam

Chris North:
Data-transfer via Vision vs Ears = 100MB/s : (<100b/s)

29/10/2018 Pengenalan Teknologi Informasi 3


Statistik tidak cukup?

Ref: [6]

29/10/2018 Pengenalan Teknologi Informasi 4


Statistik tidak cukup?
Visualisasi perlu? Anscombe’s Quartet

• Summary statistics mungkin


kehilangan trend penting
• Visualisasi data memudahkan
data anlaysis
• Visualisasi data dapat menampilkan
kerumitan data menjadi sederhana
dan menampilkan berbagai sudut
pandang dari data http://en.wikipedia.org/wiki/Anscombe%27s_quartet

(c) Angela Zoss ([email protected])

29/10/2018 Pengenalan Teknologi Informasi 5


Kelebihan Visualisasi Data
• Memberikan pengertian komprehensif atas data yang banyak
• Memungkinkan persepsi secara cepat terhadap property atau
karakteristik penting dari data.
• Dapat memperlihatkan secara cepat persoalan yang aa pada data,
misalnya ada nilai data yang tidak masuk akal, outlier, dll
• Memfasilitasi pemahaman terhadap fitur data, baik secara large-
scale maupun small-scale

29/10/2018 Pengenalan Teknologi Informasi 6


Beberapa Definisi
• Visualisasi Data :
• an umbrella term, mengkonversi sumber data ke dalam sebuah
representasi visual
• Visualisasi Saintifik:
• Visualisasi data saintifik yang berhubungan erat dengan objek
dunia-nyata yang memiliki property spasial
• Contoh: visualisasi data gempa, visualisasi arah angin
• Visualisasi Information
• Visualisasi dalam bentuk bagan (chart), grafik, metafora
spasial/visual yang digunakan untuk merepresentasikan
dataset yang tidak memiliki komponen spasial.
• Contoh: visualisasi harga saham, visualisasi perbandingan
jumlah mahasiswa ITB
10/29/2018 SA/IF5170/Pengantar Visualisasi 7
29/10/2018 Pengenalan Teknologi Informasi 7
Data
Contoh
Visualisasi
Saintifik

29/10/2018 Pengenalan Teknologi Informasi 8


Contoh Visualisasi Informasi

Sumber: https://www.federalreserve.gov/foia/2014currency.htm
29/10/2018 Pengenalan Teknologi Informasi 9
Data Visualization

Data Visualization:
the representaton and presentation of data
that exploits our visual perception abilities
in order to amplify cognition

(c) Andy Kirk, 2012


10/29/2018 SA/IF5170/Pengantar Visualisasi 10
29/10/2018 Pengenalan Teknologi Informasi 10
Data
Tujuan Visualisasi:
• Visualisasi untuk analisis (a.k.a. “visual analytics”)
• Eksploitasi kekuatan persepsi visual untuk mengekplor atau
menganalisis hubugan antar data
• Biasanya ditampilkan dalam berbagai bentuk atau sudut pandang
visualisasi untuk menemukan hubungan yang diinginkan

• Visualisasi untuk komunikasi


• Memilih view tertentu dari data untuk di-share
• Biasanya dilakukan dengan konstruksi visualisasi dengan tujuan
menjelaskan kepada audiens
(c) Angela Zoss ([email protected])

29/10/2018 Pengenalan Teknologi Informasi 11


Visualisasi
untuk
Tujuan
Analisis
(Exploratory)

29/10/2018 Pengenalan Teknologi Informasi 12


Visualisasi
untuk
Tujuan
Komunikasi
(Explanatory)

29/10/2018 Pengenalan Teknologi Informasi 13


Tahapan Visualisasi Data
1. Acquire: Obtain the data...
2. Parse: Provide some structure for the data’s meaning, and order it into categories.
3. Filter: Remove all but the data of interest.
4. Mine: Apply methods from statistics or data mining as a way to discern patterns or
place the data in mathematical context.
5. Represent: Choose a basic visual model, such as a bar graph, list, or tree.
6. Refine: Improve the basic representation to make it clearer and more visually engaging.
7. Interact: Add methods for manipulating the data or controlling
what features are visible.

Note: stages are often iterative and may have a flexible order or
even be omitted in some projects.
Fry, B. (2008). Visualizing data. Sebastopol, CA: O’Reilly Media, Inc.
(c) Angela Zoss ([email protected])

29/10/2018 Pengenalan Teknologi Informasi 14


10/29/2018 14
Tipe Data
• Categorical-Nominal
• Nama negara, warna kulit, nama program studi, dll
• Categorical-Ordinal
• Likert scale (“sangat setuju” s.d. “sangat tidak setuju”)
• Indeks nilai A, B, C, D, E
• Categorical-Binary
• Jenis kelamin, status mahasiswa (aktif, tidak aktif), dll
• Quantitative-Discrete
• Banyaknya anak, banyaknya mahasiswa, banyaknya sks lulus
• Quantitative-Continues
• Usia, berat badan, tinggi, suhu

29/10/2018 Pengenalan Teknologi Informasi 15


Klasifikasi Visualisasi Data
• Perbandingan Kategori (Comparing Categories)
• Penampilan Perubahan Terhadap Waktu (Showing over Times)
• Penampilan Hirarki dan Hubungan Keseluruhan-Bagian (Whole-
part relationship)
• Plotting relationships
• Pemetaan Data Geospatial (tidak dibahas di kuliah ini)

29/10/2018 Pengenalan Teknologi Informasi 16


29/10/2018 Pengenalan Teknologi Informasi 17
Comparing Categories
• Membandingkan nilai-nilai dari suatu variabel bersifat kategorikal
• Contoh: membandingkan jumlah mahasiswa untuk beberapa prodi,
pendapatan per kapita negara-negara di dunia,
• Grafik yang dapat digunakan:
• [Vertical/Horizontal] bar chart/column chart
• Histogram
• Radial chart
• Dot plot
• Dll.

29/10/2018 Pengenalan Teknologi Informasi 18


Comparing categories: Bar chart
• Bar chart/grafik garis: Menggunakan batang vertikal atau
horizontal untuk menunjukkan perbandingan nilai-nilai numerik
pada kategori-kategori tertentu

29/10/2018 Pengenalan Teknologi Informasi 19


Comparing categories: Histogram chart
• Histogram: Memvisualisasikan distribusi data untuk interval-
interval nilai atau periode waktu. Setiap batang pada histogram
merepresentasikan frekuensi data untuk tiap interval.

29/10/2018 Pengenalan Teknologi Informasi 20


Comparing categories: Dot plot
• Dot chart/dot plot : adalah chart di mana titik-titik data di-plot-
kan ke atas skala sederhana,
• Dot plot merupakan alternative dari bar chart untuk
merepresentasikan nilai-nilai kuantitatif berasosiasi dengan
variable kategorikal

29/10/2018 Pengenalan Teknologi Informasi 21


Comparing categories: Radial [bar] chart
• Radial [bar] chart: bar
chart yang diplot di
atas sistem koordinat
polar
• Problem: panjang
batang dapat salah
diinterpretasi

29/10/2018 Pengenalan Teknologi Informasi 22


Penampilan Perubahan Terhadap Waktu
(Showing over Times)
• Visualisasi menampilkan data dalam suatu periode waktu untuk
menemukan trend atau perubahan terkait waktu
• Grafik/chart yang dapat digunakan:
• Line chart
• Area chart + stacked area chart
• Histogram
• Dll.

29/10/2018 Pengenalan Teknologi Informasi 23


Showing over times: Line chart
• Line chart: menggunakan garis yang menghubungkan titik-titik
data untuk menunjukkan perubahan terkait waktu atau interval
nilai tertentu

29/10/2018 Pengenalan Teknologi Informasi 24


Showing over times:
Area Chart + Stacked Area Chart
• Area chart menggunakan
wilayah di bawah garis (seperti
pada line chart) untuk
menyatakan data kuantitatif
terkait waktu
• Stacked Area Chart terdiri atas
beberapa area chart yang
bertumpuk satu di atas yang lain
yang menandakan kategori yang
berbeda

29/10/2018 Pengenalan Teknologi Informasi 25


Penampilan Hierarki dan Hubungan Keseluruhan-
Bagian (Whole-part relationship)
• Hierarki: Menampilkan bagaimana ranking atau urutan data atau
objek dirangking
• Whole-part relationship: menunjukkan proporsi bagian-bagian
pada suatu variabel dari keseluruhannya
• Grafik yang dapat digunakan:
• Pie chart
• Stacked bar chart
• Treemap
• Dll.

29/10/2018 Pengenalan Teknologi Informasi 26


Hierarchy + Whole Part Relationship:
Pie Chart
• Pie chart: menunjukkan proporsi/persentase dari kategori-
kategori dalam suatu variable

29/10/2018 Pengenalan Teknologi Informasi 27


Hierarchy + Whole Part Relationship:
Stacked Bar Chart
• Stacked bar chart: menampilkan bagian-bagian dari total nilai
untuk suatu kategori dalam satu bar/batang

29/10/2018 Pengenalan Teknologi Informasi 28


Hierarchy + Whole Part Relationship:
TreeMap
• Treemap: menunjukkan struktur hierarki dari nilai kuantitatif
melalui ukuran area

29/10/2018 Pengenalan Teknologi Informasi 29


Plotting relationships
• Menunjukkan hubungan-hubungan antar data atau korelasi antara
2 variable atau lebih
• Grafik yang dapat digunakan:
• Scatter plot
• Bubble plot
• Heatmap
• Dll.

29/10/2018 Pengenalan Teknologi Informasi 30


Plotting Relationship: Scatter Plot
• Scatter plot terdiri atas titik-titik nilai yang dipetakan di atas
koordinat x dan y yang merepresentasikan nilai dari 2 variable
• Dapat digunakan untuk menunjukkan korelasi antara kedua
variabel

29/10/2018 Pengenalan Teknologi Informasi 31


Plotting Relationship: Bubble plot
• Bubble plot adalah grafik multi-variable yang memplot nilai-nilai
kuantitatif dalam bentuk lingkaran yang berbeda luasnya.

29/10/2018 Pengenalan Teknologi Informasi 32


Plotting Relationship: Heatmap
• Heatmap digunakan untuk memvisualisasikan data melalui
berbagai variasi warna. Dalam bentuk tabular, heatmap dapat
digunakan untuk memetakan data dari 2 variable atau lebih.

29/10/2018 Pengenalan Teknologi Informasi 33


Matplotlib
• Matplotlib adalah library di
Python yang digunakan untuk
plotting grafik 2 dimensi dalam
berbagai format
• pyplot adalah modul untuk plotting
sederhana dengan interface yang
mirip seperti MATLAB
• Dikembangkan oleh John Hunter
(1968-2012) dan rekan-rekan,
merupakan salah satu library yang
banyak dimanfaatkan untuk
visualisasi data saintifik
29/10/2018 Pengenalan Teknologi Informasi 34
Contoh data-1
• data.csv

• Load pandas dan dataframe dari file data.csv


import pandas as pd
df = pd.read_csv("D:/data.csv")

• Load library matplotlib.pyplot Lebih lanjut fungsi plot pada dataframe:


https://pandas.pydata.org/pandas-
import matplotlib.py as plt docs/stable/generated/pandas.DataFra
me.plot.html

29/10/2018 Pengenalan Teknologi Informasi 35


Bar chart (1)
• Buat vertical bar chart untuk
menampilkan umur dari setiap
orang
import pandas as pd
import matplotlib.py as plt

df = pd.read_csv("D:/data.csv")
df.plot(kind="bar",x="name",y="age",title="Age of Person")
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 36


Bar Chart (2)
• Tampilkan banyaknya anak (num_children) dan banyaknya
piaraan (num_pets) dalam 1 grafik vertical bar chart
df.plot(kind="bar",x="name",y=["num_children","num_pets"])
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 37


Horizontal Bar Chart
df.plot(kind="barh",x="name",y="age",title="Age of Person",
color="red")
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 38


Histogram
• Tampilkan distribusi orang berdasarkan kelompok umur: 0-20;
21-40; 41-60; 61-80; 81-100
df[["age"]].plot(kind="hist",bins=[0,20,40,60,80,100],rwidth=0.8)
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 39


Pie Chart
• Tampilkan komposisi banyaknya orang berdasarkan negara
• Langkah:
• Hitung distribusi frekuensi (lihat bahan kuliah sebelumnya)
• Plot ke pie chart

df2 = df["state"].value_counts()
df2.plot(kind = "pie")
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 40


Stacked Bar Chart (1)
• Tampilkan data banyaknya data per jenis kelamin (gender) per
negara bagian (state)
• Langkah:
1. Membuat tabel pivot: menggunakan perintah group by,
kelompokkan data terlebih dahulu
Misalnya: group by berdasarkan kolom gender, state, lalu count banyaknya
data (misal berdasarkan kolom name)
df3 = df.groupby(["gender","state"])["name"].size().unstack()
df3

29/10/2018 Pengenalan Teknologi Informasi 41


Stacked Bar Chart (2)
• Langkah:
2. Plot df3 ke bar chart dan stacked = True

df3.plot(kind="bar",stacked=True)
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 42


Stacked Bar Chart (3)
• Tampilkan banyaknya anak
(num_children) dan banyaknya
piaraan (num_pets) dalam 1 grafik
stacked bar chart
df.plot(kind = "bar", x = "name",
y=["num_children","num_pets"],
stacked = True)
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 43


Contoh Data-2: Time-series
• animal.csv
• Load data:
df1 = pd.read_csv("D:/animal.csv")

29/10/2018 Pengenalan Teknologi Informasi 44


Line Chart (1)
• Tampilkan pertumbuhan populasi beruang (Bears) dari tahun ke
tahun dalam line chart
df1.plot(kind="line",x="Year",y="Bears")
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 45


Line Chart (2)
• Tampilkan pertumbuhan populasi
beruang (Bears), lumba-lumba
(Dolphins), dan ikan paus
(Whales) dari tahun ke tahun
dalam 1 line chart

df1.plot(kind="line",x="Year",
y=["Bears","Dolphins","Whales"])
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 46


Area Chart
• Tampilkan pertumbuhan populasi
lumba-lumba (Dolphins) dari
tahun ke tahun dalam area chart

df1.plot(kind="area",x="Year",
y="Dolphins")
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 47


Stacked Area Chart
• Tampilkan pertumbuhan populasi
beruang (Bears), lumba-lumba
(Dolphins), dan ikan paus
(Whales) dari tahun ke tahun
dalam stacked area chart
df1.plot(kind="area",x="Year",
y=["Bears","Dolphins","Whales"])
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 48


Contoh Data-3: medali Asian Games
• Kembali ke contoh pada materi kuliah sebelumnya: file medali.csv
• Load data:
df4 = pd.read_csv("D:/medali.csv")

29/10/2018 Pengenalan Teknologi Informasi 49


Scatter Plot
• Tampilkan relationship antara
variable gold dan total dalam
grafik scatter plot dan
tunjukkan adanya korelasi
positif
df4.plot(kind="scatter",
x="gold", y="total")
Alternatif:
df4.plot.scatter(x="gold",
y="total")

plt.show

29/10/2018 Pengenalan Teknologi Informasi 50


Bubble Plot
• Tampilkan banyaknya total medali
dikaitkan dengan perolehan nilai
medali emas (gold) pada sumbu x
dan perolehan medali perak (silver)
pada sumbu y dalam grafik bubble
plot
• Bubble plot di Python dibuat
berdasarkan scatter plot
df4.plot(kind="scatter",x="gold",
y="silver",sizes=df4["total"],
color="orange")
plt.show()

29/10/2018 Pengenalan Teknologi Informasi 51


Menyimpan grafik ke file
df.plot(kind="bar",x="name",y="age",title="Age of Person")
plt.savefig("D:/agebarchart.png")

29/10/2018 Pengenalan Teknologi Informasi 52

Anda mungkin juga menyukai