環(huán)境:windows系統(tǒng),anaconda3 64位,python 3.6
1.初認識
基本代碼如下:
import numpy as np
import matplotlib.pyplot as plt
N = 1000
x = np.random.randn(N)
y = np.random.randn(N)
plt.scatter(x, y)
plt.show()
這里使用numpy包的random函數(shù)隨機生成1000組數(shù)據(jù),然后通過scatter函數(shù)繪制了散點圖。
這篇文章的重點其實在于scatter函數(shù)。

scatter
- x,y 形如shape(n,)的數(shù)組,可選值,
- s 點的大?。ㄒ簿褪敲娣e)默認20
- c 點的顏色或顏色序列,默認藍色。其它如
c = 'r' (red); c = 'g' (green); c = 'k' (black) ; c = 'y'(yellow) -
marker 形狀,可選值,默認是圓
marker
如果需要其他的,可搜索matplotlib的官網(wǎng),在官網(wǎng)中搜索markers,選擇第一個結(jié)果。
import numpy as np
import matplotlib.pyplot as plt
N = 1000
x = np.random.randn(N)
y = np.random.randn(N)
color = ['r','y','k','g','m']
plt.scatter(x, y,c=color,marker='>')
plt.show()

marker
- alpha:標量,可選,默認值:無, 0(透明)和1(不透明)之間的alpha混合值
import numpy as np
import matplotlib.pyplot as plt
N = 1000
x = np.random.randn(N)
y = np.random.randn(N)
plt.scatter(x, y,alpha=0.5)
plt.show()

alpha
- edgecolors,顧名思義,邊緣顏色或顏色序列,可選值,默認值:None
import numpy as np
import matplotlib.pyplot as plt
N = 1000
x = np.random.randn(N)
y = np.random.randn(N)
plt.scatter(x, y,alpha=0.5,edgecolors= 'white') #edgecolors = 'w',亦可
plt.show()

edgecolors
2.圖例無法顯示中文
import numpy as np
import matplotlib.pyplot as plt
N = 1000
x = np.random.randn(N)
y = np.random.randn(N)
plt.scatter(x, y,alpha=0.5,edgecolors= 'white')
plt.title('示例')#顯示圖表標題
plt.xlabel('x軸')#x軸名稱
plt.ylabel('y軸')#y軸名稱
plt.grid(True)#顯示網(wǎng)格線
plt.show()
查找原因,發(fā)現(xiàn)時因為matplotlib庫沒有中文字體。
解決方案1
每次編代碼時都進行參數(shù)設(shè)置如下:
#coding:utf-8
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用來正常顯示中文標簽
plt.rcParams['axes.unicode_minus']=False #用來正常顯示負號
#有中文出現(xiàn)的情況,需要u'內(nèi)容'
