第一章:使用函數繪制matplotlib的圖表組成元素


1、繪制直線圖

 1 # ============================展現變量的趨勢變化==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 
 8 # sin函數
 9 y = np.cos(x)
10 
11 # 在標准正態分布中隨機的取100個數
12 y1 = np.random.randn(100)
13 
14 # ===========繪制直線圖=============
15 # x:x軸上的數值,y:y軸上的數值,ls:折線圖線條風格,lw:折線圖的線條寬度,label:標記圖形內容的標簽文本
16 plt.plot(x,y,ls="--",lw=2,label="plot figure")
17 
18 # 給圖形加上圖例
19 plt.legend()
20 
21 # 顯示圖片
22 plt.show()

 2、繪制散點圖

 1 # ============================尋找變量之間的變化關系==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0.05,10,1000)
 7 
 8 # 在標准正態分布中隨機的取100個數
 9 y = np.random.randn(1000)
10 
11 # ===========繪制散點圖=============
12 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
13 plt.scatter(x,y,c="b",label="scatter figure")
14 
15 # 給圖形加上圖例
16 plt.legend()
17 
18 # 顯示圖片
19 plt.show()

 

 3、設置X/Y軸的數值顯示范圍

# ============================設置X/Y軸的數值顯示范圍==========================
import matplotlib.pyplot as plt
import numpy as np

# 從0到10均勻的取1000個數
x = np.linspace(0,10,1000)

# 在標准正態分布中隨機的取100個數
y = np.random.randn(1000)

# ===========繪制散點圖=============
# x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
plt.scatter(x,y,c="b",label="scatter figure")

# 給圖形加上圖例
plt.legend()

# 設置X/Y軸的數值顯示范圍
plt.xlim(0,10)
plt.ylim(0,1)
# 顯示圖片
plt.show()

 

 4、設置X/Y軸的文本標簽

 1 # ============================設置X/Y軸的文本標簽==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 
 8 # 在標准正態分布中隨機的取100個數
 9 y = np.random.randn(1000)
10 
11 # ===========繪制散點圖=============
12 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
13 plt.scatter(x,y,c="b",label="scatter figure")
14 
15 # 給圖形加上圖例
16 plt.legend()
17 
18 # 設置X/Y軸的數值顯示范圍
19 plt.xlim(0,10)
20 plt.ylim(0,1)
21 
22 # 設置X/Y軸的文本標簽
23 plt.xlabel(xlabel="X-axis")
24 plt.ylabel(ylabel="Y-axis")
25 
26 # 顯示圖片
27 plt.show()

 

 5、設置X/Y軸刻度的參考線

 1 # ============================設置X/Y軸刻度的參考線==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 y = np.sin(x)
 8 
 9 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
10 plt.plot(x,y,ls="-",lw=2,c="b",label="plot figure")
11 
12 # 給圖形加上圖例
13 plt.legend()
14 
15 # 繪制X/Y軸刻度的參考線
16 plt.grid(linestyle=":",color="r")
17 
18 # 設置X/Y軸的數值顯示范圍
19 plt.xlim(0,10)
20 plt.ylim(-1,1)
21 
22 # 設置X/Y軸的文本標簽
23 plt.xlabel(xlabel="X-axis")
24 plt.ylabel(ylabel="Y-axis")
25 
26 # 顯示圖片
27 plt.show()

 

 6、繪制X/Y軸的水平參考線

 1 # ============================繪制X/Y軸的水平參考線==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 y = np.sin(x)
 8 
 9 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
10 plt.plot(x,y,ls="-",lw=2,c="b",label="plot figure")
11 
12 # 給圖形加上圖例
13 plt.legend()
14 
15 # 繪制X/Y軸刻度的參考線
16 plt.grid(linestyle=":",color="r")
17 
18 # 繪制X/Y軸的水平參考線
19 plt.axhline(y=0.00,c="c",ls="-",lw=2)         # 水平
20 plt.axvline(x=4.7,c="c",ls="-",lw=2)          # 垂直
21 
22 # 設置X/Y軸的數值顯示范圍
23 plt.xlim(0,10)
24 plt.ylim(-1,1)
25 
26 # 設置X/Y軸的文本標簽
27 plt.xlabel(xlabel="X-axis")
28 plt.ylabel(ylabel="Y-axis")
29 
30 # 顯示圖片
31 plt.show()

 

 7、繪制垂直於X/Y軸的參考區域

 1 # ============================繪制垂直於X/Y軸的參考區域==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 y = np.sin(x)
 8 
 9 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
