資料視覺化學習
阿新 • • 發佈:2018-12-28
一.安裝目前最流行的包之一 matplotlib
1.繪製簡單的折線圖
import matplotlib.pyplot as plt input_values = [1, 2, 3, 4, 5, 6, 7, 8] squares = [1, 4, 9, 16, 25, 36, 49, 64] #linewidth線條粗細 plt.plot(input_values, squares, linewidth=5) #設定圖示標題,fontproperties字型變數 plt.title("平方數圖形",fontproperties='SimHei', fontsize=14)#給x軸設定標題 plt.xlabel("數字", fontproperties='SimHei',fontsize=14) #給y軸設定標題 plt.ylabel("數的平方", fontproperties='SimHei',fontsize=14) #設定刻度標記的大小 plt.tick_params(axis='both', labelsize=14) plt.show()
執行之後
2.繪製散點圖
import matplotlib.pyplot as plt #x軸是一個列表 x_values = list(range(1, 1001)) #y軸用x的值遍歷之後平方y_values = [x**2 for x in x_values] #使用scatter函式生成散點圖,引數c設定要使用的顏色 plt.scatter(x_values, y_values, c='blue', edgecolor='none', s=40) plt.title("平方數圖形",fontproperties='SimHei',fontsize=10) plt.xlabel("數字", fontproperties='SimHei',fontsize=10) plt.ylabel("數的平方", fontproperties='SimHei',fontsize=10) # 設定刻度標記plt.tick_params(axis='both', which='major', labelsize=14) # 設定x,y軸的座標範圍 plt.axis([0, 1100, 0, 1100000]) plt.show()
如果要儲存圖表可以將
plt.show( )改為 plt.savefig('shu.png',bbox_inches='tight')
3.隨機漫步
隨機漫步是又一系列隨機決策決定的,模擬隨機漫步要先建立RandomWalk( )類
from random import choice class RandomWalk(): def __init__(self, num_points=5000): #設定5000個隨機點 self.num_points = num_points # 所有隨機點都是從(0,0)開始. self.x_values = [0] self.y_values = [0] def fill_walk(self): #判斷x軸有沒有到達設定的長度 while len(self.x_values) < self.num_points: #判斷隨機點的發現是前進還是後退 x_direction = choice([1, -1]) #每一次走多遠,隨機產生一個 x_distance = choice([0, 1, 2, 3, 4]) #x軸移動距離 x_step = x_direction * x_distance y_direction = choice([1, -1]) y_distance = choice([0, 1, 2, 3, 4]) y_step = y_direction * y_distance # 判斷是否原地不動 if x_step == 0 and y_step == 0: continue # 計算下一個點 next_x = self.x_values[-1] + x_step next_y = self.y_values[-1] + y_step #將下一個點新增到列表x_values,y_values後面 self.x_values.append(next_x) self.y_values.append(next_y)
下面將隨機慢點所有的點都繪製出來
from random_walk import RandomWalk
import matplotlib.pyplot as plt
rw=RandomWalk() rw.fill_walk() plt.scatter(rw.x_values,rw.y_values,s=10) plt.show()