Diagram OHLC, Diagram Air Terjun, dan Diagram Corong
Bab ini berfokus pada tiga jenis bagan lainnya termasuk OHLC, Waterfall dan Funnel Chart yang dapat dibuat dengan bantuan Plotly.
Diagram OHLC
Sebuah open-high-low-close bagan (juga OHLC) adalah sejenis bar chartbiasanya digunakan untuk menggambarkan pergerakan harga instrumen keuangan seperti saham. Grafik OHLC berguna karena menunjukkan empat titik data utama selama suatu periode. Jenis bagan berguna karena dapat menunjukkan peningkatan atau penurunan momentum. Titik data tinggi dan rendah berguna dalam menilai volatilitas.
Setiap garis vertikal pada grafik menunjukkan kisaran harga (harga tertinggi dan terendah) selama satu unit waktu, seperti hari atau jam. Tanda centang proyek dari setiap sisi garis yang menunjukkan harga pembukaan (misalnya, untuk grafik batang harian ini akan menjadi harga awal untuk hari itu) di sebelah kiri, dan harga penutupan untuk periode waktu itu di sebelah kanan.
Contoh data untuk demonstrasi diagram OHLC ditunjukkan di bawah ini. Ini memiliki daftar objek yang sesuai dengan nilai tinggi, rendah, buka dan tutup seperti pada string tanggal yang sesuai. Representasi tanggal dari string diubah menjadi objek tanggal dengan menggunakanstrtp() berfungsi dari modul datetime.
open_data = [33.0, 33.3, 33.5, 33.0, 34.1]
high_data = [33.1, 33.3, 33.6, 33.2, 34.8]
low_data = [32.7, 32.7, 32.8, 32.6, 32.8]
close_data = [33.0, 32.9, 33.3, 33.1, 33.1]
date_data = ['10-10-2013', '11-10-2013', '12-10-2013','01-10-2014','02-10-2014']
import datetime
dates = [
datetime.datetime.strptime(date_str, '%m-%d-%Y').date()
for date_str in date_data
]
Kita harus menggunakan objek tanggal di atas sebagai parameter x dan lainnya untuk parameter buka, tinggi, rendah, dan tutup yang diperlukan go.Ohlc() fungsi yang mengembalikan jejak OHLC.
trace = go.Ohlc(
x = dates,
open = open_data,
high = high_data,
low = low_data,
close = close_data
)
data = [trace]
fig = go.Figure(data = data)
iplot(fig)
Output dari kode diberikan di bawah ini -
Grafik Lilin
Itu candlestick chartmirip dengan grafik OHLC. Ini seperti kombinasiline-chart dan a bar-chart. Kotak mewakili penyebaran antara nilai buka dan tutup dan garis mewakili penyebaran antara nilai rendah dan tinggi. Titik sampel dimana nilai tutupnya lebih tinggi (lebih rendah) maka nilai buka disebut bertambah (menurun).
Jejak kandil dikembalikan oleh go.Candlestick() function. Kami menggunakan data yang sama (seperti untuk grafik OHLC) untuk membuat grafik candlestick seperti yang diberikan di bawah ini -
trace = go.Candlestick(
x = dates,
open = open_data,
high = high_data,
low = low_data,
close = close_data
)
Output dari kode yang diberikan di atas disebutkan di bawah ini -
Bagan air terjun
Bagan air terjun (juga dikenal sebagai flying bricks chart or Mario chart) membantu dalam memahami efek kumulatif dari nilai positif atau negatif yang diperkenalkan secara berurutan yang dapat berbasis waktu atau berdasarkan kategori.
Nilai awal dan akhir ditampilkan sebagai kolom dengan penyesuaian negatif dan positif individu yang digambarkan sebagai langkah mengambang. Beberapa bagan air terjun menghubungkan garis di antara kolom untuk membuat bagan terlihat seperti jembatan.
go.Waterfall()fungsi mengembalikan jejak air terjun. Objek ini dapat disesuaikan dengan berbagai argumen atau atribut bernama. Di sini, atribut x dan y menyiapkan data untuk koordinat x dan y dari grafik. Keduanya bisa berupa list Python, numpy array atau Pandas series atau string atau objek waktu tanggal.
Atribut lainnya adalah measureyang merupakan larik yang berisi jenis nilai. Secara default, nilainya dianggap sebagairelative. Setel ke 'total' untuk menghitung jumlah. Jika itu sama denganabsoluteitu menyetel ulang total yang dihitung atau mendeklarasikan nilai awal jika diperlukan. Atribut 'base' menetapkan tempat dasar batang digambar (dalam unit sumbu posisi).
Kode berikut membuat bagan air terjun -
s1=[
"Sales",
"Consulting",
"Net revenue",
"Purchases",
"Other expenses",
"Profit before tax"
]
s2 = [60, 80, 0, -40, -20, 0]
trace = go.Waterfall(
x = s1,
y = s2,
base = 200,
measure = [
"relative",
"relative",
"total",
"relative",
"relative",
"total"
]
)
data = [trace]
fig = go.Figure(data = data)
iplot(fig)
Output yang disebutkan di bawah ini adalah hasil dari kode yang diberikan di atas.
Bagan Corong
Bagan corong mewakili data dalam berbagai tahapan proses bisnis. Ini adalah mekanisme penting dalam Business Intelligence untuk mengidentifikasi area masalah potensial dari suatu proses. Bagan corong digunakan untuk memvisualisasikan bagaimana data berkurang secara progresif saat berpindah dari satu fase ke fase lainnya. Data di masing-masing fase ini direpresentasikan sebagai bagian berbeda dari 100% (keseluruhan).
Seperti bagan Pai, bagan Corong juga tidak menggunakan sumbu apa pun. Itu juga dapat diperlakukan sebagai mirip dengan astacked percent bar chart. Setiap corong terdiri dari bagian atas yang disebut kepala (atau alas) dan bagian bawah disebut leher. Penggunaan diagram Corong yang paling umum adalah dalam memvisualisasikan data konversi penjualan.
Plotly's go.Funnel()fungsi menghasilkan jejak Corong. Atribut penting yang harus disediakan untuk fungsi ini adalah x dany. Masing-masing diberi daftar item atau array Python.
from plotly import graph_objects as go
fig = go.Figure(
go.Funnel(
y = [
"Website visit",
"Downloads",
"Potential customers",
"Requested price",
"invoice sent"
],
x = [39, 27.4, 20.6, 11, 2]
)
)
fig.show()
Outputnya seperti yang diberikan di bawah ini -