Tutorial Plot Python

Plotly adalah perusahaan analitik yang dikenal karena mengembangkan alat analitik, statistik, dan grafik waktu nyata untuk aplikasi berbasis web dan skrip Python mandiri. Dalam pelajaran ini, kita akan melihat contoh-contoh dasar dengan Plotly dan membangun grafik data deret waktu yang sederhana dan intuitif yang akan 100% bersifat interaktif namun mudah untuk dirancang. Grafik ini dapat digunakan dalam presentasi karena sepenuhnya interaktif dan siap untuk dimainkan.

Ada juga opsi untuk menyimpan desain grafik secara offline sehingga dapat diekspor dengan mudah. Ada banyak fitur lain yang membuat useran perpustakaan sangat mudah:

  • Simpan grafik untuk useran offline sebagai grafik vektor yang sangat dioptimalkan untuk tujuan cetak dan publikasi
  • Bagan yang diekspor dalam format JSON dan bukan format gambar. JSON ini dapat dimuat ke alat visualisasi lain seperti Tableau dengan mudah atau dimanipulasi dengan Python atau R
  • Karena grafik yang diekspor bersifat JSON, praktis sangat mudah untuk menyematkan grafik ini ke dalam aplikasi web
  • Plotly adalah alternatif yang baik untuk Matplotlib untuk visualisasi

Untuk mulai menggunakan paket Plotly, kita perlu mendaftar akun di situs web yang disebutkan sebelumnya untuk mendapatkan nama user dan kunci API yang valid yang dengannya kita dapat mulai menggunakan fungsinya. Untungnya, paket harga gratis tersedia untuk Plotly yang dengannya kami mendapatkan cukup banyak fitur untuk membuat bagan tingkat produksi.

Installing Plotly

Sekedar catatan sebelum memulai, Anda dapat menggunakan lingkungan virtual untuk pelajaran ini yang dapat kita buat dengan perintah berikut:

python -m virtualenv plotly
source numpy/bin/activate

Setelah lingkungan virtual aktif, Anda dapat menginstal pustaka Plotly dalam env virtual sehingga contoh yang kita buat selanjutnya dapat dieksekusi:

pip install plotly

Kami akan menggunakan Anaconda dan Jupyter dalam pelajaran ini. Jika Anda ingin menginstalnya di engine Anda, lihat pelajaran yang menjelaskan “ Cara Menginstal Anaconda Python di Ubuntu 18.04 LTS ” dan bagikan tanggapan Anda jika Anda menghadapi masalah apa pun. Untuk menginstal Plotly dengan Anaconda, gunakan perintah berikut di terminal dari Anaconda:

conda install -c plotly plotly

Kami melihat sesuatu seperti ini ketika kami menjalankan perintah di atas:

Setelah semua paket yang diperlukan terinstal dan selesai, kita dapat mulai menggunakan pustaka Plotly dengan pernyataan impor berikut:

import plotly

Setelah Anda membuat akun di Plotly, Anda memerlukan dua hal – nama user akun dan kunci API. Hanya ada satu kunci API yang dimiliki oleh setiap akun. Jadi simpan di tempat yang aman seolah-olah Anda kehilangannya, Anda harus membuat ulang kunci dan semua aplikasi lama yang menggunakan kunci lama akan berhenti bekerja.

Di semua program Python yang Anda tulis, sebutkan kredensial sebagai berikut untuk mulai bekerja dengan Plotly:

plotly.tools.set_credentials_file(username = 'username', api_key = 'your-api-key')

Mari kita mulai dengan perpustakaan ini sekarang.

Getting Started with Plotly

Kami akan menggunakan impor berikut dalam program kami:

import pandas as pd
import numpy as np
import scipy as sp
import plotly.plotly as py

Kami menggunakan:

  • Panda untuk membaca file CSV secara efektif
  • NumPy untuk operasi tabel sederhana
  • Scipy untuk perhitungan ilmi
    ah
  • Plot untuk visualisasi

Untuk beberapa contoh, kami akan menggunakan kumpulan data Plotly sendiri yang tersedia di Github. Terakhir, harap perhatikan bahwa Anda juga dapat mengaktifkan cara offline untuk Plotly saat Anda perlu menjalankan skrip Plotly tanpa koneksi jaringan:

import pandas as pd
import numpy as np
import scipy as sp
import plotly
plotly.offline.init_notebook_cara(connected=True)
import plotly.offline as py

Anda dapat menjalankan pernyataan berikut untuk menguji instalasi Plotly:

print(plotly.__version__)

Kami melihat sesuatu seperti ini ketika kami menjalankan perintah di atas:

Kami akhirnya akan mengdownload kumpulan data dengan Pandas dan memvisualisasikannya sebagai tabel:

import plotly.figure_factory as ff
df = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/school_
earnings.csv")
table = ff.create_table(df)
py.iplot(table, filename='table')

Kami melihat sesuatu seperti ini ketika kami menjalankan perintah di atas:

Sekarang, mari kita buat Bar Graph untuk memvisualisasikan data:

import plotly.graph_objs as go
data = [go.Bar(x=df.School, y=df.Women)]
py.iplot(data, filename='women-bar')

Kami melihat sesuatu seperti ini ketika kami menjalankan cuplikan kode di atas:

