PlotString重影问题

老师,您好!当用PLotString或plt.text函数在界面上输出提示时,在实时行情下总是存在重影,采取怎样的办法才能消除这种现象? 还有,消息中心里的消息能用代码自动提取吗?谢谢!

不需要1分钟10秒周期就能看到,你每根K线都在写"你好" ,你写多了自然就有你所谓的“重影”前面的案例也是一样的

回复:已经设置了条件If(BarStatus == 2),不是让它每根K线都写,那您说怎样才能实现在最后一根K线输出“您好!”两个字来?

回复:实时和历史是不同的,实时情况下每根新的都是实时状态 你刷新他们都变成历史了 当然会没有

回复:我只是在请教,如何在实时行情下做到只在最后一根K线输出提示?

回复:我觉得你可以尝试用print看右边控制台

回复:这事关Plot对象的底层实现,靠用户代码可能无法解决这个问题。我原来用定时Restart,看来还是只能靠这个办法了。

通过文字定位就知道是不同K线的输出了

回复:您在实时行情下(1分钟K线)运行下下面的代码就明白了。If(BarStatus == 2) { PlotString("Ok", "您好!", Low); }

回复:在实时输出的时候 你的新增每根K线都当过一次 "最新K线" 当然会输出啊你刷新了 重新运行代码 那只有最1根是最新K线 不能光想静态的情况,代码要考虑到动态的看这个K线如果你不想刷新,又不想历史K线的输出影响那就用unplot 把过去的擦掉

回复:Ok, 终于解决了,我原来不知道有unplot这个函数可以用。谢谢!👍

回复:🐂学习了

主要是因为你每根bar上都在输出,导致叠加成重影了你可以试试只在关键bar上plotstring,或者间隔一定bar数量再plotstring

回复:

回复:每根K线输出的反而没问题,只是条件在最后一根K线才输出的,会在实时出现下一根新K线时发生重影,原因是在新的K线显示时,原来那根K线的显示并不自动清除,通过手动刷新才能去除。

回复:您好,我还有一个问题就是:消息中心里的消息能用代码自动提取吗?谢谢!

回复:是没有这个机制

回复:知道了,谢谢!

回复:不行

你每根K线都在输出

回复:每根K线输出的反而没问题,只是条件在最后一根K线才输出的,会在实时出现下一根新K线时发生重影,原因是在新的K线显示时,原来那根K线的显示并不自动清除,通过手动刷新才能去除。

换个刷新率高点的显示器?

啥重影?你倒是给个图啊

回复:

回复:代码没问题,非实时或通过刷新就能正常显示。

回复:那还是代码问题

回复:If(BarStatus == 2){ PlotString("Ok", "您好!", Low); }您在实时1分钟K线下试下。