Python數據可視化
安裝必要的模塊Windows用戶安裝四個模塊:
python_dateutil
pyparsing
Numpy
matplotlib
安裝Python模塊參考下文:
Python遇上剪切闆
模塊的基本使用from matplotlib import pyplot
import random
x = list(range(0,100))
y = [random.randint(0,100) for r in range(0,100)]
fig1 = pyplot.figure()#初始化一個空白畫布
pyplot.plot(x, y, '-')#生成一個折線圖,X軸,Y軸,圖形樣式
pyplot.title('First Plot - Random integers')
pyplot.xlabel('X Axis')
pyplot.ylabel('Y Axis')
pyplot.show()
生成的圖片見下圖:
生成的随機數折線圖
結合CSV文件生成圖形CSV文件如下圖:
csv 數據
該數據可以由Arduino生成,參考下文:
Python CSV模塊存儲資料
Python遇上Arduino之電位計
該例子将生成兩個圖片,一個是折線圖一個是柱狀圖,代碼如下:
import csv
from matplotlib import pyplot
num = []
btnValues =[]
potValues =[]
with open('Arduino_data.csv', 'r') as f:
reader = csv.reader(f)
header = next(reader, None)#讀取第一行标題
for row in reader:
num.append(int(row[0]))#序列
potValues.append(float(row[1]))#電位計數據列
btnValues.append(int(row[2]))#按鈕數據列
pyplot.subplot(2, 1, 1)##三個參數的意思是:整個圖表分為2行1列,該子圖表位于第一行
pyplot.plot(num, potValues, '-')#生成折線圖
pyplot.title('Line plot - ' header[1])
pyplot.xlim([1, 30])
pyplot.xlabel('X Axis')
pyplot.ylabel('Y Axis')
pyplot.subplot(2, 1, 2)#三個參數的意思是:整個圖表分為2行1列,該子圖表位于第二行
pyplot.bar(num, btnValues)#生成柱狀圖
pyplot.title('Bar chart - ' header[2])
pyplot.xlim([1, 30])#x軸坐标範圍
pyplot.xlabel('X Axis')
pyplot.ylabel('Y Axis')
pyplot.tight_layout()#下面有比較
pyplot.show()
有pyplot.tight_layout()語句
無pyplot.tight_layout()語句
,喜歡文章,歡迎大家轉發!!!
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!