scatter plotting color coded
10 ビュー (過去 30 日間)
I have question regarding creating a scatter plot with three variables (lat, lon, ch4). They are all vectors of the same length. I want to plot lon and lat on the x and y axis and show ch4 color coded.
attached is an image of what im trying to create
回答 (2 件)
Image Analyst 2014 年 7 月 18 日
Use scatter() - with that function you can control the color and size of every marker.
Alfonso Nieto-Castanon 2014 年 7 月 18 日
編集済み: Alfonso Nieto-Castanon 2014 年 7 月 18 日
perhaps something along these lines:
% your data (assuming column vectors)
lat = convn(randn(1e3,1),hanning(100));
lon = convn(randn(1e3,1),hanning(100));
ch = convn(randn(1e3,1),hanning(100));
% plot one line for each pair of consecutive points
h = plot([lat(1:end-1) lat(2:end)]',[lon(1:end-1) lon(2:end)]','-');
% decide the color of each line
cmap = jet(128);
color = convn(ch,[1;1],'valid');
color = (color-min(color))/(max(color)-min(color));
color = cmap(round(1+color*127),:);
% assign colors
for n = 1:numel(h),
You could get more sophisticated and use patches instead of lines (this works better when your points are far apart because it allows you to smoothly interpolate the color between two points), or simpler and plot individual dots instead of lines (this works just fine if your points are very close and do not have to worry about connecting the points) depending on your particular dataset.