2015-09-04 2 views
2

У меня есть три вектора данных; Первый столбец имеет ось x, второго столбца ось y и третий столбец является измеренным значением точки данных v:график векторов данных

x = [1 2 3 4 5]; 
y = [2 3 4 5 6]; 
v = [0 -1 +2 3 -5]; 

Есть ли способ, чтобы построить это в MATLAB и цвета точек данных в зависимости от их значения? Я пробовал с scatter, но это не дает цветовое кодирование.

+0

вы имеете в виду, например, вы хотите более темного цвета для более низких значений и более светлого цвета для более высоких значений? – GameOfThrows

ответ

4

Просто используйте разброс, он может принимать значения для каждой точки. Просто установите размер каждой точки, установите ее для заполнения, включите цветную панель и все. Только, пожалуйста, не используйте струйную палитру ...

x = [1 2 3 4 5]; 
y = [2 3 4 5 6]; 
v = [0 -1 +2 3 -5]; 

pt_sz = 30; 

colormap parula 
scatter(x, y, pt_sz, v, 'filled'); 
colorbar; 
grid on 

enter image description here

-1

Вы можете попробовать pcolor. Он работает как

z=rand(4,4); 
pcolor(R,C,z); 

где г матрица хранения данных (ваш v) R является строка (ваш х) и С представляет собой колонку (ваш у).

изменить: почему downvote? скажите, что не так, чтобы я мог исправить это.

+2

Я не спускал вниз, но 'pcolor' создает сетку цветов, где каждое место находится в матрице, это значение матрицы' z', преобразованное в цвет. Это не то, о чем просил OP - проверьте принятый ответ на то, что на самом деле ожидается в качестве вывода. – rayryeng

Смежные вопросы