How to use Vislabels() function in app designer to show the labels in an image?
4 ビュー (過去 30 日間)
古いコメントを表示
I want to show a labeled image in a app.UIAxes object. I have tried several codes to fit the vislabels function so that I can see the labeling in my app's interface. Following is one of the examples which did not work as well.
vislabels(ImageName, 'Parent', app.UIAxesLabeledImage);
0 件のコメント
採用された回答
Walter Roberson
2020 年 12 月 28 日
編集済み: Walter Roberson
2020 年 12 月 28 日
Assuming you are using the File Exchange contribution https://www.mathworks.com/matlabcentral/fileexchange/19665-visualize-output-of-bwlabel then that contribution does not permit you to choose the output location. You would need to upgrade the code to permit an output location.
Note: the way that code uses imshow(), imshow() will delete the current axes if it detects that the current axes occupies the entire figure -- unless the axes has "hold" set on. Therefore you cannot just modify it to do
if nargin == 1
axesHandle = gca;
else
axesHandle = InputAxes;
end
imageHandle = imshow(I, 'InitialMagnification', 'fit');
because invoked like that, it will look for the current axes of a traditional figure, and (probably) delete that.
However, you can use
if nargin == 1
axesHandle = gca;
else
axesHandle = InputAxes;
end
imageHandle = imshow(I, 'InitialMagnification', 'fit', 'Parent', axesHandle);
because imshow() does not delete the current axes if you pass it as the parent.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Develop Apps Using App Designer についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!