overlay two images in GUI

21 Ansichten (letzte 30 Tage)
Dimani4
Dimani4 am 23 Mai 2021
Bearbeitet: Dimani4 am 24 Mai 2021
Hi,
I can't overlay two pictures in gui but I succeed to do this in figure. Take a look at my code when I do in Figure:
function link2axes(whole_matrix_sum,topography_trace)
figure;
ax1=axes;
raman=imagesc(whole_matrix_sum);
ax2=axes;
topography_image=imagesc(topography_trace);
linkaxes([ax1,ax2]);
ax2.Visible = 'off';
ax2.XTick = [];
ax2.YTick = [];
colormap(ax1,'jet'); %raman
colormap(ax2,'parula'); %topography
set(raman, 'AlphaData', double(whole_matrix_sum > 0));
set(topography_image, 'AlphaData', 0.6);
Here I have 2 images (2 matrices of 40X40 pixels). I succeed to do this when I create a figure but I cannot succeed it in Gui.
In Gui I try to write the similar thing but somehow it doesnt do overlay.
See attached the result of overlay of 2 pictures in Figure (as written in the attached code below).
I have the handle which points on axes1 in the gui as handles.axes1.
I try to write code according the code which works on simple Figure as following:
axes(handles.axes1);
ax1=handles.axes1;
raman=imagesc(whole_matrix_sum);
raman.Parent;
ax2=raman.Parent;
topography_image=imagesc(topography_trace);
topography_image=imagesc(handles.topography_trace);
linkaxes([ax1,ax2]);
colormap(ax1,'jet'); %raman
colormap(ax2,'parula'); %topography
set(raman, 'AlphaData', double(whole_matrix_sum > 0));
Error using matlab.graphics.primitive.Image/set
Invalid or deleted object.
Here the matrix of topography I bring from another function that's why it's located in handles.
I attach 2 matrices as well.
As you can see I want overlay two pictures and to control transparency of the one of the pictures.
Where is my mistake?
Thank you very much.

Antworten (0)

Kategorien

Mehr zu Lighting, Transparency, and Shading finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by