python数据图形化—— matplotlib 基础应用
?
matplotlib是python中常用的數(shù)據(jù)圖形化工具,用法跟matlab有點相似。調(diào)用簡單,功能強大。在Windows下可以通過命令行 pip install matplotlib 來進(jìn)行安裝。
以下為一些基礎(chǔ)使用的例子:
?
1、繪制直線
先通過numpy生成在直線 y = 5 * x + 5 上的一組數(shù)據(jù),然后將其繪制在圖表上
1 import numpy as np 2 import matplotlib.pyplot as plot 3 4 x = np.linspace(1, 10, 10) 5 y = 5 * x + 5 6 7 # plot.figure() 8 plot.plot(x, y) 9 plot.show()運行上面的代碼,結(jié)果如下:
?
2、繪制折線圖
繪制折線圖調(diào)用的matplotlib的方法一樣,只是使用numpy生成的數(shù)據(jù)不一樣。
1 import numpy as np 2 import matplotlib.pyplot as plot 3 4 x = np.linspace(1, 10, 10) 5 y = np.random.normal(1, 5, 10) 6 7 plot.figure() 8 plot.plot(x, y) 9 plot.show()由于涉及到隨機(jī)數(shù),每次運行的結(jié)果會不一樣。某次運行結(jié)果如下:
3、同時繪制多條樣式不一的曲線
plot方法可以同時繪制多條圖線,并支持不同的曲線采用不同的樣式和顏色來顯示。在下面的代碼中,plot方法的參數(shù),3個為一組,共3組,每一組的參數(shù)分別為 x軸坐標(biāo)、y軸坐標(biāo)和樣式。
樣式用法:
格式:
fmt = '[color][marker][line]'樣式的第一個字母表示顏色,支持的顏色有:r(red)、g(green)、b(blue)、c(cyan)、m(megenta)、y(yellow)、w(white)、k(black)。
樣式的第二部分表示圖線的填充符號,可以寫:--(虛線)、+(加號)、^(向上的正三角形)、s(正方形)、o(圓形)等。還可以同時采用兩種填充方式,如‘ro--’表示用紅色的虛線及實心圓來同時進(jìn)行填充。
import numpy as np import matplotlib.pyplot as plotx = np.linspace(-10, 10, 100)plot.plot(x, 100 * x, 'r--', x, 10*x ** 2, 'g^', x, x ** 3, 'c+') plot.show()?
4、繪制散點圖
調(diào)用 scatter 方法可以繪制散點圖。
import numpy as np import matplotlib.pyplot as plotx = np.linspace(1, 10, 10) y = np.linspace(1, 10, 10)plot.scatter(x, y) plot.ylabel('y value') plot.xlabel('x scale') plot.title('Scatter Figure') plot.show()輸出:
?
?可以通過設(shè)置不同參數(shù)的形式獲得不同的散點圖:
1 import numpy as np 2 import matplotlib.pyplot as plot 3 4 # 固定隨機(jī)數(shù)的seed,使其每次運行產(chǎn)生的結(jié)果都一樣 5 np.random.seed(1) 6 7 num = 100 8 edgeRadius = 0.5 9 x = np.random.rand(num) 10 y = np.random.rand(num) 11 area = (200 * np.random.rand(num)) 12 color = np.sqrt(area) 13 # 創(chuàng)建區(qū)域,用不同的樣式來顯示不同分區(qū)的點 14 triangleArea = np.ma.masked_where(x <= edgeRadius, area) 15 diamondArea = np.ma.masked_where(x > edgeRadius, area) 16 plot.scatter(x, y, s=triangleArea, marker='o', c=color) 17 plot.scatter(x, y, s=diamondArea, marker='d', c=color) 18 plot.title('Random Scatter') 19 plot.show()?
5、繪制柱狀圖與多個圖形
在以下示例中, figure函數(shù)指定了圖表的編號和大小比例,suptitle設(shè)置標(biāo)題,subplot指定當(dāng)前繪圖的位置(參數(shù)221表示2x2共四個圖形區(qū)域,最后的1表示第一個圖形區(qū)域)。后面的bar、scatter、plot和pie函數(shù)分別繪制了柱狀圖、散點圖、折(直)線圖和餅圖。
import matplotlib.pyplot as plotlabels = ['A', 'B', 'C'] values = [1, 2, 3]plot.figure(1, figsize=(9, 6)) plot.suptitle('Multiple Plots')plot.subplot(221) plot.bar(labels, values) plot.subplot(222) plot.scatter(labels, values) plot.subplot(223) plot.plot(labels, values) plot.subplot(224) plot.pie(values, labels=labels) plot.show()?
?
本文地址:https://www.cnblogs.com/laishenghao/p/9573465.html?
作者博客:( ?? ω ?? )y
?
轉(zhuǎn)載于:https://www.cnblogs.com/laishenghao/p/9573465.html
總結(jié)
以上是生活随笔為你收集整理的python数据图形化—— matplotlib 基础应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ActiveMQ 发送和接收消息
- 下一篇: 路飞学城Python-Day171