Ketika Anda melihat grafik di atas dengan notebook Jupyter, Anda akan disajikan dengan berbagai opsi Zoom in/out pada bagian tertentu dari grafik, pilih Box & Lasso dan banyak lagi.

Grouped Bar Charts

Beberapa diagram batang dapat dikelompokkan bersama untuk tujuan perbandingan dengan sangat mudah dengan Plotly. Mari kita gunakan dataset yang sama untuk ini dan tunjukkan variasi kehadiran pria dan wanita di universitas:

women = go.Bar(x=df.School, y=df.Women)
men = go.Bar(x=df.School, y=df.Men)

data = [men, women]
layout = go.Layout(barcara = "group")
fig = go.Figure(data = data, layout = layout)
py.iplot(fig)

Kami melihat sesuatu seperti ini ketika kami menjalankan cuplikan kode di atas:

Meskipun ini terlihat bagus, label di sudut kanan atas tidak, benar! Mari kita perbaiki mereka:

women = go.Bar(x=df.School, y=df.Women, name = "Women")
men = go.Bar(x=df.School, y=df.Men, name = "Men")

Grafik terlihat jauh lebih deskriptif sekarang:

Mari kita coba mengubah barcara:

layout = go.Layout(barcara = "relative")
fig = go.Figure(data = data, layout = layout)
py.iplot(fig)

Kami melihat sesuatu seperti ini ketika kami menjalankan cuplikan kode di atas:

Pie Charts with Plotly

Sekarang, kami akan mencoba membuat Diagram Pai dengan Plotly yang menetapkan perbedaan mendasar antara persentase wanita di semua universitas. Nama universitas akan menjadi label dan angka sebenarnya akan digunakan untuk menghitung persentase keseluruhan. Berikut ini cuplikan kode untuk hal yang sama:

trace = go.Pie(labels = df.School, values = df.Women)
py.iplot([trace], filename='pie')

Kami melihat sesuatu seperti ini ketika kami menjalankan cuplikan kode di atas:

Hal baiknya adalah Plotly hadir dengan banyak fitur untuk memperbesar dan memperkecil dan banyak alat lain untuk berinteraksi dengan bagan yang dibuat.

Time Series data visualisation with Plotly

Memvisualisasikan data deret waktu adalah salah satu tugas terpenting yang muncul saat Anda menjadi analis data atau insinyur data.

Dalam contoh ini, kita akan menggunakan dataset terpisah di repositori GitHub yang sama karena data sebelumnya tidak secara khusus melibatkan data yang diberi cap waktu. Seperti di sini, kami akan memplot variasi saham pasar Apple dari waktu ke waktu:

financial = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/
finance-charts-apple.csv")
data = [go.Scatter(x=financial.Date, y=financial['AAPL.Close'])]
py.iplot(data)

Kami melihat sesuatu seperti ini ketika kami menjalankan cuplikan kode di atas:

Setelah Anda mengarahkan mouse ke garis variasi grafik, Anda dapat menentukan detail titik:

Kita dapat menggunakan tombol perbesar dan perkecil untuk melihat data yang spesifik untuk setiap minggu juga.

OHLC Chart

Bagan OHLC (Buka Tinggi Rendah Tutup) digunakan untuk menunjukkan variasi entitas di seluruh rentang waktu. Ini mudah dibuat dengan PyPlot:

from datetime import datetime

open_data = [33.0, 35.3, 33.5, 33.0, 34.1]
high_data = [33.1, 36.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]

dates = [datetime(year=2013, month=10, day=10),
datetime(year=2013, month=11, day=10),
datetime(year=2013, month=12, day=10),
datetime(year=2014, month=1, day=10),
datetime(year=2014, month=2, day=10)]

trace = go.Ohlc(x=dates,
open=open_data,
high=high_data,
low=low_data,
close=close_data)
data = [trace]

py.iplot(data)

Di sini, kami telah menyediakan beberapa titik data sampel yang dapat disimpulkan sebagai berikut:

  • Data terbuka menggambarkan kurs saham saat pasar dibuka
  • Data tinggi menggambarkan tingkat stok tertinggi yang dicapai selama periode waktu tertentu
  • Data rendah menggambarkan tingkat stok terendah yang dicapai selama periode waktu tertentu
  • Data penutupan menggambarkan tingkat penutupan saham ketika interval waktu tertentu telah berakhir

Sekarang, mari kita jalankan cuplikan kode yang kami sediakan di atas. Kami melihat sesuatu seperti ini ketika kami menjalankan cuplikan kode di atas:

Ini adalah perbandingan yang sangat baik tentang bagaimana membuat perbandingan waktu suatu entitas dengan miliknya sendiri dan membandingkannya dengan pencapaian tinggi dan rendahnya.

Kesimpulan

Dalam pelajaran ini, kita melihat perpustakaan visualisasi lain, Plotly yang merupakan alternatif yang sangat baik untuk Matplotlib dalam aplikasi kelas produksi yang diekspos sebagai aplikasi web, Plotly adalah perpustakaan yang sangat dinamis dan kaya fitur untuk digunakan untuk tujuan produksi, jadi ini pasti keterampilan yang perlu kita miliki di bawah ikat pinggang kita.

Temukan semua kode sumber yang digunakan dalam pelajaran ini di Github. Silakan bagikan tanggapan Anda tentang pelajaran di Twitter dengan @sbmaggarwal dan @LinuxHint.

Related Posts