Remove Dashed Grey Asymptote Lines From Plot
11 次查看(过去 30 天)
显示 更早的评论
I have a plot of a few symbolic functions in matlab, and I'm getting some grey dashed lines. I'm going to guess that these are for asymptotes, which I expected. Is there a way to remove these lines?
Attached is my plot. The lines I'm talking about are at x = 4 and x = 0. Ignore the legend and other colors, that's another story.

3 个评论
采纳的回答
Walter Roberson
2020-9-12
If you let
h = fplot(expression, range)
then
h.NodeChildren(1).Visible = 'off';
will turn off the discontinuinity lines. (The gray dashed ones, at least. At the moment I do not recall the formula for any functions that generate the brown discontinuity lines. Possibly NodeChildren(2) for those.)
5 个评论
Walter Roberson
2020-9-18
Put a drawnow() before setting the Visible to off. If you set the visible to off before the drawnow then it will be reset to on when the plot renders.
... No, I do not know why this happens. I could make some guesses.
Oh, look at that, the line comes back again if you resize the plot. I think we can deduce that the rendering callbacks are turning the visibility on. You might want to add in a ResizeFcn callback to drawnow() and turn it invisible again after the axes changes. Or perhaps a PostSet listener on the axes Position property.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
