Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Matlab How to make 2D plot of points with different colors?

  1. Dec 13, 2016 #1

    kelvin490

    User Avatar
    Gold Member

    I want to make a 2D plot of points with different x, y coordinates and have colors depending on a separate variable. I have make column vectors for x and y coordinates and another column containing 1 or -1. I would like to represent the points with 1 as red and -1 as blue points. I have codes as follow:
    Code (Matlab M):

    x_dis=rho_rec(1:nDis,xCol,step);%x coordinates
    y_dis=rho_rec(1:nDis,yCol,step); %y coordinates
    bv=rho_rec(1:nDis,bvCol,step); % 1 or -1

    for i=1:1:nDis
       if bv(i)==1
            dis_color(i,1:3)=[0 0 1]; %blue
        elseif bv(i)==-1
            dis_color(i,1:3)=[1 0 0]; %red
        end
    end

    plot(x_dis,y_dis,'.','Color',dis_color(1:nDis,:))

     
    However it doesn't work. How should I modify the code? Thank you.
     
    Last edited by a moderator: Dec 13, 2016
  2. jcsd
  3. Dec 13, 2016 #2

    jedishrfu

    User Avatar

    Staff: Mentor

  4. Dec 13, 2016 #3

    kelvin490

    User Avatar
    Gold Member

    I have changed to use scatter instead of plot, as suggested by other
    So the command becomes:

    scatter(x_dis,y_dis,[],dis_color(1:nDis,:),'.')

    It works like a charm
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted



Similar Discussions: How to make 2D plot of points with different colors?
  1. How to make this plot? (Replies: 3)

Loading...