How to include labels to a plot?

1 次查看(过去 30 天)
So I have some coordinates and I want to include some labels on my plot.
force = 30;
displacement = [10 20 30 40];
cases = ['This is case 1' 'This is case 2' 'This is case 3' 'This is case 4'];
plot (force, displacement, 'x')
for i =1:length(displacement)
text(force, displacement(i), ['\leftarrow ', cases(i)]);
end
I know the problem is with either line 3 or line 6 because cases is saved as char and when I call cases(i) in line 6 it displays only the individual characters instead of everything that is inside the quotation(' ') marks. Does anyone know how to fix this?

采纳的回答

Kevin Holly
Kevin Holly 2022-11-6
编辑:Kevin Holly 2022-11-6
force = 30;
displacement = [10 20 30 40];
cases = ["This is case 1" "This is case 2" "This is case 3" "This is case 4"];
plot (force, displacement, 'x')
for i =1:length(displacement)
text(force, displacement(i), ['\leftarrow ', char(cases(i))]);
end
  2 个评论
Andrei
Andrei 2022-11-6
Thank you for your help. Do you mind explaining why it works when
cases = ["This is case 1" "This is case 2" "This is case 3" "This is case 4"];
and not when
cases = ['This is case 1' 'This is case 2' 'This is case 3' 'This is case 4'];
Kevin Holly
Kevin Holly 2022-11-6
Using double quotes creates a string array, where characters enclosed are treated as a single elements.
string_array = "This is case 1";
size(string_array)
ans = 1×2
1 1
Character arrays use single quotes. In this case, each character is treated as a separate element.
character_array = 'This is case 1';
size(character_array)
ans = 1×2
1 14
For more information click here.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

产品


版本

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by