Matplotlib雙軸


在圖中具有雙xy軸有時是很有用的。 此外,當繪製具有不同單位的曲線時。 Matplotlib通過twinx()twiny()函式支援此功能。

在下面的範例中,繪圖具有雙y軸,一個顯示exp(x),另一個顯示log(x) -

#! /usr/bin/env python
#coding=utf-8
import matplotlib.pyplot as plt
import numpy as np
import math

plt.rcParams['font.sans-serif'] = ['SimHei'] # 步驟一(替換sans-serif字型)
plt.rcParams['axes.unicode_minus'] = False   # 原文出自【易百教學】,商業轉載請聯絡作者獲得授權,非商業請保留原文連結:


fig = plt.figure()
a1 = fig.add_axes([0,0,1,1])
x = np.arange(1,11)
a1.plot(x,np.exp(x))
a1.set_ylabel('exp')
a2 = a1.twinx()
a2.plot(x, np.log(x),'ro-')
a2.set_ylabel('log')
fig.legend(labels = ('exp','log'),loc='upper left')
plt.show()

執行上面範例程式碼,得到以下結果 -