基于MATLAB绘制两个不同坡度的山体曲线图附完整代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

个人主页:Matlab科研工作室

个人信条:格物致知。

更多Matlab仿真内容点击

智能优化算法  神经网络预测 雷达通信  无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机  电力系统

⛄ 内容介绍

​基于MATLAB绘制两个不同坡度的山体曲线图附完整代码

⛄ 完整代码

%==========================================================================

% 绘制两个不同坡度的山体曲线图,无量纲图

clear;close all;

H=0.1;L1=2.5*H;L2=7.5*H; % 定义参数,L1=2.5H,L2=7.5H

x1=[-L1:1e-3:L1]';y1=H*cos(pi*x1/2/L1).^2; % 设置x,y范围

x2=[-L2:1e-3:L2]';y2=H*cos(pi*x2/2/L2).^2;

x3=x1;y3=H*cos(pi*x3/2/L2).^2;

plot(x1,y1,'-k',x2,y2,'-k','LineWidth',2,'MarkerSize',20);hold on;

set(gca, 'PlotBoxAspectRatio',[2*L2/0.2 1 1],'XLim',[-L2 L2+0.1],'YLim',[0 0.2],'ZLim',[0 1]);

box off;axis off;set(gcf,'color','w');

xticknum=[-L2:0.125:L2]';xticklen=0.005;yticklen=0.02;

plot([-L2 L2],[0 0],'-k','LineWidth',2);

plot([0 0],[0 0.2],'-k','LineWidth',2);

for i=1:length(xticknum)

    ax=[xticknum(i),xticknum(i)]';ay=[0 yticklen]';

    plot(ax,ay,'-k','LineWidth',1);

end;

xticknum=xticknum(1:2:end);

temp={'-7.5';'  -5';'-2.5';'   0';' 2.5';'   5';' 7.5'};

text(xticknum-0.06,zeros(length(xticknum),1)-0.03,temp);

text(0.02,0.13,'1');

annotation('textarrow',[0.84 0.92],[0.45 0.45]);

annotation('textarrow',[0.49286 0.49286],[0.55 0.61]);

text(0.82,-0.03,'\itx/\itH','fontname','Times New Roman');

text(-0.1,0.2,'\itz/\itH','fontname','Times New Roman');

annotation('textarrow',[0.58 0.55],[0.55 0.48]);

text(0.12,0.17,'Max slope of 32°','fontname','Times New Roman');

annotation('textarrow',[0.7 0.65],[0.52 0.49]);

text(0.44,0.115,'Max slope of 12°','fontname','Times New Roman');

⛄ 运行结果

基于MATLAB绘制两个不同坡度的山体曲线图附完整代码_第1张图片

⛄ 参考文献

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

 

你可能感兴趣的:(matlab,开发语言)