How to plot the brightness lines in Matlab, as this picture?

4 vues (au cours des 30 derniers jours)
Ray Lee
Ray Lee le 5 Nov 2016
Higher dense the path, higher brighness shown on the figure.

Réponse acceptée

Image Analyst
Image Analyst le 5 Nov 2016
If you have an image, that starts out as all zeros, and a set of coordinates that define where the lines go, you can simply add 1 to the image everytime you encounter one of those coordinates. Like if you have a set of (x,y) coordinates of a line (perhaps use Bresenham's line algorithm ) then do this
heatmapImage = zeros(rows, columns)
for k = 1 : length(x)
row = round(y(k));
col = round(x(k));
% Don't let go outside image.
if row > rows
row = rows;
end
if col > columns
col = columns;
end
if row < 1
row = 1;
end
if col < 1
col = 1;
end
% Increment the value.
heatmapImage(row, col) = heatmapImage(row, col) + 1;
end
Repeat that for every set of x,y data you have, then display the resulting image:
imshow(heatmapImage, []);
colormap(jet(256));
colorbar;

Plus de réponses (1)

Walter Roberson
Walter Roberson le 5 Nov 2016
Modifié(e) : Walter Roberson le 11 Déc 2016

Catégories

En savoir plus sur Data Distribution Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by