10 plt.plot(x,y,ls="-",lw=2,c="b",label="plot figure")
11 
12 # 給圖形加上圖例
13 plt.legend()
14 
15 # 繪制X/Y軸刻度的參考線
16 # linestyle:網格線的線條風格;color:線條顏色
17 plt.grid(linestyle=":",color="r")
18 
19 # 繪制X/Y軸的水平參考線
20 plt.axhline(y=0.00,c="c",ls="-",lw=2)       # 水平
21 plt.axvline(x=4.7,c="c",ls="-",lw=2)        # 垂直
22 
23 # 繪制垂直於X/Y軸的參考區域
24 # xmin/ymin:起始位置,xmax/ymax:終止位置,facecolor:參考區域填充顏色,alpha:透明度
25 plt.axhspan(ymin=-0.15,ymax=0.15,facecolor="y",alpha=0.3)       # 水平
26 plt.axvspan(xmin=4,xmax=5.4,facecolor="y",alpha=0.3)            # 垂直
27 
28 # 設置X/Y軸的數值顯示范圍
29 plt.xlim(0,10)
30 plt.ylim(-1,1)
31 
32 # 設置X/Y軸的文本標簽
33 plt.xlabel(xlabel="X-axis")
34 plt.ylabel(ylabel="Y-axis")
35 
36 # 顯示圖片
37 plt.show()

 

 8、圖形內容指向型注釋文本

 1 # ============================圖形內容指向型注釋文本==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 y = np.sin(x)
 8 
 9 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
10 plt.plot(x,y,ls="-",lw=2,c="b",label="plot figure")
11 
12 # 給圖形加上圖例
13 plt.legend()
14 
15 # 繪制X/Y軸刻度的參考線
16 # linestyle:網格線的線條風格;color:線條顏色
17 plt.grid(linestyle=":",color="r")
18 
19 # 繪制X/Y軸的水平參考線
20 plt.axhline(y=0.00,c="c",ls="-",lw=2)       # 水平
21 plt.axvline(x=4.7,c="c",ls="-",lw=2)        # 垂直
22 
23 # 繪制垂直於X/Y軸的參考區域
24 # xmin/ymin:起始位置,xmax/ymax:終止位置,facecolor:參考區域填充顏色,alpha:透明度
25 plt.axhspan(ymin=-0.15,ymax=0.15,facecolor="y",alpha=0.3)       # 水平
26 plt.axvspan(xmin=4,xmax=5.4,facecolor="y",alpha=0.3)            # 垂直
27 
28 # 圖形內容指向型注釋文本
29 # Maximum:要注釋的文本,xy:被注釋圖形內容的坐標位置,xytext:注釋文本的位置,
30 # weight:注釋內容的字體粗細風格,color:注釋文本顏色,arrowprops:指示被注釋內容的箭頭的屬性字典
31 plt.annotate(s="Maximum",xy=(np.pi/2,1.0),xytext=((np.pi/2)+1.0,.8),weight="bold",color="g",
32              arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="g"))
33 
34 # 設置X/Y軸的數值顯示范圍
35 plt.xlim(0,10)
36 plt.ylim(-1,1)
37 
38 # 設置X/Y軸的文本標簽
39 plt.xlabel(xlabel="X-axis")
40 plt.ylabel(ylabel="Y-axis")
41 
42 # 顯示圖片
43 plt.show()

 

 9、添加圖形內容無指向型注釋文本

 1 =======添加圖形內容無指向型注釋文本==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 y = np.sin(x)
 8 
 9 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
10 plt.plot(x,y,ls="-",lw=2,c="b",label="plot figure")
11 
12 # 給圖形加上圖例
13 plt.legend()
14 
15 # 繪制X/Y軸刻度的參考線
16 # linestyle:網格線的線條風格;color:線條顏色
17 plt.grid(linestyle=":",color="r")
18 
19 # 繪制X/Y軸的水平參考線
20 plt.axhline(y=0.00,c="c",ls="-",lw=2)       # 水平
21 plt.axvline(x=4.7,c="c",ls="-",lw=2)        # 垂直
22 
23 # 繪制垂直於X/Y軸的參考區域
24 # xmin/ymin:起始位置,xmax/ymax:終止位置,facecolor:參考區域填充顏色,alpha:透明度
25 plt.axhspan(ymin=-0.15,ymax=0.15,facecolor="y",alpha=0.3)       # 水平
26 plt.axvspan(xmin=4,xmax=5.4,facecolor="y",alpha=0.3)            # 垂直
27 
28 # 圖形內容指向型注釋文本
29 # Maximum:要注釋的文本,xy:被注釋圖形內容的坐標位置,xytext:注釋文本的位置,
30 # weight:注釋內容的字體粗細風格,color:注釋文本顏色,arrowprops:指示被注釋內容的箭頭的屬性字典
31 plt.annotate(s="Maximum",xy=(np.pi/2,1.0),xytext=((np.pi/2)+1.0,.8),weight="bold",color="g",
32              arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="g"))
33 
34 # 添加圖形內容無指向型注釋文本
35 plt.text(x=2.6,y=0.55,s="y=sin(x)",weight="bold",color="m")
36 
37 # 設置X/Y軸的數值顯示范圍
38 plt.xlim(0,10)
39 plt.ylim(-1,1)
40 
41 # 設置X/Y軸的文本標簽
42 plt.xlabel(xlabel="X-axis")
43 plt.ylabel(ylabel="Y-axis")
44 
45 # 顯示圖片
46 plt.show()

 

 10、添加圖形內容標題

 1 =======添加圖形內容標題==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 y = np.sin(x)
 8 
 9 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
