直方圖和折線圖放在同一畫布上


有時候我們需要畫出分箱后的個數直方圖和每個區間的逾期率,大概圖形就像下面一樣

 

 直接給出代碼

#構建數據
import pandas as pd 
import numpy as np
data = pd.DataFrame({
    'A':list('紅橙黃綠藍靛紫'),
    'B':np.random.randint(1,100,7),
    'C':(np.random.randint(1,10,7))*0.1},
    columns=list('ABC')
)

#畫圖
import matplotlib.pyplot as plt
fig, ax1 = plt.subplots()
ax1.bar(data.A,data.B,color='green')
ax2 = ax1.twinx() 
ax2.plot(data.A,data.C,color='red')

 

 數據值虛構和隨機的,所以畫出來的圖不是很好看

主要重點在

ax2 = ax1.twinx() 作用是y軸的副坐標,也即是設置右邊的y坐標,我們將這二者放在一起,一般二者的刻度尺是不一樣的,沒有設置不同刻度,折線的(比例)就無法體現出來

 


免責聲明!

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



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