python繪圖簡單教程(一)——基本元素
文章目錄
一、理解面向對象
因爲我們不需要自己設計一個代碼庫,只要知道面向對象的調用就可以了。
1)什麼是類?
一類東西的抽象名詞概括
比如汽車car,概括了許多具體的各個牌子的汽車實物
2)什麼是對象?
就是從類裏面舉出來的一個實際的例子
比如汽車car這個類的對象可以是mycar(一般來說明明都是自由的)
3)什麼是類的屬性?
就是同一類的東西都共有的性質,那麼這一個類的所有對象都會擁有這個類別的屬性,屬性是靜態的。
比如所有汽車car都會有車門door、車窗window就可以作爲屬性,那麼類car的對象mycar,也會有這兩個屬性,表示爲mycar.door、mycar.window,指向具體的mycar這個對象的車門和車窗
4)什麼是類的方法?
同一類的東西都能夠完成的一個過程,同樣的這一個類的所有對象都能夠實現這個方法,方法是動態的。
同樣比如類car用兩個方法:開車start()、停車stop(),那麼car的對象mycar可以實現這兩個方法,表示爲mycar.start()、mycar.stop(),模擬實體對象的動作。
- 參數
許多方法的調用需要傳入參數,就是括號和裏面的值,這個時候將方法理解成一個函數就可以了,給不同的輸入得到不同的輸出。
- 靜態方法的調用
有一些方法不需要建立對象就可以完成,調用的時候直接使用類名
比如類car有靜態方法轉彎turn(),調用的時候直接car.turn()
二、資源說明
python的所有庫都有自己的指引tutorials和例子examples,但是都是全英的,一般網上的博客都是從中找到答案表述成中文這樣,小問題解決可以百度,系統的學的時候看着手冊比較全面。
1 Matplotlib
https://matplotlib.org/index.html
Matplotlib is a Python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms.
開源的一個用於平面繪圖的大型的代碼庫,裏面是別人設計好的類、裏面有便於使用的屬性和方法,我們使用的時候直接建立自己的對象然後調用對應的方法就行
2 pyplot
https://matplotlib.org/tutorials/introductory/pyplot.html#sphx-glr-tutorials-introductory-pyplot-py
For simple plotting the
pyplot
module provides a MATLAB-like interface, particularly when combined with IPython. For the power user, you have full control of line styles, font properties, axes properties, etc, via an object oriented interface or via a set of functions familiar to MATLAB users.
Matplotlib的中的一個模塊,用於簡單的繪圖。
三、導入模塊
1 plt
import matplotlib.pyplot as plt
#含義是將上面的這個庫導入,並且重命名爲plt,之後每次調用寫plt即可
如果沒有這個庫,可以在Anaconda裏面下載。
- Anaconda
專門用來管理python的庫的一個可視化界面
- spyder
打代碼的集成平臺,沒有它就要用黑框框
2 NumPy
NumPy 是一個運行速度非常快的數學庫,主要用於數組計算
import numpy as np
#導入庫,縮寫爲np
- 嘗試使用方法array()
x = np.array([[1,1,1],[2,2,2]])
#2*3/的矩陣x就是一個對象了
- 嘗試查看shape屬性
print(x.shape)#返回(行數,列數)
print(x.shape[0])#返回行數
print(x.shape[1])#返回列數
3 Pandas
import pandas as pd
Pandas是針對數據處理和分析的,其中有大量數據讀寫、數據清洗等等功能可以調用,畫圖最常用到的一個是數據框類DataFrame
DataFrame理解成pandas提供的一種存放數據的表的類型就可以,或者是矩陣也可以。
- 嘗試使用
data=pd.DataFrame([[1,2,3,4],[2,3,4,5],
[3,4,5,6],[4,5,6,7]],
index=list('ABCD'),columns=list('ABCD'))
#index是標籤,行名;columns是列名
四、基本元素
英文代號 | 含義 |
---|---|
Title | 標題 |
Legend | 圖例說明 |
Grid | 網格 |
Line(Line plot) | 線條/點 |
X axis label | X軸標籤 |
Y axis label | Y軸標籤 |
Minor tick label | 小刻度標籤 |
Major tick label | 大刻度標籤 |
Minor tick | 小刻度 |
Major tick | 大刻度 |
Markers(Scatter plot) | 標記/點樣式 |
Spines | 脊柱?? |
Axes | 座標軸 |
Figure | 圖像 |
五、最簡單的圖
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
#默認是y值
plt.ylabel('some numbers')
plt.show()
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
#前一個是橫座標集合,後一個是縱座標集合
【練習題】
通過輸入y=x^2
的五個點的座標到 plot()
中畫出大致形狀,並且設置 title
、xlable
、ylable
,提交生成的圖