You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中Pandas绘图异常:bool列False时仍绘制标记

解决Pandas绘制交易信号标记的问题

你现在的问题是没筛选出long/short信号为True的行,直接用了全量的索引和收盘价数据,所以不管信号真假,所有位置都画了标记。

修正方法很简单:先通过布尔索引筛选出信号为True的记录,再取对应的时间索引和收盘价来绘制标记:

data_frame.set_index('timestamp', inplace=True)  # 将时间列设为索引
plt.plot(data_frame['close'])

# 筛选long信号为True的行,绘制绿色上箭头标记
long_signals = data_frame[data_frame['long'] == True]
plt.plot(long_signals.index, long_signals['close'], '^', markersize=2, color='g')

# 筛选short信号为True的行,绘制红色标记(做空信号建议用向下箭头'v'更直观)
short_signals = data_frame[data_frame['short'] == True]
plt.plot(short_signals.index, short_signals['close'], '^', markersize=2, color='r')

plt.show()

如果想要更清晰地区分多空信号,可以把做空的标记改成向下箭头:

plt.plot(short_signals.index, short_signals['close'], 'v', markersize=2, color='r')

内容的提问来源于stack exchange,提问作者vowag13080

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 17:39:52