How to colour a portion of a curve by red and remaining by black
3 次查看(过去 30 天)
显示 更早的评论
I want to colour the lower portion of curve by red and broked curve and upper part of the curve by black as shown in the fig attached.
Code
clear all
format long
set(0,'DefaultAxesFontSize',20);
figure
load('EP_EP(1).mat','x'); %load only x
idx = x(3,:)>=0.16 & x(3,:)<=0.305003;
plot(x(3,:),x(1,:),'k--', 'LineWidth',2);
xlabel('$a$','FontSize',20,'interpreter','latex','FontWeight','normal','Color','k');
ylabel('$b$','FontSize',20,'interpreter','latex','FontWeight','normal','Color','k');
axis([0 .4 .3 1]);
0 个评论
采纳的回答
Voss
2024-6-6
编辑:Voss
2024-6-6
set(0,'DefaultAxesFontSize',20);
figure
load('EP_EP(1).mat','x'); %load only x
[~,idx] = max(x(3,:));
plot(x(3,idx:end),x(1,idx:end),'k', 'LineWidth',2); % solid black line
hold on
plot(x(3,1:idx),x(1,1:idx),'r--', 'LineWidth',2); % broken red line
xlabel('$a$','FontSize',20,'interpreter','latex','FontWeight','normal','Color','k');
ylabel('$b$','FontSize',20,'interpreter','latex','FontWeight','normal','Color','k');
axis([0 .4 .3 1]);
更多回答(1 个)
John D'Errico
2024-6-6
Plot it as TWO curves, both on the same figure, one in red, one in black.
Use the hold command between the two calls to plot, so the two curves will be on the same figure.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!