How to visualise data value with x-y coordinate in an image
3 ビュー (過去 30 日間)
古いコメントを表示
Hello, suppose I have x-y coordinate and z value as the grades of the points. How can I visualize my data in 2-D colormap ? (I want to show x-y cordinate and different colors for different values at every points inside the image). I am attachng sample data text file and regarding image.
Please help.

2 件のコメント
Walter Roberson
2019 年 9 月 15 日
I suspect you want griddedInterpolant()
Along with a colormap such as 'hot' or perhaps 'autumn'
回答 (1 件)
Image Analyst
2019 年 9 月 15 日
Try something like
data = dlmread(filename, ' ');
x = data(:, 1);
y = data(:, 2);
grayLevel = data(:, 3);
grayImage = zeros(ceil(max(y)), ceil(max(x)));
for k = 1 : length(x)
row = round(y(k));
col = round(x(k));
grayImage(row, col) = grayLevel(k);
end
grayImage = mat2gray(grayImage);
imshow(grayImage, 'ColorMap', jet(256));
colorbar;
4 件のコメント
Image Analyst
2019 年 9 月 15 日
Not only the blue, but for most of them. There are 181 pixels that are not zero. But most of your image locations do not have a gray level defined for them, so they are left as zero and appear as blue.
data = dlmread('md1.txt', ' ');
x = data(:, 1);
y = data(:, 2);
grayLevel = data(:, 3);
grayImage = zeros(ceil(max(y)), ceil(max(x)));
for k = 1 : length(x)
row = max([1, round(y(k))]);
col = max([1, round(x(k))]);
grayImage(row, col) = grayLevel(k);
fprintf('Assigning %d to row %d, column %d.\n', grayLevel(k), row, col);
end
minGL = min(grayImage(:))
maxGL = max(grayImage(:))
grayImage = mat2gray(grayImage);
imshow(grayImage, [], 'ColorMap', jet(256));
colorbar;
参考
カテゴリ
Help Center および File Exchange で Red についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!