1. 程式人生 > >Matplotlib基礎-pyplot線圖

Matplotlib基礎-pyplot線圖

一、一圖一線

import numpy as np
import matplotlib.pyplot as plt

t1 = np.arange(0, 5, 0.1)
plt.plot(t1, t2, 'r--')
plt.show()

 

二、一圖多線

import numpy as np
import matplotlib.pyplot as plt

t1 = np.arange(0, 5, 0.1)
t2 = np.arange(0, 10, 0.2)

plt.plot(t1, t2, 'r--')
plt.plot(t1, t3, 'b--')
plt.show()

三、多圖一線

import numpy as np
import matplotlib.pyplot as plt
t1 = np.arange(0, 5, 0.1)
t2 = np.arange(0, 10, 0.2)
t3 = np.arange(0, 20, 0.4)
t4 = np.arange(0, 40, 0.8)

plt.subplot(221)
plt.plot(t1, t2, 'r--')
plt.subplot(222)
plt.plot(t1, t3, 'b--')
plt.subplot(212)
plt.plot(t1, t4, 'g--')
plt.show()

 備註:

1.像plt.subplot(221)中的221表示2X2的圖中的第1個圖,也可寫成plt.subplot(2,2,1)

2.利用subplot()函式可以返回一個axes的物件,通過subplot也可以畫多圖

import numpy as np
import matplotlib.pyplot as plt
t1 = np.arange(0, 5, 0.1)
t2 = np.arange(0, 10, 0.2)
t3 = np.arange(0, 20, 0.4)


f,ax = plt.subplots(2, 2, sharey=True)
ax[1][0].plot(t1, t2, 'r--')
ax[0][0].plot(t1, t3, 'b--')
plt.show()

如果是一行或一列,程式碼如下:

import numpy as np
import matplotlib.pyplot as plt
t1 = np.arange(0, 5, 0.1)
t2 = np.arange(0, 10, 0.2)
t3 = np.arange(0, 20, 0.4)


f,ax = plt.subplots(2, 1, sharey=True)
ax[0].plot(t1, t2, 'r--')
ax[1].plot(t1, t3, 'b--')
plt.show()

四、多圖多線

import numpy as np
import matplotlib.pyplot as plt
t1 = np.arange(0, 5, 0.1)
t2 = np.arange(0, 10, 0.2)
t3 = np.arange(0, 20, 0.4)
t4 = np.arange(0, 40, 0.8)

plt.subplot(221)
plt.plot(t1, t2, 'r--')
plt.plot(t1, t3, 'b--')
plt.subplot(212)
plt.plot(t1, t4, 'g--')
plt.show()

五、共享X(Y)軸,Y(X)軸不同

共享X軸,用twinx()

共享Y軸,用twiny()

import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure(1)
ax1 =plt.subplot(111)
ax2 = ax1.twinx()
ax1.plot(np.arange(1,5),'g--')
ax1.set_ylabel('ax1',color = 'r')
ax2.plot(np.arange(7,10),'b-')
ax2.set_ylabel('ax2',color = 'b')
plt.show()