接受自己的普通,然后全力以赴的出眾,告訴自己要努力,但不要著急....
創(chuàng)新互聯(lián)公司電話聯(lián)系:13518219792,為您提供成都網(wǎng)站建設(shè)網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù),創(chuàng)新互聯(lián)公司網(wǎng)頁(yè)制作領(lǐng)域十載,包括茶樓設(shè)計(jì)等多個(gè)領(lǐng)域擁有多年設(shè)計(jì)經(jīng)驗(yàn),選擇創(chuàng)新互聯(lián)公司,為網(wǎng)站保駕護(hù)航。
當(dāng)然, 這個(gè)結(jié)果并不是我真正想要的,Pass, 太丑了!
好吧,安排,我們先看下實(shí)現(xiàn)后的效果!
這個(gè)效果自然就比之前的好多了!
實(shí)現(xiàn)python散點(diǎn)圖繪制需要用到matplotlib庫(kù), matplotlib庫(kù)是專門用于可視化繪圖的工具庫(kù);學(xué)習(xí)一個(gè)新的庫(kù)當(dāng)然看官方文檔了:
實(shí)現(xiàn)思路:
matplotlib.pyplot.scatter() 函數(shù)是專門繪制散點(diǎn)圖的函數(shù):
matplotlib.pyplot.scatter ( x, y , s=None , c=None , marker=None , cmap=None , norm=None , vmin=None , vmax=None , alpha=None , linewidths=None , verts=None , edgecolors=None , ***, data=None , ** kwargs ) **
plt.scatter(observation, estimate, c=Z1, cmap=colormap, marker=".", s=marker_size, norm=colors.LogNorm(vmin=Z1.min(), vmax=0.5 * Z1.max()))
其中:
1、c參數(shù)為計(jì)算的散點(diǎn)密度;
2、cmap為色帶(matplotlib里面自帶了很多色帶可供選擇),參見(jiàn):
3、由于計(jì)算的散點(diǎn)密度數(shù)值大小分散,因此利用norm參數(shù)對(duì)散點(diǎn)密度Z1進(jìn)行歸一化處理(歸一化方式很多,參見(jiàn)colors類),并給歸一化方式設(shè)置色帶刻度的最大最小值vmin和vmax(一般這兩個(gè)參數(shù)就是指定散點(diǎn)密度的最小值和最大值),這樣就建立起了密度與色帶的映射關(guān)系。
(這里的結(jié)果與前面展示的相比改變了計(jì)算散點(diǎn)密度的半徑:radius = 3以及繪制散點(diǎn)圖的散點(diǎn)大小marksize)
作者能力水平有限,歡迎各位批評(píng)指正!
1. 繪制3D曲面圖
from matplotlib import pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
fig=plt.figure()
ax=Axes3D(fig)
x=np.arange(-4,4,0.25)
y=np.arange(-4,4,0.25)
x,y=np.meshgrid(x,y)
r=np.sqrt(x**2, y**2)
z=np.sin(r)
//繪面函數(shù)
ax.plot_surface(x,y,z,rstride=1,cstride=1,cmap=“rainbow”
plt.show()
2.繪制三維的散點(diǎn)圖(表述一些數(shù)據(jù)點(diǎn)分布)
4a.mat數(shù)據(jù)地址:http blog.csdn.net/eddy_zhang/article/details/50496164
from matplotlib import pyplot as plt
import scipy.io as sio
from mpl_toolkits.mplot3d import Axes3D
matl=‘4a.mat’
data=sio.loadmat(matl)
m=data[‘data’]
x,y,z=m[0],m[1],m[2]
//創(chuàng)建一個(gè)繪圖工程
ax=plt.subplot(111,project=‘3D’)
//將數(shù)據(jù)點(diǎn)分成三部分畫,在顏色上有區(qū)分度
ax.scatter(x[:1000], y[:1000], z[:1000],c=‘y’ )//繪制數(shù)據(jù)點(diǎn)
ax.scatter(x[1000:4000], y[1000:4000], z[1000:4000],c=‘r’ )//繪制數(shù)據(jù)點(diǎn)
ax.scatter(x[4000:], y[4000:], z[4000:],c=‘g’ )//繪制數(shù)據(jù)點(diǎn)
ax.set_zlable(‘z’)//坐標(biāo)軸
ax.set_ylable(‘y’)//坐標(biāo)軸
ax.set_xlable(‘x’)
plt.show()
在seaborn中,繪制散點(diǎn)圖的函數(shù)有 scatterplot 和 relplot 。
seaborn 繪制散點(diǎn)圖最簡(jiǎn)單的方式是使用 scatterplot 方法,指定 data 參數(shù)和 x 和 y 參數(shù)。
添加 hue 參數(shù),設(shè)置點(diǎn)的分組顏色。
添加 style 參數(shù),設(shè)置點(diǎn)的分組樣式。
添加 size 參數(shù),設(shè)置點(diǎn)的分組大小。
hue , style , size 參數(shù)可以同時(shí)設(shè)置多個(gè)。
分面散點(diǎn)圖用 relplot 方法繪制,需要設(shè)置 kind="scatter" ,然后使用 col , row 參數(shù)分面。
基本代碼如下:
這里使用numpy包的random函數(shù)隨機(jī)生成1000組數(shù)據(jù),然后通過(guò)scatter函數(shù)繪制了散點(diǎn)圖。
重點(diǎn)其實(shí)在于scatter函數(shù)。
x,y 形如shape(n,)的數(shù)組,可選值,
s 點(diǎn)的大?。ㄒ簿褪敲娣e)默認(rèn)20
c 點(diǎn)的顏色或顏色序列,默認(rèn)藍(lán)色。其它如c = 'r' (red); c = 'g' (green); c = 'k' (black) ; c = 'y'(yellow)
marker 形狀,可選值,默認(rèn)是圓
如果需要其他的,可搜索matplotlib的官網(wǎng),在官網(wǎng)中搜索markers,選擇第一個(gè)結(jié)果。
alpha:標(biāo)量,可選,默認(rèn)值:無(wú), 0(透明)和1(不透明)之間的alpha混合值
示例alpha = 0.5
edgecolors,顧名思義,邊緣顏色或顏色序列,可選值,默認(rèn)值:None