how can i insert photo to a graph location

7 ビュー (過去 30 日間)
Cem Eren Aslan
Cem Eren Aslan 2022 年 1 月 23 日
移動済み: Image Analyst 2023 年 3 月 21 日
Hello all,
i try to insert a photo to axes in GUI. In these axes, only the image will be seen but the axis of the graph will not be visible. how can I do that?
if handles.POP_photo == 2
axes(handles.photo);
imshow('asd.jpg');
end
thanks

採用された回答

Cris LaPierre
Cris LaPierre 2022 年 1 月 23 日
This is the default behavior when displaying an image in an axes. You can turn the axis back on using the following syntax: axis(handles.axes1,'on')
Here's an example of equivalent steps outside of a gui.
img = imread('peppers.png');
imshow(img)
axis on
  3 件のコメント
Cris LaPierre
Cris LaPierre 2022 年 1 月 24 日
I am confused. In your original question, you asked how to show the axis. Now you want to get rid of it? Could you be a little more descriptive in what you are trying to do?
Image Analyst
Image Analyst 2022 年 1 月 24 日
axis('on', 'image'); % Show tick marks and tick labels.
axis('off', 'image'); % Hide tick marks and tick labels.

サインインしてコメントする。

その他の回答 (2 件)

Voss
Voss 2022 年 1 月 23 日
移動済み: Image Analyst 2023 年 3 月 21 日
Doesn't imshow() do it?
ax1 = subplot(2,1,1);
ax2 = subplot(2,1,2);
axes(ax1);
imshow('Saturn_Hexagon.png'); % image showing in ax1; no lines or ticks showing in ax1

Image Analyst
Image Analyst 2022 年 1 月 24 日
To put an image onto a graph, see this demo:
% Draw a small image inset in the upper right corner of a larger plot.
% Ref: https://www.mathworks.com/matlabcentral/answers/60376-how-to-make-an-inset-of-matlab-figure-inside-the-figure#comment_654093
clc; % Clear the command window.
close all; % Close all figures (except those of imtool.)
clear; % Erase all existing variables. Or clearvars if you want.
%workspace; % Make sure the workspace panel is showing.
format long g;
format compact;
fontSize = 18;
x = linspace(0, 1);
y1 = sin(2*pi*x);
%figure(1)
% plot on large axes
plot(x, y1, 'LineWidth', 2)
grid on;
ax1 = gca; % Store handle to axes 1.
% Create smaller axes in top right, and plot on it
% Store handle to axes 2 in ax2.
ax2 = axes('Position',[.6 .6 .3 .3])
ax2 =
Axes with properties: XLim: [0 1] YLim: [0 1] XScale: 'linear' YScale: 'linear' GridLineStyle: '-' Position: [0.6 0.6 0.3 0.3] Units: 'normalized' Show all properties
box on;
fileName = 'peppers.png';
rgbImage = imread(fileName);
imshow(rgbImage);
axis('on', 'image');
% Now draw something back on axis 1
hold(ax1, 'on'); % Don't blow away existing curve.
y2 = cos(2*pi*x/0.7);
plot(ax1, x, y2, 'r-', 'LineWidth', 2);
Other demos for insets are attached.

カテゴリ

Help Center および File ExchangeImage Processing and Computer Vision についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by