10 plt.plot(x,y,ls="-",lw=2,c="b",label="plot figure")
11 
12 # 給圖形加上圖例
13 plt.legend()
14 
15 # 繪制X/Y軸刻度的參考線
16 # linestyle:網格線的線條風格;color:線條顏色
17 plt.grid(linestyle=":",color="r")
18 
19 # 繪制X/Y軸的水平參考線
20 plt.axhline(y=0.00,c="c",ls="-",lw=2)       # 水平
21 plt.axvline(x=4.7,c="c",ls="-",lw=2)        # 垂直
22 
23 # 繪制垂直於X/Y軸的參考區域
24 # xmin/ymin:起始位置,xmax/ymax:終止位置,facecolor:參考區域填充顏色,alpha:透明度
25 plt.axhspan(ymin=-0.15,ymax=0.15,facecolor="y",alpha=0.3)       # 水平
26 plt.axvspan(xmin=4,xmax=5.4,facecolor="y",alpha=0.3)            # 垂直
27 
28 # 圖形內容指向型注釋文本
29 # Maximum:要注釋的文本,xy:被注釋圖形內容的坐標位置,xytext:注釋文本的位置,
30 # weight:注釋內容的字體粗細風格,color:注釋文本顏色,arrowprops:指示被注釋內容的箭頭的屬性字典
31 plt.annotate(s="Maximum",xy=(np.pi/2,1.0),xytext=((np.pi/2)+1.0,.8),weight="bold",color="g",
32              arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="g"))
33 
34 # 添加圖形內容無指向型注釋文本
35 plt.text(x=2.6,y=0.55,s="y=sin(x)",weight="bold",color="m")
36 
37 # 添加圖形內容標題
38 plt.title(label="y=sin(x)")
39 
40 # 設置X/Y軸的數值顯示范圍
41 plt.xlim(0,10)
42 plt.ylim(-1,1)
43 
44 # 設置X/Y軸的文本標簽
45 plt.xlabel(xlabel="X-axis")
46 plt.ylabel(ylabel="Y-axis")
47 
48 # 顯示圖片
49 plt.show()

 

 11、標識不同圖形的文本標簽圖例

 1 # ============================標識不同圖形的文本標簽圖例==========================
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 # 從0到10均勻的取1000個數
 6 x = np.linspace(0,10,1000)
 7 y = np.sin(x)
 8 
 9 # x:x軸上的數值,y:y軸上的數值,c:顏色,label:標記圖形內容的標簽文本
10 plt.plot(x,y,ls="-",lw=2,c="b",label="plot figure")
11 
12 # 給圖形加上圖例
13 # loc:圖例在圖像當中的地理位置
14 plt.legend(loc="lower right")
15 
16 # 繪制X/Y軸刻度的參考線
17 # linestyle:網格線的線條風格;color:線條顏色
18 plt.grid(linestyle=":",color="r")
19 
20 # 繪制X/Y軸的水平參考線
21 plt.axhline(y=0.00,c="c",ls="-",lw=2)       # 水平
22 plt.axvline(x=4.7,c="c",ls="-",lw=2)        # 垂直
23 
24 # 繪制垂直於X/Y軸的參考區域
25 # xmin/ymin:起始位置,xmax/ymax:終止位置,facecolor:參考區域填充顏色,alpha:透明度
26 plt.axhspan(ymin=-0.15,ymax=0.15,facecolor="y",alpha=0.3)       # 水平
27 plt.axvspan(xmin=4,xmax=5.4,facecolor="y",alpha=0.3)            # 垂直
28 
29 # 圖形內容指向型注釋文本
30 # Maximum:要注釋的文本,xy:被注釋圖形內容的坐標位置,xytext:注釋文本的位置,
31 # weight:注釋內容的字體粗細風格,color:注釋文本顏色,arrowprops:指示被注釋內容的箭頭的屬性字典
32 plt.annotate(s="Maximum",xy=(np.pi/2,1.0),xytext=((np.pi/2)+1.0,.8),weight="bold",color="g",
33              arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="g"))
34 
35 # 添加圖形內容無指向型注釋文本
36 plt.text(x=2.6,y=0.55,s="y=sin(x)",weight="bold",color="m")
37 
38 # 添加圖形內容標題
39 plt.title(label="y=sin(x)")
40 
41 # 設置X/Y軸的數值顯示范圍
42 plt.xlim(0,10)
43 plt.ylim(-1,1)
44 
45 # 設置X/Y軸的文本標簽
46 plt.xlabel(xlabel="X-axis")
47 plt.ylabel(ylabel="Y-axis")
48 
49 # 顯示圖片
50 plt.show()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM