启动并通过管道传递到F#交互式程序中的gnuplot之类的

时间:2019-02-05 13:33:39

标签: f# f#-interactive c#-to-f#

基本上,我想从.fsx脚本中启动gnuplot进程,并通过管道将文本命令传递给它,这样我就可以执行脚本重新绘制了。到目前为止,我只是使用这样的命令行来传递标准输出。

fsharpi "something.fsx" | gnuplot

我这样做而不是使用绘图库,因为我将gnuplot用于其他绘图,并且我希望样式相同。还有一个轻量级的解决方案也很好。我在Arch Linux上使用单声道。

如何从.fsx脚本中启动gnuplot进程并创建一个流,该流允许我将命令传递给该流?

我希望这是足够的细节。谢谢:)

1 个答案:

答案 0 :(得分:3)

实际上,gnuplot有一个半废弃的F#包装器,称为FnuPlot

该库旨在为构建GnuPlot图表构建一个友好的F#友好DSL,但该库非常不完整,没有涵盖可与GnuPlot一起使用的许多图表和功能。

但是,它还实现了一些用于调用GnuPlot的核心功能,包括启动GnuPlot,向其发送数据以及格式化各种参数。因此,即使您不能直接使用该库,也可以浏览该代码并从那里使用一些代码。例如here is how it starts the gnuplot process,这里是how to send data to gnuplot。当然,如果您想贡献并帮助进一步开发和维护该库,那就更好了:-)。