之前的学习中,对自由信道通信模型进行了分析,并计算了在载波频率一定时,不同的传播距离下的传输损耗值。现在我们将完成载波频率固定时,传输损耗随传输距离变化图像。这里将会使用MATLAB画图,以及用gnuplot对C语言输出数据进行画图。
1. MATLAB绘图
x=0:1:10;
y=32.45+20*log10(5*1024)+20*log10(x);
plot(x,y);
xlabel('传播距离d/km');
ylabel('传输损耗L');
title('载波频率为5GHz时的传输损耗随传输距离变化图像');
2. 使用gnuplot的C语言作图
具体的绘图方法可以参考我之前的一篇文章:gnuplot绘图_使用C语言输出的数据绘图
C语言程序代码:
#include<stdio.h>
#include<math.h>
int main()
{
double y;
int i;
for(i=1;i<=10;i++)
{
y = 20*(log10(5*1024))+20*(log10(i))+32.45;
printf("%.4f %.4f\n",(double)i,y);
}
return 0;
}
进入.c文件所在路径:
c:\Users\Administrator>E:
E:\>cd E:\tcc_project\ziyou
产生.exe文件并得到结果:
E:\tcc_project\ziyou>tcc loss1.c –o loss1.exe
E:\tcc_project\ziyou>loss1.exe
结果为:
产生.dat文件:
E:\tcc_project\ziyou>loss1.exe >loss1.dat
使用gnuplot画图:
3. 小结
本次作图使用了MATLAB与C语言两种作图方式,得到的结果与计算吻合,达到了预期的要求。现在利用gnuplot作图还不怎么熟练,需要多练习。