Problems overlaying contour on image in uifigure
2 ビュー (過去 30 日間)
古いコメントを表示
I am trying to mimic the following code:
f1=figure;
a1=gca;
hi1 = imshow(repmat(reshape(uint8(normalize(dose(:), "range")* 256), size(xg)), [1 1 3]), R, 'Parent', a1, 'InitialMagnification', 1500)
hold on
w = 17;
[~, hc] = contour(reshape(actual_positions(:, 1), w, []), reshape(actual_positions(:, 2), w, []), reshape(points, w, []), 'Parent', a1)
which works OK and outputs the following:

in a UIFigure like this:
f2 = uifigure();
a2 = uiaxes(f2);
hi2 = imshow(repmat(reshape(uint8(normalize(dose(:), "range")* 256), size(xg)), [1 1 3]), R, 'Parent', a2, 'InitialMagnification', 1500);
which displays the image OK:

The Image seems to be a child of the figure:
>> f2.Children(1).Children
ans =
Image with properties:
CData: [53×53×3 uint8]
CDataMapping: 'direct'
Show all properties
But it fails to overlay the contours properly with this code:
hold all
[~, hc] = contour(reshape(actual_positions(:, 1), w, []), reshape(actual_positions(:, 2), w, []), reshape(points, w, []), 'Parent', a2);
hc.Parent.Color = 'none';
It seems to remove the image and replace it with the contour plot instead of overlaying it.

There is only one child and it is the contour plot:
>> f2.Children(1).Children
ans =
Contour with properties:
EdgeColor: 'flat'
LineStyle: '-'
LineWidth: 0.5000
FaceColor: 'none'
LevelList: [0.0100 0.0200 0.0300 0.0400 0.0500 0.0600 0.0700 0.0800 0.0900]
XData: [17×17 double]
YData: [17×17 double]
ZData: [17×17 double]
Show all properties
Is there any way to make the behavior the same for a figure and a uifigure?
0 件のコメント
採用された回答
Voss
2024 年 3 月 13 日
Use
hold(a2,'all')
That is, you need to specify the axes you want to hold.
3 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Develop uifigure-Based Apps についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!