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;
}
相关推荐
电星托马斯10 小时前
C++中顺序容器vector、list和deque的使用方法
linux·c语言·c++·windows·笔记·学习·程序人生
march_birds15 小时前
FreeRTOS 与 RT-Thread 事件组对比分析
c语言·单片机·算法·系统架构
小麦嵌入式15 小时前
Linux驱动开发实战(十一):GPIO子系统深度解析与RGB LED驱动实践
linux·c语言·驱动开发·stm32·嵌入式硬件·物联网·ubuntu
jelasin16 小时前
LibCoroutine开发手记:细粒度C语言协程库
c语言
篝火悟者17 小时前
自学-C语言-基础-数组、函数、指针、结构体和共同体、文件
c语言·开发语言
神里流~霜灭18 小时前
蓝桥备赛指南(12)· 省赛(构造or枚举)
c语言·数据结构·c++·算法·枚举·蓝桥·构造
双叶83618 小时前
(C语言)单链表(1.0)(单链表教程)(数据结构,指针)
c语言·开发语言·数据结构·算法·游戏
艾妮艾妮19 小时前
C语言常见3种排序
java·c语言·开发语言·c++·算法·c#·排序算法
charlie11451419120 小时前
STM32F103C8T6单片机硬核原理篇:讨论GPIO的基本原理篇章1——只讨论我们的GPIO简单输入和输出
c语言·stm32·单片机·嵌入式硬件·gpio·数据手册
矿渣渣20 小时前
int main(int argc, char **argv)C语言主函数参数解析
c语言·开发语言