陈雨作业,0804
由bqtzejx8创建,最终由bqtzejx8 被浏览 3 用户
import matplotlib.pyplot as plt
import seaborn as sns
wegiht_list = [0.8,0.6,0.4,0.2]
p_values = pd.DataFrame([])
for weight in wegiht_list:
name = f'portfolio_value_w{weight}'
i_values = run(weight)
i_values.rename(columns={'portfolio_value':name},inplace=True)
if p_values.empty:
p_values = i_values
else :
p_values = p_values.merge(i_values,on='date',how='left')
# 设置绘图风格
plt.style.use('seaborn-v0_8-darkgrid')
plt.figure(figsize=(12, 6))
# 绘制每条曲线
for col in p_values.columns[1:]:
plt.plot(p_values['date'], p_values[col], label=col.replace('portfolio_value_', 'w='))
# 添加标题和标签
plt.title('Portfolio Value by Different Weight Parameters', fontsize=14)
plt.xlabel('Date', fontsize=12)
plt.ylabel('Portfolio Value', fontsize=12)
plt.legend(title='Weight', fontsize=10)
# 优化横轴日期显示
plt.gcf().autofmt_xdate() # 自动旋转日期标签
# 显示图表
plt.tight_layout()
plt.show()
\