【发布时间】:2022-05-04 03:20:16
【问题描述】:
我正在尝试创建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()
【问题讨论】:
-
您能否包含当前情节并解释您的预期?
-
基本上,我希望它看起来就像我添加的treasury.gov 链接中的收益率曲线。
-
你的意思是你想要用一条线连接的点,还是还有更多?
-
是的,我想要用一条线连接的点,但我的主要问题是它们没有按照我希望的方式绘制(y 轴上的收益率,x 轴上的成熟度轴)。现在,它被翻转了。
-
ax.plot(maturity, yield, '-o')
标签: python pandas matplotlib