如何在 Gnuplot 中分别绘制 2 个文件数据?我有一个文件为“sin.txt”,另一个为“cos.txt”,我想将它们分别绘制在一张图上

Posted

技术标签:

【中文标题】如何在 Gnuplot 中分别绘制 2 个文件数据?我有一个文件为“sin.txt”,另一个为“cos.txt”,我想将它们分别绘制在一张图上【英文标题】:How to plot 2 files data separately in Gnuplot ?I have one file as "sin.txt" and other as "cos.txt" and i want to plot them separately on one graph 【发布时间】:2020-06-27 19:30:14 【问题描述】:
int main()

        FILE *gnuplotPipe = popen("gnuplot -persist", "w");
if (gnuplotPipe) 
        fprintf(gnuplotPipe, "reset \n");
        fprintf(gnuplotPipe, "plot  'sin.txt' with lines  linestyle 1 lw 5 lc 2  \n");
        fprintf(gnuplotPipe, "replot  'cos.txt' with lines  linestyle 2 lw 5 lc 2  \n");
        fflush(gnuplotPipe);
        fprintf(gnuplotPipe, "exit \n");
        pclose(gnuplotPipe);
              
 return 0;

// 问题是它混合了两个文件数据然后绘制。我希望两个图是分开的

【问题讨论】:

我很难理解您所说的 “单独在一个图表上” 的意思,因为 “单独” 意味着 ”在不同的图表上”。也许您可以单击edit 并添加一个示例或草图来说明结果应该是什么样的?谢谢。 这真的是一个 C++ 问题吗?手动使用gnuplot你知道怎么做吗? 分开我的意思是两个数据不应该混合。我的意思是文件“cos.txt”有自己的数据。它应该制作自己的图表。“sin.txt”有自己的数据应该绘制自己的图表。 @MarkSetchell 我试过了。但它只显示“cos.txt”和“sin.txt”仅显示 1 秒。两个图没有一起显示 尝试通过阅读这篇文章来了解如何在 shell 中执行此操作...alvinalexander.com/technology/gnuplot-charts-graphs-examples 然后适应 C++。 【参考方案1】:

“-persist”选项应该写成“--persist”或“-p”。

【讨论】:

以上是关于如何在 Gnuplot 中分别绘制 2 个文件数据?我有一个文件为“sin.txt”,另一个为“cos.txt”,我想将它们分别绘制在一张图上的主要内容,如果未能解决你的问题,请参考以下文章

gnuplot:如何在每个像素上无边距绘制一个2D数组元素

如何在脚本中读取不规则编号的数据文件以制作 gnuplot 图像?

如何在 gnuplot 上绘制树/图形/网络数据?

gnuplot动画多个数据文件在do循环后保留

如何在 C++ 中使用 GNUplot 绘制图形

总结--Gnuplot表达式