用python畫樣本散點圖的方法:
數據(取第一列作為x,取第四列作為y)如下:
實現代碼如下:import matplotlib.pyplot as plt
import numpy as np
# 定義畫散點圖的函數
def draw_scatter(n, s):
"""
:param n: 點的數量,整數
:param s:點的大小,整數
:return: None
"""
# 加載數據
data = np.loadtxt('results.txt', encoding='utf-8', delimiter=',')
# 通過切片獲取橫坐標x1
x1 = data[:, 0]
# 通過切片獲取縱坐標R
y1 = data[:, 3]
# 橫坐標x2
x2 = np.random.uniform(0, 5, n)
# 縱坐標y2
y2 = np.array([3] * n)
# 創建畫圖窗口
fig = plt.figure()
# 將畫圖窗口分成1行1列,選擇第一塊區域作子圖
ax1 = fig.add_subplot(1, 1, 1)
# 設置標題
ax1.set_title('Result Analysis')
# 設置橫坐標名稱
ax1.set_xlabel('gamma-value')
# 設置縱坐標名稱
ax1.set_ylabel('R-value')
# 畫散點圖
ax1.scatter(x1, y1, s=s, c='k', marker='.')
# 畫直線圖
ax1.plot(x2, y2, c='b', ls='--')
# 調整橫坐標的上下界
plt.xlim(xmax=5, xmin=0)
# 顯示
plt.show()
# 主模塊
if __name__ == "__main__":
# 運行
draw_scatter(n=2000, s=20)
實現效果如下:
更多Python知識請關注Python自學網。