Gnuplot 绘制 Visual Studio C/C++ 输出的波形图

Gnuplot 绘制 Visual Studio C/C++ 输出的波形图
Gnuplot 是一款强大的绘图工具,我在学习C语言时,想要编写一套不规则波形(正弦、三角波、梯形图等等)的C语言函数,为了验证函数的输出是否满足我预期的要求,就用到了Gnuplot来绘制波形。
以正弦波为例:
正弦波的代码如下:

//sin_wave
#include<stdio.h>
#include<math.h>
#define pi 3.1415926
int main()
{
	double t, s;
	for (int i = 0; i < 4000; i++)
	{
		t = i / 1000.0;
		s = sin(2 * pi * 2 * t);// 设定频率为 x Hz
		printf("%e\t%e\n", t, s);
	}
}

在这里插入图片描述 C语言的编译环境为 Visual Studio 2017
程序写好之后,在“调试”对话框的下拉界面选择“开始执行(不调试)(H)”选项,运行程序。在这里插入图片描述
运行结果如下:
在这里插入图片描述
此时打开该项目的存储位置,在 Debug 文件夹下进行绘图操作指令:
在这里插入图片描述
首先打开运行窗口(快捷键 win+R),在运行窗口输入cmd:
在这里插入图片描述
点击确定,打开如下界面:
在这里插入图片描述
在光标处输入程序项目存储位置所在的磁盘,我的放在D盘,输入D:,点击Enter,如下:
在这里插入图片描述
在光标处输入 cd 然后点击空格键 ,接着输入程序编译之后“Project1.exe”文件所在的路径,可以直接复制粘贴过去,然后电机Enter.
注:Project1.exe是我懒省事的默认命名。
在这里插入图片描述
在这里插入图片描述
在光标处输入 gnuplot,点击Enter,打开gnuplot 画图命令:
在这里插入图片描述
在光标处输入

plot [0:5] [-1:1] "<Project1.exe" u 1:2 w l

按下Enter,就可得到程序输出的波形:
在这里插入图片描述
在这里插入图片描述
我在操作中遇到的问题:
如果在程序中出现下面的情况:在printf的\t后面多加了一个逗号

//正弦信号
#include<stdio.h>
#include<math.h>
#define pi 3.1415926
int main()
{
	double t, s;
	for (int i = 0; i < 4000; i++)
	{
		t = i / 1000.0;
		s = sin(2 * pi * 2 * t);// 设定频率为 x Hz
		printf("%e\t,%e\n", t, s);//在printf的\t后面多加了一个逗号 
	}
}

调试之后:
在这里插入图片描述
然后再执行画图命令的话,会出现下面的错误:
在这里插入图片描述
提示文件没有有效的数据点,然后跳过了,画不出图来
可以确定时“逗号”导致的,把逗号删掉,再编译——绘制就可以了。

初次分享,大家多多交流,祝你变得更强!!!

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Visual Studio中,你可以使用Gnuplot来实时绘制波形图Gnuplot是一款强大的绘图工具,可以通过在代码中输出波形数据,并使用Gnuplot来实时绘制波形图。你可以在学习C语言时使用这种方法来验证函数的输出是否满足预期要求。例如,你可以使用以下代码来绘制正弦波形: ```c #include <stdio.h> #include <math.h> #define pi 3.1415926 int main() { double t, s; for (int i = 0; i < 4000; i++) { t = i / 1000.0; s = sin(2 * pi * 2 * t); // 设定频率为 x Hz printf("%e\t%e\n", t, s); } } ``` 这段代码会输出一系列的时间和对应的正弦值,你可以将这些数据保存到文件中,然后使用Gnuplot来实时绘制波形图。通过在Visual Studio中运行这段代码,你可以在输出窗口中看到波形数据,并将其复制到Gnuplot中进行绘制。\[1\] Visual Studio还提供了波形曲线功能,它可以在代码中标记出错误或潜在问题。当你将鼠标悬停在波形曲线上时,会显示有关错误的其他信息,并提供修复此错误的“快速操作”建议。这样可以帮助你在编码过程中及时发现和解决问题。\[2\] 需要注意的是,Visual Studio适用于Windows和Mac平台,但本文重点介绍的是Visual Studio 2019的Windows版本。\[3\] #### 引用[.reference_title] - *1* [Gnuplot 绘制 Visual Studio C/C++ 输出波形图](https://blog.csdn.net/weixin_49091024/article/details/117442236)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [【C++Visual Studio教程(一)-概述](https://blog.csdn.net/dengjin20104042056/article/details/114118520)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值