我正在尝试创建treasury yield curve的图表,以比较两个不同日期的费率。我很难将两条曲线组合起来并创建一个干净的图形。 我的问题:如何将两条收益率曲线绘制在一起,收益率(利率)在y轴上,到期日(2年,5年,10年,20年,30年)在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()
答案 0 :(得分: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, %');
答案 1 :(得分:1)
仅供参考: 我正在使用 python 3.8 和带有 anaconda 的 spyder。我花了很多时间对 Quandl 的“模块未找到”错误进行故障排除,结果发现它应该是 quandl(小写)。