Can I modify the XY-Graph in Matlab-Simulnk R2016a so that I can follow the end of my output line clearly?

5 views (last 30 days)
As the figure below shows, I can not follow the end of my output line. Could it be possible to make the tail of the line disappear after a lapse of certain time (such as a comet in the sky)?
Or to adapt the XY-Graph to provide the end of line with a head, which has a different color from the main line?
Or is there any another suggestion to display the line clearly?
Thank you for any help!

Accepted Answer

Vaibhav Awale
Vaibhav Awale on 2 May 2016
Hi Mahfoud,
You can modify the XY-Graph in Simulink R2016a. The XY graph that we see is a s-function. If you right click on the block and go to Mask -> Look under Mask, you will see that the s-function "sfunxy.m" is used.
You can modify this s-function according to your requirement. For example, you can clear the graph periodically or provide a marker for the head of the graph. The s-function uses MATLAB syntax, so you can use all the available properties of a MATLAB figure.
Another much simpler workaround would be to use a MATLAB function block. It is fairly straightforward to write to MATLAB function block to plot a x-y graph. If you are not much familiar with using s-functions, I would recommend to use a MATLAB function block.
Regards,
Vaibhav

More Answers (1)

Mahfoud Alibrahim
Mahfoud Alibrahim on 11 May 2017
Edited: Mahfoud Alibrahim on 11 May 2017
Hello, I found the following method, which could help:
you can edit the s-function for the XY-Graph in that you type the following instruction On MATLAB Command Window:
edit sfunxy.m
To provide the data-points with a marker you can do the following:
Go to the line(number about 239):
set(ud.XYLine, 'LineStyle','-');
and replace it with:
set(ud.XYLine, 'LineStyle','-', 'Marker','*');
To clear a part of the plot, go to the line (number about 396 in matlab 2015):
new_line = feval(@()hg2sample.ScopeLineAnimator('maxNumVertices',50000));
Here you can change the numbers of the 'maxNumVertices' to got the desired Display on the XY-Graph. For Exempel you can type 10 instead of 50000 to display just the last ten data-points in the XY-Graph.
Regards
Mahfoud

Categories

Find more on Simulation in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!