Overlap a surf() over an image() with different colormap
15 ビュー (過去 30 日間)
古いコメントを表示
Hi!
I have to different objects, one is an image, the other is a surface wit x,y,z,and c components.
When I do surf() by itself i get a nice colormap from red to blue (the jet one), but when i do
% Image data
im1 = imagesc(pic); hold on
% Strain data
x1 = pic_data{1}{1};
y1 = pic_data{1}{2};
z1 = zeros(size(x1,1),size(x1,2));
c1 = strain_data{1}{variable};
s1 = surf(x1,y1,z1,c1,'FaceAlpha',0.5);
I can't observe the changes in the s1 surface colormap.
Any ideas?
0 件のコメント
回答 (4 件)
Image Analyst
2015 年 5 月 22 日
Are you thinking of something like this: http://www.mathworks.com/matlabcentral/fileexchange/29485-meshcanopy
1 件のコメント
Image Analyst
2015 年 5 月 22 日
Walter Roberson
2015 年 5 月 22 日
convert your imagesc to truecolor (RGB) so that you can image() it without caring about the color map. That frees the colormap for the surf() purposes.
See the File Exchange contribution freezeColors()
4 件のコメント
Image Analyst
2015 年 5 月 30 日
But your bottom array is only 50 by 45 while the image above is much larger than that. Where exactly did you want to put this smaller image in the larger image? In the middle, upper left, or do you want to scale it to the same size as the larger image?
Walter Roberson
2015 年 5 月 30 日
Download and install http://www.mathworks.com/matlabcentral/fileexchange/35354-multiple-colormaps. Then,
%choose a colormap for the first plot. If you want to use the default
%then comment out this next line:
colormap pink;
%record the colormap in use
cmaps{1} = colormap();
%plot first object
h(1) = imagesc(a);
hold on
%choose a colormap for the second plot. If you want to use the default
%or the same as the previous, then comment out this next line:
colormap flag;
%record the colormap in use
cmaps{2} = colormap();
%plot the second object
h(2) = surf(s);
%Now manipulate the colormap and settings so the two plots are independent:
multicmap(h, cmaps);
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Red についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!