程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

PythonStudy5

編輯:Python

文章目錄

  • 一、前言
  • 二、畫圖
    • 1. 折線圖
    • 2. 直方圖
    • 3. 散點圖
  • 三、布局
  • 四、總結

一、前言

在處理數據的時候需要考慮對數據屬性的取捨. 除此之外, 還要對不同屬性中有些偏離程度大的數據進行處理, 例如捨去那些偏離程度大的數據.

此時, 如果能夠將數據通過圖像的形式表現出來, 就能很好地完成上述工作.

另一方面就是, 每次需要代碼時, 都是借用別人寫好的代碼. 自己沒有理解到精髓, 想要對內容進行擴展自然也就成了問題.

二、畫圖

import matplotlib.pyplot as plt
import numpy as np

導入所需要的庫, 第一行就是畫圖所需的庫, 第二行是一個支持數組和矩陣運算的庫, 底層由 C 實現, 運行速度很快.

1. 折線圖

fig = plt.figure()
plt.plot([1,2,3,4],[1,4,9,16])
plt.show()

2. 直方圖

fig = plt.figure(num=1, figsize=(8,6))
ax = fig.add_subplot(111)
ax.bar(x=np.arange(1,8,1), height=np.arange(10,80,10))

3. 散點圖

x_values = [1,2,3,4,5]
y_values = [1,4,9,16,25]
fig = plt.figure()
ax = fig.add_subplot(111)
ax.scatter(x_values,y_values)
plt.show()

三、布局

fig = plt.figure(num=1,figsize=(4,4))
plt.plot([1,2,3,4],[1,2,3,4])
plt.show()

這種方式, 是先生成了一個畫布, 然後在這個畫布上隱式的生成一個畫圖區域來進行畫圖

fig = plt.figure(num=1,figsize=(4,4))
ax = fig.add_subplot(111)
ax.plot([1,2,3,4],[1,2,3,4])
plt.show()

這種方式, 先生成一個畫布, 然後在此畫布上, 選定一個子區域畫了一個子圖.

add_subplot 函數中的 111 指的是 1 行 1 列 第 1 個子圖. 子圖順序是從左到右從上到下數的.

除了上面的方式, 還可以通過 plt 直接添加子圖.

fig = plt.figure(num=1,figsize=(4,4))
plt.subplot(111)
plt.plot([1,2,3,4],[1,2,3,4])
plt.show()

結果是一樣的.

有了這樣的經驗之後就可以在一張圖中畫出多個子圖

fig = plt.figure(num=1,figsize=(4,4))
ax1 = fig.add_subplot(221)
ax1.plot([1,2,3,4],[1,2,3,4])
ax2 = fig.add_subplot(222)
ax2.plot([1,2,3,4],[2,2,3,4])
ax3 = fig.add_subplot(223)
ax3.plot([1,2,3,4],[1,2,2,4])
ax4 = fig.add_subplot(224)
ax4.plot([1,2,3,4],[1,2,3,3])
plt.show()

如果要畫更復雜的圖就需要把畫布分割成一個網格. 然後讓子

import matplotlib.gridspec as gridspec
fig = plt.figure(num=1,figsize=(4,6))
gs = gridspec.GridSpec(3,3)
ax1 = fig.add_subplot(gs[0,:])
ax1.plot([1,2,3,4],[1,2,3,4])
ax2 = fig.add_subplot(gs[1,:-1])
ax2.plot([1,2,3,4],[1,2,3,4])
ax3 = fig.add_subplot(gs[1:,-1])
ax3.plot([1,2,3,4],[1,2,3,4])
ax4 = fig.add_subplot(gs[2,0])
ax4.plot([1,2,3,4],[1,2,3,4])
ax5 = fig.add_subplot(gs[2,1])
ax5.plot([1,2,3,4],[1,2,3,4])
plt.show()

四、總結

現在能畫一些簡單的圖, 當然還可以很多可以學習的地方, 例如坐標軸的步長還有線的顏色和虛實.

需要的時候再來進行查找和補充吧!


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved