Heat map from csv data

23 views (last 30 days)
Nelson Cardemil
Nelson Cardemil on 4 Aug 2022
Commented: Star Strider on 5 Aug 2022
I need to import data from a csv file, which contains hourly temperature data in a year (8760 values ​​in one column), in order to create a 24x365 matrix to make a heatmap like the image

Accepted Answer

Star Strider
Star Strider on 5 Aug 2022
It looks like a surf plot viewed from the top.
Try this —
T1 = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1088620/results.csv', 'VariableNamingRule','preserve')
T1 = 8760×2 table
Hour T delivered (C) ____ _______________ 0 56.925 1 56.655 2 56.386 3 56.119 4 55.854 5 55.59 6 55.328 7 55.067 8 16.996 9 16.964 10 20.42 11 27.327 12 48.808 13 61.776 14 66.252 15 65.361
Hours = reshape(T1.Hour, 24, []);
T_del_C = reshape(T1.('T delivered (C)'), 24, []);
xv = datetime(2021,1,0, 'Format','MMM') + days(1:size(T_del_C,2));
yv = Hours(:,1);
figure
surf(xv,yv,T_del_C, 'EdgeColor','none')
colormap(turbo)
view(0,90)
axis('tight')
It comes reasonably close to the plot image in the original post.
Make approopriate changes to get the result you want.
.
  4 Comments
Nelson Cardemil
Nelson Cardemil on 5 Aug 2022
thank you very much, you helped me a lot.
Star Strider
Star Strider on 5 Aug 2022
My pleasure!
If my Answer helped you solve your problem, please Accept it!
.

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!