Plot 绘制点图
可視化能幫助我們更好的理解高維空間到底發(fā)生了什么。
一般可以使用matlba的pyplot來進行繪制:
scatter
對二維空間點進行繪制,最簡單的如下:
""" Simple demo of a scatter plot. """ import numpy as np import matplotlib.pyplot as pltN = 50 x = np.random.rand(N) y = np.random.rand(N) colors = np.random.rand(N) area = np.pi * (15 * np.random.rand(N))**2 # 0 to 15 point radiiplt.scatter(x, y, s=area, c=colors, alpha=0.5) plt.show()這是官網(wǎng)上的一個例子,效果圖如下:
我們來對上面的一些函數(shù)的參數(shù)進行解讀。
- x
表示要描繪的點的橫坐標 - y
要描繪的店的做坐標從,是一個array或者一個list - s
默認描繪的是一個圓形的點,s表示的點的大小,可以是一個具體的數(shù)字,也可以是一個list的形式,要求跟點的個數(shù)保持一致; - c
表示描繪的點的顏色,顏色參考這里 - alpha
表示描繪的顏色的透明度,從0-1表示透明到不透明;
除了以上參數(shù)之外,其實還有一些參數(shù)可以使用:
-
marker
可以選擇的值包括:- ‘o’ 表示圓形
- ‘d’ 表示菱形
可以參考這篇文章
-
edgecolors
可以給描繪的點加上邊框,設(shè)置邊框的顏色,也可以設(shè)置邊框的粗度。
plot
用來在兩個點之間添加一條線段:
plt.plot([x0, x1], [y0, y1], color='r')一幅圖中有兩個點集合,用不同的顏色和形狀描繪
這個其實只需要plt.scater函數(shù)寫兩遍,傳入不同的參數(shù)就可以了。
不過需要注意的時候,如果是把高維空間的點降維之后顯示的,最好把兩個點集合放在同一個數(shù)組里面,再去降維,因為如果用tsne的話,是保證點的相對位置保持不變,如果放在不同的集合,可能降維之后不在同一個空間中。
總結(jié)
- 上一篇: 能转PDF格式用的在线软件
- 下一篇: json与xml的相互转换