代码拉取完成,页面将自动刷新
同步操作将从 iam002/MatlabDrawNiceGraph 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
clear
%% 创建 figure, 并设置背景颜色
back_color = [0.15, 0.15, 0.15];
h_f = figure('Color', back_color);
%% 创建 axes
h_a = axes('Parent', h_f);
set(h_a, 'NextPlot', 'add'); % 相当于 hold on
%% 创建 plot
% 绘制正弦积分函数
fun = @(x)(sinc(x/pi));
x = linspace(-1, 4, 400);
y = zeros(1, length(x));
wc = pi; % 截止频率
td = 1; % 时延
for i = 1:length(x)
tmp = (x(i) - td)*wc;
y(i) = integral(fun, 0, tmp)/pi + 0.5;
end
plot(x, y, 'LineStyle', '-', 'Color', [0, 1, 1], 'LineWidth', 1.5);
wc = 2*pi; % 增加截止频率
td = 1; % 时延
for i = 1:length(x)
tmp = (x(i) - td)*wc;
y(i) = integral(fun, 0, tmp)/pi + 0.5;
end
plot(x, y, 'LineStyle', '-', 'Color', [0.39, 0.83, 0.07], 'LineWidth', 1.5);
% 其他标线
lcolor = [0.39, 0.83, 0.07];
plot([td, td], [0, 0.5], 'LineStyle', '--', 'Color', lcolor, 'LineWidth', 1.5)
plot([0, td], [0.5, 0.5], 'LineStyle', '--', 'Color', lcolor, 'LineWidth', 1.5)
plot([0, td+pi/wc], [1,1]*max(y), 'LineStyle', '--', 'Color', lcolor, 'LineWidth', 1)
plot([1,1]*(td+pi/wc), [0, max(y)], 'LineStyle', '--', 'Color', lcolor, 'LineWidth', 1)
plot([0, td-pi/wc], [1,1]*min(y), 'LineStyle', '--', 'Color', lcolor, 'LineWidth', 1)
plot([1,1]*(td-pi/wc), [0, min(y)], 'LineStyle', '--', 'Color', lcolor, 'LineWidth', 1)
plot([0,4], [1,1], 'LineStyle', '-.', 'Color', [1, 0, 1], 'LineWidth', 1);
% 设置坐标轴的范围
xlim([-1, 4]);
ylim([-0.3, 1.5]);
%% 绘制 arrow
mdng.DrawAxisWithArrow(h_a, 'XLabel', '$t$', 'YLabel', '$s(t)$', 'OLabel', '$O$');
%% 添加一些标注
% 在axes上的(0,1)左侧添加标注
fp = mdng.CoorFromAxis2Fig(h_a, [0,1]); % 将axes的坐标转化为figure上的坐标,下同
mdng.FigPointLabel(fp, '1.0', 'west', 'Color', [0.8, 0.52, 0.98], 'FontSize', 14);
% 在axes上的(0,0.5)左侧添加标注
fp = mdng.CoorFromAxis2Fig(h_a, [0,0.5]);
mdng.FigPointLabel(fp, '0.5', 'west', 'Color', [0.8, 0.52, 0.98], 'FontSize', 14);
% 在axes上的(td,0)下方添加标注
fp = mdng.CoorFromAxis2Fig(h_a, [td,0]);
mdng.FigPointLabel(fp, '$t_d$', 'south', 'Color', [0.8, 0.52, 0.98], 'FontSize', 14);
% 在axes上的(td+pi/wc,0)下方添加标注
fp = mdng.CoorFromAxis2Fig(h_a, [td+pi/wc,0]);
mdng.FigPointLabel(fp, '$t_d+\frac{\pi}{w_c}$', 'south', ...
'Color', [0.8, 0.52, 0.98], 'FontSize', 12);
% 在axes上的(td-pi/wc,0)下方添加标注
fp = mdng.CoorFromAxis2Fig(h_a, [td-pi/wc, min(y)]);
mdng.FigPointLabel(fp, '$t_d-\frac{\pi}{w_c}$', 'south', ...
'Color', [0.8, 0.52, 0.98], 'FontSize', 12);
%% 保存图像
if false
img_name = SaveFig2Img(h_f, 'figures\demo03.png');
fprintf('图像保存为: %s\n', img_name);
end
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。