C调用gnuplot绘图的方法

每次调试都先从C中抓数据,然后再拷贝到py或者matlab中绘图,太麻烦,为了提高效率,可以考虑C调用gnuplot的方案(当然C调用py的matplotlib应该也是可以的)

废话不多说,直接上代码:

c 复制代码
#include <stdio.h>

int main() {

    FILE *gp;
    // gp = popen("gnuplot", "w"); // 本程序退出后, gnuplot也退出
    gp = popen("gnuplot -persist", "w"); // 使用-persist参数后, 即使程序退出, gnuplot也不会退出, 但无法再进行交互式操作
    if (gp == NULL)
    {
        return -1;
    }

    fprintf(gp, "set datafile separator comma\n"); // 若一行的数据分割符为逗号, 则使用此命令, 分割符为空格时, 则不需要此命令
    fprintf(gp, "set xlabel 'X'\n");
    fprintf(gp, "set ylabel 'Y'\n");
    fprintf(gp, "set zlabel 'Z'\n");
    fprintf(gp, "set title 'Test'\n");
    fprintf(gp, "splot 'data.txt'\n");
    fflush(gp);


    getchar();
    fprintf(gp, "exit\n");
    pclose(gp);
    return 0;
}
相关推荐
爱装代码的小瓶子5 小时前
数据结构之队列(C语言)
c语言·开发语言·数据结构
快乐飒男6 小时前
哈希表(c语言)
c语言·哈希算法·散列表
aramae8 小时前
大话数据结构之<队列>
c语言·开发语言·数据结构·算法
程序员编程指南9 小时前
Qt 数据库连接池实现与管理
c语言·数据库·c++·qt·oracle
李永奉10 小时前
STM32-定时器的基本定时/计数功能实现配置教程(寄存器版)
c语言·开发语言·stm32·单片机·嵌入式硬件
麦子邪12 小时前
C语言中奇技淫巧04-仅对指定函数启用编译优化
linux·c语言·开发语言
华强笔记12 小时前
C程序内存布局详解
服务器·c语言
程序员编程指南12 小时前
Qt OpenGL 集成:开发 3D 图形应用
c语言·数据库·c++·qt·3d
程序员编程指南14 小时前
Qt 网络编程进阶:RESTful API 调用
c语言·网络·c++·qt·restful
程序员编程指南15 小时前
Qt XML 与 JSON 数据处理方法
xml·c语言·c++·qt·json