python可視化分析の実現(matplotlib、seaborn、gplot 2)

8351 ワード

一、matplotlibライブラリ
1、基本図形描画コマンド

import matplotlib.pyplot as plt
plt.figure(figsize=(5,4)) #      
plt.rcParams['axes.unicode_minus']=False #      
plt.rcParams['font.sans-self']=['Kai Ti'] #    ,     ,SimHei    

#     
plt.bar(x,y);plt.pie(y,labels=x);plt.plot(x,y);
plt.hist(df.  ) #   density=True       
3、図のパラメータ設定
カラー:plt.plot(x,y,c=‘red’)菗パラメータc制御色
縦軸範囲:plt.xlim(0,100)、plt.ylim(0,8)
縦軸名称:plt.xlabel()、plt.ylobal()
横長座標軸目盛:plt.xticks(range(len(x),x)
線と記号:plt.plot(x,y,lineastyle='C',maker='o')菗実線:'-';点線:'C'.'ガイド線
追加参考線:plt.axvline(x=1);plt.axhline(y=4)
テキストの表示:plt.text(3,5、‘peak point’)璣パラメータ表示:座標+文字
凡例:plt.plot(x,y,label=‘折れ線’);plt.legend()
分割図形描画:

#    
plt.subplot(121)
plt.bar(x,y)
plt.subplot(122)
plt.plot(x,y)
#    
fig,ax=plt.subplots(2,2,figsize=(15,12)) # 2 2  4  ,figsize    
ax[0,0].bar(x,y);ax[0,1].plot(x,y);
ax[1,0].pie(x,y);ax[1,1].plot(y,'.',linewidth=3)
具体的なパラメータカラー、ラインスタイル、凡例位置設定
色文字(カラー)
文字
代表色
r
赤い色
b

g

w
ホワイト
c
シアン
m
マゼンタ
y
黄色
k
ブラック
スタイル文字(ラインスタイル)
文字
代表格
-(ハイフン)
実線
C(2つのハイフン)
点線

点を引く
:
点線を引く
''
スペース
locパラメータ(matplotlibに図を追加する例を例にして位置を説明します。)
loc string
locコード
位置
ベスト
0
右上隅(標準)
「uper right」
1
右上隅
「up left」
2
左上角
「lower left」
3
左下
「lower right」
4
右下
「ナイト」
5
中央右側
「センター・シフト」
6
中左
「センターファイト」
7
中央右側
「lowセンター」
8
真下
「up perセンター」
9
真上
センター
10
真ん中
4、特殊な統計図の作成
4.1数学関数図

import matplotlib.pyplot as plt   #       
plt.rcParams['font.sans-serif']=['SimHei']; #SimHei  
plt.rcParams['axes.unicode_minus']=False; #        
import numpy as np #     numpy
import math  #     math
x=np.linspace(0,2*math.pi);x #  [0,2*pi]   ,       
plt.plot(x,np.sin(x)) #y=sinx     
plt.plot(x,np.cos(x)) #y=cosx     
plt.plot(x,np.log(x)) #y=lnx #    
plt.plot(x,np.exp(x)) #y=e^x     
数学の関数もパンダスライブラリで描画できます。詳しくは私のブログを参照してください。

#    
t=np.linspace(0,2*math.pi) 
x=3*np.sin(t); 
y=5*np.cos(t) 
plt.plot(x,y); 
plt.text(0,0,r'$\frac{x^2}{3^2}+\frac{y^2}{5^2}=1$',fontsize=20) #python   LATEX   ,           
在这里插入图片描述
4.2気泡図

import pandas as pd
df=pd.read_excel('data.xlsx')
plt.scatter(df['  '], df['  '], s=df['  ']) #              ,   s=df['  ']            ,      
在这里插入图片描述
4.3三次元曲面図

from mpl_toolkits.mplot3d import Axes3D 
fig = plt.figure() 
ax = Axes3D(fig)
X = np.arange(-4, 4, 0.5) 
Y = np.arange(-4, 4, 0.5) 
X, Y = np.meshgrid(X, Y)
Z = (X**2+ Y**2)
ax.plot_surface(X, Y, Z) #         z=x^2+y^2
在这里插入图片描述
二、seabornライブラリ
1、常用統計図
1.1箱線図

import seaborn as sns #     seaborn
#   
sns.boxplot(x=df['  '])
#       ,     x    y
sns.boxplot(y=df['  ']) 
#       
sns.boxplot(x='  ', y='  ',data=df) #           

1.2バイオリン図

sns.violinplot(x='  ', y='  ', data=df) #      ,          hue
在这里插入图片描述
1.3点図

sns.stripplot(x='  ', y='  ', data=df, jitter=True) #     (  +  )    ,jitter   True        ,   false
在这里插入图片描述
1.4本の図と計数図

#  ,    
sns.barplot(x='  ', y='  ', data=df, ci=0, palette="Blues_d") #palette      
#   
sns.countplot(x='  ', hue="  ", data=df) #      
在这里插入图片描述
1.5分組図

#   、         ,aspect     
sns.factorplot(x='  ', col="  ", col_wrap=3, data=df, kind="count", size=2.5, aspect=.8) 
在这里插入图片描述
1.6確率分布図

#displot:   +    ,bins      ,kde=False         ,rug             
sns.distplot(df['  '], kde=True, bins=20, rug=True)

#           
def norm_sim2(N=1000,n=10):
 xbar=np.zeros(N)
 for i in range(N):
  xbar[i]=np.random.uniform(0,1,n).mean()#[0,1]        
 sns.distplot(xbar,bins=50)
 print(pd.DataFrame(xbar).describe().T)
norm_sim2(N=100000,n=50) 
在这里插入图片描述
2、連携図

sns.jointplot(x='  ', y='  ', data=df)#     +        
在这里插入图片描述
3、ペアリング図

#      ,    ,    
sns.pairplot(df[['  ','  ','  ']]) #             ,           
在这里插入图片描述
三、ggaplotライブラリ
ggaplotライブラリは絵画のレイヤーの思想を採用しています。つまり、一つの層を上に重ねて、まず座標を描いて、もう一つの線を増やして、他の操作を加えて、最後に+号で接続して、操作すると論理的な章法があります。文が簡潔です。ggaplotの新しいカバンはplotnineで、R言語のgplot 2に対応して、使うのがもっと便利です。だから直接import plotnineでいいです。中の関数はgplotと同じです。
1、レイヤーの描き方+常用パターン
直角座標系とフォントを描画します。

GP=ggplot(aes(x='  ',y='  '),data=df)
在这里插入图片描述
これに基づいて線図を追加します。

GP + geom_line()+ theme_grey(base_family = 'SimHei')#        ,+geom_point()              
在这里插入图片描述
3つの変数があるポイントマップに変更し、異なるタイプのマーク(shape)/色を描きます。

ggplot(df,aes(x='  ',y='  ',color='  '))+geom_point()+ theme_grey(base_family = 'SimHei')
在这里插入图片描述
分割面図に変更:
パンダスでグループ統計図を描くには、まずグループ化する必要があります。

ggplot(df,aes(x='  ',y='  '))+geom_point()+facet_wrap('  ') + 
theme_grey(base_family = 'SimHei') #facet_wrap('  ')             
在这里插入图片描述
また、+theme_bw()などは、背景やテーマを設定できます。
2、高速描画
ggaplotは、pansdasのように、パラメータgeomの値をqplot関数に設定して、直接に画像の種類を変えることもできます。

#       
qplot(x='  ',data=df, geom='histogram')+ theme_grey(base_family = 'SimHei')
#       
qplot('  ',data=df, geom='bar')+ theme_grey(base_family = 'SimHei')
#     
qplot('  ', '  ', data=df, color='  ') + theme_grey(base_family = 'SimHei')
以上は「pythonデータ分析基礎教程王斌会」に基づいて整理された学習ノートです。まだ多くのパラメータ設定が明記されていません。また、pyecharts動画像神器もあります。後で勉強したら、もうちょっと補充してください。
ここで、pythonの可視化分析の実現に関する記事を紹介します。pythonの可視化については、以前の文章を検索したり、以下の関連記事を見たりしてください。これからもよろしくお願いします。