Dalam artikel ini, kita akan membahas bagaimana menggabungkan dua dataset yang berbeda yaitu Google (GOOG) dan Apple (AAPL) untuk memvisualisasikan hubungan antara harga saham mereka. Kita juga akan menggunakan teknologi Bokeh untuk membuat plot interaktif.
Menggabungkan Dataset
Pertama-tama, kita harus menggabungkan dataset GOOG dan AAPL berdasarkan tanggal. Dengan demikian, kita dapat memastikan bahwa harga saham pada tanggal yang sama akan terlihat seimbang.
df_goog = df[df['Name'] == 'GOOG']
df_apple = df[df['Name'] == 'AAPL']
# Select only 'date' and 'high' columns for Google and Apple
df_goog = df_goog[['date','high']]
df_apple = df_apple[['date','high']]
# Rename 'high' column to 'high_goog' and 'high_apple'
df_goog.rename(columns={'high': 'high_goog'}, inplace=True)
df_apple.rename(columns={'high': 'high_apple'}, inplace=True)
df_merged = pd.merge(df_goog, df_apple, how='inner', on='date')
# See the first five rows
df_merged.head(5)
Membuat Plot Scatter
Selanjutnya, kita akan membuat plot scatter untuk memvisualisasikan hubungan antara harga saham Google dan Apple.
import bokeh.plotting as plotting
plot = plotting.figure(title= "Pandas Scatter Plot", x_axis_label = "Apple high prices", y_axis_label= "Google high prices")
plot.circle(x = df_merged['high_apple'], y = df_merged['high_goog'],color = 'red', size = 10, alpha = 0.8)
show(plot)
Plot scatter ini menunjukkan bahwa terdapat hubungan positif antara harga saham Google dan Apple.
Menggunakan ColumnDataSource
Dalam tutorial ini, kita juga akan membahas tentang ColumnDataSource yang digunakan untuk membuat plot interaktif.
from bokeh.io import output_file, show
from bokeh.plotting import figure, ColumnDataSource
df_goog['date'] = pd.to_datetime(df_goog['date'])
data = ColumnDataSource(df_goog)
# Create time series plot
plot = figure(x_axis_type='datetime',
title='GOOG high prices ts plot',
x_axis_label = "Date",
y_axis_label = "Prices in $")
plot.line(x='date', y = 'high_goog', source = data, color = 'green')
show(plot)
Plot time series ini menunjukkan evolusi harga saham Google selama 5 tahun dengan garis hijau yang menunjukkan setiap nilai harga.
Membuat Plot Scatter dengan ColumnDataSource
Selanjutnya, kita akan membuat plot scatter lainnya menggunakan ColumnDataSource.
# Import packages
from bokeh.io import output_file, show
from bokeh.plotting import figure, ColumnDataSource
# Create the ColumnDataSource object
df_goog['date'] = pd.to_datetime(df_goog['date'])
data = ColumnDataSource(df_goog)
# Create time series plot
plot = figure(x_axis_type='datetime',
title='GOOG high prices ts plot',
x_axis_label = "Date",
y_axis_label = "Prices in $")
plot.line(x='date', y = 'high_goog', source = data, color = 'green')
plot.diamond(x='date', y = 'high_goog', source = data, color = 'red')
show(plot)
Plot scatter ini menunjukkan evolusi harga saham Google selama 5 tahun dengan bola merah yang menunjukkan setiap nilai harga.
Kesimpulan
Dalam tutorial ini, kita telah mempelajari bagaimana menggabungkan dataset GOOG dan AAPL untuk memvisualisasikan hubungan antara harga saham mereka. Kita juga telah menggunakan teknologi Bokeh untuk membuat plot interaktif. Dalam tutorial berikutnya, kita akan mempelajari cara membuat layout yang efektif untuk membuat visualisasi data yang interaktif.