Plotting with image together with scatter plot

29 vues (au cours des 30 derniers jours)
Ian
Ian le 8 Déc 2014
I would like to plot an image together with scatter plot on a custom figure file that I had created but I am not sure why it dosent appear together, please advice, thanks
Below is the code that I had tried:
h=openfig('figure.fig'); handles = guihandles(h); i = imread('image.jpg'); scatter(handles.axes1,5,6)
hold on; imshow(i); hold off;

Réponse acceptée

matt dash
matt dash le 8 Déc 2014
You want to use the command "image", not "imshow". Imshow is meant to just display an image for quick viewing, it not meant to be part of a larger code that does anything with the image. You may also need to 1) draw the image first, so it's on the bottom (or give your scatter a z coordinate that is above the image, using scatter3) 2) use "axis image" to property scale the axes to the image.

Plus de réponses (1)

Thorsten
Thorsten le 8 Déc 2014
Modifié(e) : Thorsten le 8 Déc 2014
scatter(handles.axes1,5,6) just plots a single points at (5,6). Maybe that's the error. To scatter 100 points all over the image, use
I = rgb2gray(imread('peppers.png'));
imshow(I)
hold on
scatter(size(I,2)*rand(1,100), size(I,1)*rand(1,100), 'r.')
  1 commentaire
Ian
Ian le 8 Déc 2014
Thanks for your quick reply, but the issue is that I am unable to plot the image and the scatter plot on the same axes. When I plot the image, it will open a new figure. I want the Image and the scatter to be on the same axes

Connectez-vous pour commenter.

Catégories

En savoir plus sur Scatter Plots dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by