无法从c#中保存Gnuplot png

时间:2012-05-14 13:05:49

标签: c#-4.0 gnuplot

我试图从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();
    }

This is what's happening in image form

1 个答案:

答案 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"

的大写字母

我希望它能帮到你