如何在Pandas中绘制双指标折线图:股息+利息与交易收入随年份变化
实现多系列折线图的方法
嘿,这个需求很容易搞定,用pandas自带的绘图工具就能实现,我给你一步步拆解:
步骤1:计算「股息+利息」的合并列
首先得在你的DataFrame里新增一列,把股息和利息的数值加总到一起。假设你的DataFrame里股息列叫Dividends,利息列叫Interest,执行下面的代码生成合并列:
# 新增合并列,列名可以根据自己习惯自定义 df['Dividends_Plus_Interest'] = df['Dividends'] + df['Interest']
如果你的利息列名不是Interest,记得替换成你实际的列名哦。
步骤2:绘制双系列折线图
接下来直接调用plot方法,指定x轴为Year,y轴为我们刚生成的合并列和交易收入列(假设交易收入列叫Trading_Income):
# 同时绘制两个系列的折线图 df.plot(x='Year', y=['Dividends_Plus_Interest', 'Trading_Income'], kind='line')
同样,如果交易收入的列名不一样,要换成你DataFrame里的实际名称。
可选:美化图表(提升可读性)
要是想让图表更清晰直观,可以用matplotlib添加标题、坐标轴标签和自定义图例:
import matplotlib.pyplot as plt # 绘制图表并获取坐标轴对象 ax = df.plot(x='Year', y=['Dividends_Plus_Interest', 'Trading_Income'], kind='line') # 添加标题和坐标轴标签 ax.set_title('Annual Income Components Trend') ax.set_xlabel('Year') ax.set_ylabel('Monetary Amount') # 自定义图例显示名称 ax.legend(['Dividends + Interest', 'Trading Income']) # 展示最终图表 plt.show()
这样就能得到一张清晰展示两个收入类别随年份变化的折线图啦。
内容的提问来源于stack exchange,提问作者user16527549




