Jobsheet 8
Data Visualization
Kompetensi Dasar
• Mahasiswa dapat menampilkan data dalam berbagai bentuk.
Visuailisasi Data
Visualisasi data adalah hal yang sangat penting mengingat manusiaadalah makhluk visual, 80%
orang lebih mudah memahami sesuatu secara visual. Dengan adanya visualisasi data ini, mulai
dari pengambilan keputusan sampai evaluasi dapat dipahami dengan lebih baik.
Pengertian
Visualisasi data adalah tampilan berupa grafis atau visual dari informasi dan data. Dengan kata
lain, Visualisasi data adalah proses dimana kumpulan data diubah menjadi bentuk visual yang
lebih sederhana untuk ditampilkan.
Elemen visual yang digunakan akan mempermudah pembaca untuk memahami tren, outliers,
dan pola dalam suatu data. Dari pemahaman tersebut, dapat dilakukan analisis dan pemahaman
yang lebih mengennai data yang ada untuk evaluasi dan pengambilan keputusan.
Kegunaan
Salah satu kegunaan Visualisasi data adalah untuk mempermudah komunikasi antar stakeholder
atau orang lain yang tidak berhubungan langsung dengan data tersebut. Visualisasi data
memberikan informasi yang sangat berguna di banyak bidang. Dengan variabel-variabel yang
ada, pengambilan keputusan dapat dilakukan dengan mudah.
Visuailisasi data juga sangat berguna untuk analisis, dimana banyak sekali informasi yang bisa
di dapat dengan memvisualisasikan data disbanding dengan data mentah. Dengan begitu,
pemahaman tentang data tersebut akan jauh lebih dalam.
Dosen Pengampu: Dr. Kurnianingsih, S.T., M.T.
Dengan berbagai macam bentuk data, maka beragam juga cara untuk memvisualisasikan data.
1. Temporal
Visualisasi Temporal cocok untuk menunjukan data yang berbentuk linear atau satu
dimensi. Ciri utama dari Visualisasi temporal adalah garis yang bermulai dan berakhir di
titik tertentu. Garis tersebut dapat berdisi sendiri ataupun bersinggungan dengan garis
lainnya.
Contohnya adalah diagram scatterplot, timeline, time series, dan diagram garis.
2. Hierarki
Visualisasi hierarki umum digunakan untuk menunjukan hubungan antara kumpulan data
dengan kumpulan data lainnya. hubungan antar data tersebut dapat sama besar, lebih
besar, ataupun lebih kecil. Visualisasi ini berguna untuk menunjukan data-data baru yang
muncul karena suatu sebab.
Contohnya adalah diagram pohon.
Dosen Pengampu: Dr. Kurnianingsih, S.T., M.T.
3. Network
Visualisasi network digunakan unutk mempermudah memahami hubungan antar dataset,
karena dataset sendiri dapat berpengaruh satu sama lain.
Contohnya adalah world cloud dan node-link diagram.
4. Multidimensi
Visualisasi multidimensi cocok untuk menampilkan data yang memiliki banyak dimensi
atau variabel. Karena data yang sangat banyak, biasanya data yang ditampilkan dengan
visualisasi ini dibuat mencolok dan menarik mata.
Contohnya adalah histogram, pie chart, dan stacked-bar.
Dosen Pengampu: Dr. Kurnianingsih, S.T., M.T.
5. Geospasial
Visualisasi geospasial merepresentasikan wujud nyata dari suatu benda, lokasi, atau
ruang yang memiliki data. Umumnya geospasial digunakan untuk membedakan data
pada setiap wilayah.
Contohnya adalah heatmap, dan kartograf.
Dosen Pengampu: Dr. Kurnianingsih, S.T., M.T.
Praktikum
1. Visualisasi Data
plt.subplot(212)
plt.plot(p1, np.cos(p1), 'r--')
plt.show()
#Temporary styling
with plt.style.context(('dark_background')):
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.show()
#Box plots
#Lets add some data and plot the box plot
## Creating some data
np.random.seed(10)
box_data_1 = np.random.normal(100, 10, 200)
box_data_2 = np.random.normal(80, 30, 200)
box_data_3 = np.random.normal(90, 20, 200)
#Heat Maps
#Adding some data
# Generate Data
data = np.random.rand(10,6)
rows = list('ZYXWVUTSRQ')
columns = list('ABCDEF')
plt.pcolor(data)
plt.show()
#We'll add the row and column labels to the heat map
# Add Row/Column Labels
plt.pcolor(data)
plt.xticks(np.arange(0,6)+0.5,columns)
Dosen Pengampu: Dr. Kurnianingsih, S.T., M.T.
plt.yticks(np.arange(0,10)+0.5,rows)
plt.show()
plt.close()
#For a large amount of values that needs to be visualized using the heatmap
plt.clf()
plt.imshow(heatmap, extent=extent)
plt.show()
axScatter = plt.axes(rect_scatter)
axHistx = plt.axes(rect_histx)
axHisty = plt.axes(rect_histy)
# no labels
axHistx.xaxis.set_major_formatter(nullfmt)
axHisty.yaxis.set_major_formatter(nullfmt)
axHistx.set_xlim( axScatter.get_xlim() )
axHisty.set_ylim( axScatter.get_ylim() )
plt.show()
#Scatter Matrix
df = pd.DataFrame(np.random.randn(1000, 4), columns=['a', 'b', 'c', 'd'])
spm = pd.plotting.scatter_matrix(df, alpha=0.2, figsize=(6, 6), diagonal='hist')
##Area Plot
#The area plot below is basically stacked across the instances
df = pd.DataFrame(np.random.rand(10, 4), columns=['p', 'q', 'r', 's'])
df.plot(kind='area');
df.plot(kind='area', stacked=False);
#Bubble Chart
df = pd.DataFrame(np.random.rand(50, 4), columns=['a', 'b', 'c', 'd'])
df.plot(kind='scatter', x='a', y='b', s=df['c']*400);
#Let's adjust the view using the view_int. The following is the view at 0 elevation and 0 degree angle.
fig = plt.figure()
ax = Axes3D(fig)
ax.view_init(elev=0., azim=0)
ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap='hot')
#Seaborn
Import seaborn as sns
#Distribution Plot
# Selecting style as white,
Dosen Pengampu: Dr. Kurnianingsih, S.T., M.T.
# Line Plot
sns.set(style="dark")
fmri = sns.load_dataset("fmri")
# Plot the responses for different\
# events and regions
sns.lineplot(x="timepoint",
y="signal",
hue="region",
style="event",
data=fmri)