How to edit the red "+" marks on the Nyquist plot

9 views (last 30 days)
Is there a way to change the thickness and color of the red + marks that appear when drawing a Nyquist diagram?

Accepted Answer

Voss
Voss on 5 Jul 2024
H = tf([2 5 1],[1 2 3]);
nyquist(H)
h = findall(gcf(),'Type','line')
h =
5x1 Line array: Line Line Line Line Line
mkr = get(h,'Marker')
mkr = 5x1 cell array
{'+' } {'none'} {'none'} {'none'} {'none'}
h = h(strcmp(mkr,'+'));
h.LineWidth = 5;
h.Color = [0 1 0];
h.MarkerSize = 20;
  3 Comments
Voss
Voss on 9 Jul 2024
You're welcome!
Regarding the line of code you asked about, before that line is executed, h contains all the line objects in the figure. That line of code compares the marker of each line object to '+' and keeps only the line objects whose marker is '+', so that afterwards h contains only those line objects whose marker is '+'.
Steven Lord
Steven Lord on 9 Jul 2024
A slightly simpler approach would be to directly findobj all objects whose Marker property is '+'.
H = tf([2 5 1],[1 2 3]);
nyquist(H)
h = findall(gcf(),'Marker', '+')
h =
Line with properties: Color: [1 0 0] LineStyle: '-' LineWidth: 0.5000 Marker: '+' MarkerSize: 6 MarkerFaceColor: 'none' XData: -1 YData: 0 ZData: -10 Use GET to show all properties
The properties (specifically Color, Marker, XData, and YData) indicate that this is the "line" that is the red + symbol. This avoids the strcmp call.

Sign in to comment.

More Answers (1)

Umar
Umar on 5 Jul 2024

Hi Ayumi,

To change the thickness and color of the red + marks in a Nyquist diagram, you can modify the properties of the plot after generating it. Below is an example illustrating how to achieve this customization. So, first, I will create a transfer function G as an example.Next, generate the Nyquist plot using the nyquist function. Afterwards, access the current figure handle and find all lines with a red color (indicating the + marks). Finally, we set the line width to 2 and change the color to blue for better visibility.

>> % Create a transfer function G = tf([1], [1, 2, 1]);

% Generate the Nyquist plot figure; nyquist(G);

% Access the current figure and set properties of the red + marks h = gcf; % Get current figure handle redPlusMarks = findall(h, 'Type', 'line', 'Color', [1 0 0]); % Find red lines set(redPlusMarks, 'LineWidth', 2); % Set line width to 2 set(redPlusMarks, 'Color', [0 0 1]); % Set color to blue

Please see attached plot as reference.

By following this approach, you can easily customize the appearance of the red + marks in Nyquist diagrams according to your preferences.

  1 Comment
ayumi obitsu
ayumi obitsu on 9 Jul 2024
Mr.Umar
Thank you for your reply.
I was able to successfully change the color and thickness of the + mark.

Sign in to comment.

Categories

Find more on Graphics Object Properties in Help Center and File Exchange

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!