plotting multiple line graphs in one plot
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hesam Jokar
am 1 Jun. 2021
Kommentiert: Hesam Jokar
am 2 Jun. 2021
Hey. I was writing a code to show efficiency of thermoelectric generators in one plot. tc is constant in each statement, first z changes and for each z, I want to plot a line based on the th variation. each line, for instance, z=0.5 and th from 300 to 1250 has a specific color for readability.
tc(1:20)=298;th=300:50:1250;figure;hold on;
for t=1:20
z(t)=t./4;
for i=1:20
etha(i)=((th(i)-tc(i))./th(i)).*((sqrt(1+((z(t).*th(i)+tc(i))./2))-1)./...
((sqrt(1+((z(t).*th(i)+tc(i))./2))-(tc(i)/th(i)))));
ln=plot(th(i),etha(i));
ln.Color=(1./t).*[1 1 1];
ln.LineWidth=2;
ln.Marker='*';
end
end
hold off
the output is like this
but I desire for an output like this
anyone has any suggestion? I know I'm amateur....
0 Kommentare
Akzeptierte Antwort
David Fletcher
am 1 Jun. 2021
Might need some more tinkering - this is limited to 7 lines rather than the 20 you have in your code
tc(1:20)=298;
th=300:50:1250;
for t=1:7
z(t)=t./4;
for i=1:20
etha(t,i)=((th(i)-tc(i))./th(i)).*((sqrt(1+((z(t).*th(i)+tc(i))./2))-1)./...
((sqrt(1+((z(t).*th(i)+tc(i))./2))-(tc(i)/th(i)))));
end
end
ln=plot(th,etha,'*-','LineWidth',2);
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Graph and Network Algorithms finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!