Menggambar plot pencar keren dengan python dalam satu liner

Apr 06 2023
Plot pencar adalah salah satu plot dasar untuk memvisualisasikan hubungan antara dua variabel. Namun, ini adalah cara yang ampuh untuk memahami struktur data karena kesederhanaannya memungkinkan kita menyesuaikan plot dengan menempatkan informasi variabel lainnya.

Plot pencar adalah salah satu plot dasar untuk memvisualisasikan hubungan antara dua variabel. Namun, ini adalah cara yang ampuh untuk memahami struktur data karena kesederhanaannya memungkinkan kita menyesuaikan plot dengan menempatkan informasi variabel lainnya.

Dalam python, matplotlib dan seaborn adalah modul populer untuk menggambar plot pencar dengan fleksibilitas tinggi, tetapi juga membutuhkan upaya untuk membuatnya bagus dan keren. Di sini, saya ingin memperkenalkan paket python saya, omniplot , yang dibangun di atas matplotlib dan seaborn, untuk menggambar plot pencar dengan fitur tambahan seperti distribusi marjinal, estimasi kepadatan kernel, dan pengelompokan k-means dalam satu liner.

Panduan instalasi terperinci untuk omniplot dapat ditemukan di repositori github . Tapi, Anda mungkin dapat menginstalnya dengan perintah berikut.

pip install cython --user
git clone https://github.com/koonimaru/omniplot.git --user
cd omniplot
pip install .

from omniplot  import plot as op
import pandas as pd
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
%config InlineBackend.print_figure_kwargs={'bbox_inches': None}
df=sns.load_dataset("penguins")
df=df.dropna(axis=0)
print(df.shape)
res=op.scatterplot(df, 
               x="bill_length_mm",
               y="bill_depth_mm", 
               category=['species'],
                save="scatter1.png")

      
                

res=op.scatterplot(df, 
               x="bill_length_mm",
               y="bill_depth_mm", 
               category=['species'],
                sizes="body_mass_g",
                save="scatter2.png")

      
                

res=op.scatterplot(df, 
               x="bill_length_mm",
               y="bill_depth_mm", 
               category=['species', "sex"],
                sizes="body_mass_g",
                save="scatter3.png")

      
                

res=op.scatterplot(df, 
               x="bill_length_mm",
               y="bill_depth_mm", 
               category=['species', "sex", "island"],
               colors="flipper_length_mm",
                sizes="body_mass_g",
                save="scatter4.png")

      
                

res=op.scatterplot(df, 
               x="bill_length_mm",
               y="bill_depth_mm", 
               category=['species', "sex"],
                sizes="body_mass_g",
                marginal_dist=True,
                kde=True,
                save="scatter6.png")

      
                

res=op.scatterplot(df, 
               x="bill_length_mm",
               y="bill_depth_mm", 
               category=['species', "sex"],
                sizes="body_mass_g",
                marginal_dist=True,
                kde=True,
                kmeans=True,
                save="scatter7.png")

      
                

res=op.scatterplot(df, 
               x="bill_length_mm",
               y="bill_depth_mm", 
               category=['species', "sex"],
                sizes="body_mass_g",
                marginal_dist=True,
                kde=True,
                regression=True,
                save="scatter8.png")

      
                

Itu dia! Khususnya, plot di atas dapat digambar dengan seaborn atau matplotlib saja, tetapi Anda perlu menghabiskan banyak waktu untuk mencapainya. Saya harap omniplot dapat menghemat waktu Anda dan mempercepat visualisasi ilmiah.