我试图从c#中打开gnuplot并获取它来保存图表的png。
有2个问题1)出现gnuplot的黑色命令行框和实际情节。我希望这两个都不会出现。
2)将终端设置为png并绘制sin(x)之后,它实际上并未保存文件。这些命令在gnuplot中工作。
任何提示都将不胜感激
由于
private void button1_Click(object sender, EventArgs e)
{
string Pgm = @"C:\Program Files\gnuplot\bin\gnuplot.exe";
Process extPro = new Process();
extPro.StartInfo.FileName = Pgm;
extPro.StartInfo.UseShellExecute = false;
extPro.StartInfo.RedirectStandardInput = true;
extPro.Start();
StreamWriter gnupStWr = extPro.StandardInput;
gnupStWr.WriteLine("Set terminal png");
gnupStWr.WriteLine(@"set output 'c:\Users\FrazMan\Desktop\sinxplot2.png'");
gnupStWr.WriteLine("plot sin(x)");
gnupStWr.WriteLine("set terminal wxt enhanced");
gnupStWr.WriteLine("set output");
gnupStWr.Flush();
}
答案 0 :(得分:1)
在我看来,你的GNUPLOT脚本可能有问题
尝试更简单的事情
我认为以下脚本应该有效
gnupStWr.WriteLine("set terminal png");
gnupStWr.WriteLine(@"set output 'c:\Users\FrazMan\Desktop\sinxplot2.png'");
gnupStWr.WriteLine("plot sin(x)");
尽量避免"set terminal png"
我希望它能帮到你