Plotting with image together with scatter plot

31 visualizzazioni (ultimi 30 giorni)
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;

Risposta accettata

matt dash
matt dash il 8 Dic 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.

Più risposte (1)

Thorsten
Thorsten il 8 Dic 2014
Modificato: Thorsten il 8 Dic 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 Commento
Ian
Ian il 8 Dic 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

Accedi per commentare.

Categorie

Scopri di più su Image Processing Toolbox in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by