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

3 views (last 30 days)
Higher dense the path, higher brighness shown on the figure.

Accepted Answer

Image Analyst
Image Analyst on 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;

More Answers (1)

Walter Roberson
Walter Roberson on 5 Nov 2016
Edited: Walter Roberson on 11 Dec 2016

Categories

Find more on Data Distribution Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!