How can I incorporate the angle of orientation in my colourmap?

조회 수: 1(최근 30일)
Hi,
I am currently producing colourmaps for my degree of orientation data. This data varies between 0-180 degrees. Producing colormaps works nicely, however, I am thinking there might be a better way to demonstrate angle.
Is it possible for each data point to be a line, which represents the angle at said data point? i.e. at 180 degrees, it is a vertical line.
This is my current code for my colormap:
%Import the data in from excel
num = xlsread('ExampleData')
% Reshape the intensity vector into a matrix
[xUnq,~,xIdx] = unique(num(:,1));
[yUnq,~,yIdx] = unique(num(:,2));
zMat = nan(numel(yUnq),numel(xUnq));
zIdx = sub2ind(size(zMat),yIdx,xIdx);
zMat(zIdx) = num(:,3);
% Plot contour
contourf(xUnq,yUnq,zMat)
pcolor(xUnq,yUnq,zMat)
shading interp
colorbar
% Label colour bar
c = colorbar;
c.Label.String = ('Degree of Orientation (\theta)');
ylabel('\mu m')
xlabel( '\mu m')
title('title')
I have attached some example data I have been playing with:

채택된 답변

Turlough Hughes
Turlough Hughes 2022년 2월 1일
To represent the orientations with arrows, you could a quiver plot as follows:
%Import the data
data = readmatrix('https://uk.mathworks.com/matlabcentral/answers/uploaded_files/880780/ExampleData.xlsx');
figure()
theta = data(:,3);
quiver(data(:,1),data(:,2),cosd(theta),sind(theta),'LineWidth',2, ...
'AutoScaleFactor', 0.6)
ylabel([char(181) 'm']) % char(181) is just a preference
xlabel([char(181) 'm'])
title('Orientation Map')
axis padded
set(gca,'FontSize',14)
  댓글 수: 2
Turlough Hughes
Turlough Hughes 2022년 2월 1일
You can scale the third and fourth inputs to quiver as follows:
data = readmatrix('https://uk.mathworks.com/matlabcentral/answers/uploaded_files/880780/ExampleData.xlsx');
figure()
theta = data(:,3);
s = 0.4;
quiver(data(:,1),data(:,2),s*cosd(theta),s*sind(theta),'LineWidth',2, ...
'AutoScale', 'off', 'MaxHeadSize', 0.1)
axis equal
ylabel([char(181) 'm']) % char(181) is just a preference
xlabel([char(181) 'm'])
title('Orientation Map')
axis padded
set(gca,'FontSize',14)

댓글을 달려면 로그인하십시오.

추가 답변(0개)

범주

Find more on Vector Fields in Help Center and File Exchange

태그

제품


릴리스

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by