我一直在使用gnuplot,现在我想要一个程序从命令行运行gnuplot并直接绘制图形。 类似的东西:
gnuplot>plot sin(x)
但是我总是要运行gnuplot然后编写plot命令。
答案 0 :(得分:2)
如手册页所述:
-e“命令列表”在加载下一个输入文件之前执行请求的命令。
所以在你的特殊情况下,在我看来你所追求的是:
gnuplot -e "plot sin(x)"
答案 1 :(得分:2)
您还可以将Gnuplot作为shell的协同进程运行,例如:与int main()
{
LPCSTR Dll = "C:\\Test.dll";
HANDLE hFile = CreateFileA(Dll, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
OPEN_EXISTING, 0, NULL); // Open the DLL
DWORD FileSize = GetFileSize(hFile, NULL);
PVOID FileBuffer = VirtualAlloc(NULL, FileSize, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);
// Read the file
ReadFile(hFile, FileBuffer, FileSize, NULL, NULL);
return 0;
}
:
bash
现在,您可以通过coproc gnuplot
中的文件描述符向Gnuplot进程发送命令,例如:
${COPROC[1]}
或者如果您将文件描述符值保存在echo 'plot sin(x)' >&${COPROC[1]}
:
p
有关其他shell和备选表示法,请参阅Stephane's answer。