绘制国债收益率曲线,如何使用matplotlib覆盖两条收益率曲线

Bri*_*ian 2 python matplotlib pandas

我正在尝试创建国债收益率曲线图,以比较两个不同日期的利率。我在组合两条曲线和创建清晰的图形时遇到困难。我的问题:如何将两条收益率曲线一起绘制,收益率(利率)在y轴上,到期期限(2yr,5yr,10yr,20yr,30yr)在x轴上?

import numpy as np
import pandas as pd
import datetime as dt
import pandas.io.data as web
import matplotlib.pyplot as plt
import Quandl as q
from pandas import DataFrame
import matplotlib
matplotlib.style.use('ggplot')

treasury = q.get("USTREASURY/YIELD", trim_start="2000-01-01", returns="pandas")

fig, ax = plt.subplots()

treas = DataFrame(treasury)
treas.drop(treas.columns[[0,1,2,3,5,7]], axis=1, inplace=True)
today = treas.iloc[-1:]
first = treas.iloc[:1]
first = first.T
today = today.T

ax.plot(first, 'o')
ax.plot(today, 'x')

#first.plot(marker='o')
#today.plot(marker='o')
plt.show()
Run Code Online (Sandbox Code Playgroud)

这是我的情节当前的样子。我正在尝试翻转轴,以使每个收益率曲线都是带有标记的线。在此处输入图片说明

Ser*_*nov 5

这是您要找的东西吗?

import matplotlib.pyplot as plt
import pandas as pd
import Quandl as ql
%matplotlib inline

yield_ = ql.get("USTREASURY/YIELD")
today = yield_.iloc[-1,:]
month_ago = yield_.iloc[-30,:]
df = pd.concat([today, month_ago], axis=1)
df.columns = ['today', 'month_ago']

df.plot(style={'today': 'ro-', 'month_ago': 'bx--'}
        ,title='Treasury Yield Curve, %');
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明