How to show a image logo in axes?
조회 수: 3 (최근 30일)
이전 댓글 표시
hi
i want to show the logo off my school at the top off the window in my project. i must define the axes function like this? this isn't correct, how do i set the position ?
h = axes('style','axes',...
'units','pix',...
'position',[10 20 180 30],...
'string','ISEP',...
'callback',{@ax_call,S});
the function:
function [] = ax_call(varargin)
h = guidata(gcbf);
set(0,'userdata',h); % Save it in the root.
imshow('ISEP.jpg')
댓글 수: 2
Walter Roberson
2011년 8월 26일
With the code you have, each time you click on the axes outside of any object drawn on the axes, the image would be drawn on the axes, _replacing_ anything already drawn there. Are you sure that is what you want to do?
(I also suspect the newly drawn logo would be drawn on top of anything else in the figure.)
채택된 답변
Jan
2011년 8월 26일
The position is correct, but AXES obejcts do not have the properties 'String' and 'Callback'. In addition you cannot and need not set the 'Style' of an AXES. Saving the handle of the figure in the root's UserData is not useful here.
Img = imread('ISEP.jpg');
ImgSize = size(Img);
AxesH = axes('Units', 'pixels',...
'position', [10 20 180 30], ...
'YDir', 'reverse', ...
'XLim', [0, ImgSize(2)], ...
'YLim', [0, ImgSize(1)], ...
'NextPlot', 'add', ...
'Visible', 'off');
image(Img, 'Parent', AxesH);
The Y-direction of images is reverted. Perhaps the limits should be [1, ImgSize(2)] instead of a 0.
추가 답변 (1개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Lighting, Transparency, and Shading에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!