天天看點

python資料可視化之散點圖畫法

  • 引入

    什麼是散點圖?

     散點圖是指在回歸分析中,資料點在直角坐标系平面上的分布圖,散點圖表示因變量随自變量而變化的大緻趨勢,據此可以選擇合适的函數對資料點進行拟合。

     用兩組資料構成多個坐标點,考察坐标點的分布,判斷兩變量之間是否存在某種關聯或總結坐标點的分布模式。散點圖将序列顯示為一組點。值由點在圖表中的位置表示。類别由圖表中的不同标記表示。散點圖通常用于比較跨類别的聚合資料。

     簡單來說,可以給定 自變量 x 因變量 y 通過散點圖表示自變量和因變量的大緻趨勢,選擇一個合适的函數對這些資料點進行拟合。

  • 第一種畫法:
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
from matplotlib.pyplot import rcParams

# 資料準備
X = np.linspace(1,5,num=10)
y = np.sin(X) + X
# 解決中文亂碼
rcParams['font.sanf-serif'] = 'kaiti'
# 設定畫布大小
plt.figure(figsize=(8,6))
# 畫散點圖  marker 點的樣式  c 顔色  s 散點的大小 預設是 36
# marker 樣式表有很多 底下會貼出來
plt.scatter(X,y,marker='1',c=np.random.rand(10),s=72)
# 設定标題
plt.title('散點圖示例',fontsize=20)
# 設定 x y 軸标簽
plt.xlabel('X',fontsize=20)
plt.ylabel('y',fontsize=20)
# 設定xy軸刻度字型大小
plt.xticks(fontsize=20)
plt.yticks(fontsize=20)
# 設定散點圖 圖例  圖例字型大小 位置  0 表示最佳位置
plt.legend(['散點圖圖例'],fontsize=15,loc=0)
# 顯示散點圖
plt.show()
           
python資料可視化之散點圖畫法

附marker類型表:

python資料可視化之散點圖畫法

ps: 還有一些,以上樣式是常用的,如果想要了解更多,請翻閱官方文檔。

  • 第二種畫法:
import numpy as np
from pyecharts import options as opts
from pyecharts.charts import Scatter

X = np.arange(1,11)

y = (np.sin(X) + X).round(0)

z = (np.cos(X)+5).round(0)

def scatter_base() -> Scatter:
    c = (
        Scatter()
        .add_xaxis(X.tolist())
        .add_yaxis("y=sin(x)+x+10 ", y.tolist())
        .add_yaxis('z=cos(x)+5',z.tolist())
        .set_global_opts(title_opts=opts.TitleOpts(title="Scatter-基本示例"),
                         tooltip_opts=opts.TooltipOpts(formatter="({c})"),
                         xaxis_opts=opts.AxisOpts(name='X軸',type_='value',split_number=10),
                         yaxis_opts=opts.AxisOpts(name='Y軸',type_='value',split_number=10)    
                        )
    )
    return c
# ps 如果習慣鍊式調用,當然可以使用單獨的調用方法。具體代碼可以參考我之前發過的部落格。
# 渲染
scatter_base().render_notebook()
           
python資料可視化之散點圖畫法

說明幾點:

  1. Echarts 是一個由百度開源的資料可視化,憑借着良好的互動性,精巧的圖表設計,得到了衆多開發者的認可。而 Python 是一門富有表達力的語言,很适合用于資料處理。當資料分析遇上資料可視化時,pyecharts 誕生了。
  2. 參數說明,由于pyecharts接收的是清單,并不能接收數組,是以當你建立的數組需要轉化為 清單
  3. pyecharts中一切都是 options 是以想要搞明白pyecharts需要讀懂它裡面所有的options的 API
  4. 附 pyecharts 官方文檔 裡面各個參數寫的很詳細!

    Pyecharts官方文檔