Visualisasi di R
Dalam bidang Data Science, saya tidak pernah terpengaruh oleh diskusi tentang Python vs R. Mengapa? Karena saya hanya menggunakan keduanya. Sesederhana itu.
Saya menyukai Python untuk kemampuan machine learning dan betapa serbagunanya, tetapi jika tentang visualisasi; R memiliki tempat khusus di hati saya.
Mari kita ambil contoh dengan menggunakan paket ggplot2 untuk membuat plot yang sederhana namun informatif. Saya akan menggunakan dataset mpg yang tersedia di dalam paket ggplot2.
#Saya akan menggunakan dataset mpg yang tersedia di paket ggplot2
library(tidyverse)
mpg <- ggplot2::mpg
head(mpg)
Dari dataset ini, mari kita katakan saya ingin memvisualisasikan apakah ada hubungan antara fitur displ (Penggantian Mesin dalam Liter) dengan fitur cty (mpg Kota). Kemudian saya ingin memisahkannya berdasarkan fitur drv (Roda Penggerak) dan setiap titik akan dianotasi dengan tahun mobil.
#Membuat Plot
p1 <- ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = cty, color = drv), shape = 19, size = 5) +
geom_smooth(mapping =aes(x = displ, y= cty), method = 'lm') + geom_text(mapping = aes(x =displ, y = cty, label = year), size = 2)+ ggtitle('Engine Displacement vs City mpg')
p1
ggplot2 di Python
Inilah mengapa saya suka menggunakan paket ggplot2 di R. Dengan mengetik beberapa baris, saya dapat menghasilkan lapisan plot yang terperinci dengan informasi yang melimpah.
ggplot2 di Python. Kemudian saya berpikir, apakah ada paket di Python yang setara dengan ggplot2 di R. Saya sebenarnya mendapatkan jawaban untuk itu, ada paket modul untuk tujuan visualisasi yang berbasis pada paket ggplot2. Ini disebut plotnine.
Menggunakan plotnine mirip dengan menggunakan ggplot2 di R. Hanya beberapa penyesuaian baris di sini dan di sana akan menghasilkan plot yang serupa. Izinkan saya memberikan contoh dengan dataset mpg yang sama.
#Jika kamu belum menginstall package nya
pip install plotnine
import plotnine as pn
from plotnine import ggplot, geom_point, geom_smooth, geom_text, ggtitle, aes
#Mirip dengan ggplot2
mpg = pn.data.mpg
mpg.head()
Dataset yang sama, itu berarti kita dapat menghasilkan plot ggplot2 yang serupa melalui plotnine.
p1 = (ggplot(data = mpg) +
geom_point(mapping = aes(x = 'displ', y = 'cty', color = 'drv'), shape = 'o', size = 5) +
geom_smooth(mapping =aes(x = 'displ', y= 'cty'), method = 'lm') +
geom_text(mapping = aes(x ='displ', y = 'cty', label = 'year'), size = 5)+
ggtitle('Engine Displacement vs City mpg'))
Begitu saja, kita mendapatkan plot yang hampir sama jika kita memproduksinya melalui paket ggplot2 R. Saya berkata hampir karena parameter default sedikit berbeda meskipun itu dapat dengan mudah diubah jika kita membutuhkannya.
Menggunakan plotnine, ada sedikit detail ekstra yang perlu kita tambahkan. Di plotnine, kita perlu menyertakan tanda kurung ekstra sebelum fungsi ggplot dan tanda kutip tambahan pada nama fitur (Jika Anda telah menggunakan pandas sebelumnya, ini akan terasa sangat familiar).
Perbedaan lainnya hanya pada bentuk geom_point yang perlu mengikuti aturan paket matplotlib alih-alih menentukan nomor bentuk (sebelumnya dalam baris R saya, saya menggunakan shape = 19. Di sini di Python, saya menggunakan shape = 'o').
Itu saja. Jika Anda familiar dengan R dan ingin belajar Python dengan perasaan yang sama di R; plotnine adalah jalan yang harus ditempuh.
Saya harap ini membantu!
Comentários