matlab绘图,两曲线之间填充颜色。

matlab绘制

close all;
clear

Ln = 5;
Qe = 0.1;

label_arr = ["-h"  "-+" "-*" "-x" "-d" "-s" "->" "-p"]
label_index = 1;
fn = linspace(0, 2, 1000);
Qe = 0;
 M_0=1./sqrt(((1-1./(fn).^2).*Qe.*fn).^2+((1-1./(fn).^2).*(1./Ln)+1).^2);
plot(fn, M_0)
hold on
% 
% Qe = 0.1;
%  M2=1./sqrt(((1-1./(fn).^2).*Qe.*fn).^2+((1-1./(fn).^2).*(1./Ln)+1).^2);
% plot(fn, M2)
% hold on
% 
% Qe = 0.2;
%  M3=1./sqrt(((1-1./(fn).^2).*Qe.*fn).^2+((1-1./(fn).^2).*(1./Ln)+1).^2);
% plot(fn, M3)
% hold on
% 
% Qe = 0.3;
%  M4=1./sqrt(((1-1./(fn).^2).*Qe.*fn).^2+((1-1./(fn).^2).*(1./Ln)+1).^2);
% plot(fn, M4)
% hold on
% 
% Qe = 0.4;
%  M5=1./sqrt(((1-1./(fn).^2).*Qe.*fn).^2+((1-1./(fn).^2).*(1./Ln)+1).^2);
% plot(fn, M5)
% 
% figure
% plot(fn, M1, fn, M2, 'LineWidth', 1.5)
% % patch([fn fliplr(fn)],[M1 fliplr(M2)], [0.93333, 0.83529, 0.82353],'edgealpha', '0', 'facealpha', '.5')
% 
% 
% M2=M2(2:end)
% M1=M1(2:end)
% fn = fn(2:end)
% patch([fn fliplr(fn)],[M1 fliplr(M2)], [0.93333, 0.83529, 0.82353],'edgealpha', '0', 'facealpha', '.5')
% ylim([0 3])

ylim([0 3])

% M_cell{8, 1}=0
for Qe = 0.1:0.1:0.5
    M{label_index, 1}=@(fn) 1/sqrt(((1-1/(fn)^2)*Qe*fn)^2+((1-1/(fn)^2)*(1/Ln)+1)^2);
    fplot( M{label_index, 1},[0 2],label_arr(label_index) );
    label_index = label_index +1;
    hold on
end

for Qe = 1:5:10
     M{label_index, 1}=@(fn) 1/sqrt(((1-1/(fn)^2)*Qe*fn)^2+((1-1/(fn)^2)*(1/Ln)+1)^2);
    fplot( M{label_index, 1},[0 2], label_arr(label_index));
    label_index = label_index +1;
    hold on
end


fn1 = linspace(0.41, 1, 1000);
Mres1 = 1./sqrt((1 - (1./(fn1.^2)))./5 + 1)
Mres=@(x) 1/sqrt((1-1/(x)^2)/Ln+1);
% plot(fn,Mres)
% hold on
plot(fn1,Mres1,'--k')



% fn1 = linspace(0.41, 1, 1000);
for i = 1:1:length(fn1)
    M1(i) = M{1,1}(fn1(i));
    M2(i) = Mres(fn1(i));
end

M2=M2(2:end)
M1=M1(2:end)
fn1 = fn1(2:end)
patch([fn1 fliplr(fn1)],[M1 fliplr(M2)], [0.93333, 0.83529, 0.82353],'edgealpha', '0', 'facealpha', '.5')
hold on
ylim([0 3])

% area = fill([x fliplr(x)],[M1 fliplr(M2)],[0.93333, 0.83529, 0.82353],'edgealpha', '0', 'facealpha', '.5');
% patch([x fliplr(x)],[M1 fliplr(M2)], [0.93333, 0.83529, 0.82353],'edgealpha', '0', 'facealpha', '.5')
line_x = ones(100)
line_y = linspace(0,1,100)
plot(line_x, line_y,'--k')

fn2 = linspace(1,2,100)
for i = 1:1:length(fn2)
    M3(i) = M{1,1}(fn2(i));
    M4(i) = 0;
end

% M=M2(2:end)
% M1=M1(2:end)
% fn2 = fn2(2:end)
patch([fn2 fliplr(fn2)],[M3 fliplr(M4)], [0.93333, 0.83529, 0.82353],'edgealpha', '0', 'facealpha', '.5')

绘图如下:
在这里插入图片描述

  • 8
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值