1-D Temperature Gradient
8 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hey everyone,
I am trying to figure out how to draw a temperature gradient of a 1-D system. I have tried to understand meshgrid but I couldn't find a way out. Plus, I have tried to use contourf but still didn't work for me. I might be using these functions wrong.
I have 19 different points and all of those points have the same x-coordinate value, only their y-coordinate values change. For example, Point_1(0, 1), Point_2(0,2), Point_3(0,3)... Basically, they form a vertical line on a coordinate system. Also, I have corresponding temperatures for every point. I want to plot a temperature gradient looking like color bars standing next to graphs but I couldn't find a proper way to do that. Could any of you please help me out to understand how to do that?
9 commentaires
J. Alex Lee
le 11 Mai 2021
what exactly is it about the result "which is not wrong" that isn't what you want?
Réponses (1)
J. Alex Lee
le 7 Mai 2021
Modifié(e) : J. Alex Lee
le 7 Mai 2021
your time and space point vectors are
t = 0:0.005:50; % but this gives you 10,001 points, not 10,000...so you decide what you have
x = linspace(0,9,19); % just guessing based on your image
making up some temperature matrix with the dimensions you have
tmp = rand(1,numel(x),numel(t));
it is senseless to have your first dimension in your temperature data matrix, so need to squeeze out the first dimension
tmp_a = squeeze(tmp);
turns out you don't even need meshgrid because contourf will imply it for you (if you get the order of dimensions right)
contourf(t,x,tmp_a)
or if you want t and x transposed
contourf(x,t,transpose(tmp_a))
0 commentaires
Voir également
Catégories
En savoir plus sur Signal Radiation and Collection 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!