adding text on an image in 2018a

3 views (last 30 days)
Greg
Greg on 12 Apr 2018
Answered: Rik on 12 Apr 2018
Hello, Why text() is returning: "Index in position 1 exceeds array bounds (must not exceed 1)" when I do:
hold on;
imshow(img)
text(20, 40, 'Some text');
hold off;
This example from the documentation also doesn't work.
x = 0:pi/20:2*pi;
y = sin(x);
plot(x,y)
text(pi,0,'\leftarrow sin(\pi)')
I can live without this and have an alternative, but this would fit much nicer in my design. Many thanks
  3 Comments
Walter Roberson
Walter Roberson on 12 Apr 2018
It is likely that you have a variable named text
Greg
Greg on 12 Apr 2018
Edited: Greg on 12 Apr 2018
Rik, Walter, Many thanks for this. I cannot accept this as an answer as this is a comment only.

Sign in to comment.

Accepted Answer

Rik
Rik on 12 Apr 2018
Then I'll repeat my suspicion as an answer: If you have strange errors about indexing, it is often the case that you overwrote (or more specifically: shadowed) the internal function by creating a variable with the same name. This is a mistake that occurs especially often with functions with names like text, sum, and union.
Using the which function, you can find out what function is actually called. Other options include using breakpoints and setting the pause on error flag.

More Answers (0)

Categories

Find more on Entering Commands 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!