docs: private void jButtonAceptGnuPActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonAceptGnuPActionPerformed
  
          if (!this.jTextFieldResultPath.getText().equals("")) {
              String outPath = getDirectory("open", JFileChooser.DIRECTORIES_ONLY);
              if(!outPath.equals("")){
                  
              File resultFile = new File(this.jTextFieldResultPath.getText());
              String resultDirectory = resultFile.getAbsolutePath();
              String gnuPlotPath = this.jTextFieldGNUPath.getText();
              String gnuplotScriptPath = null;
              File gnuplotDir = new File(gnuPlotPath);
              if (!gnuplotDir.exists()) {
                  JOptionPane.showMessageDialog(this, "Gnuplot directory not found: " + gnuPlotPath, "Error", JOptionPane.ERROR_MESSAGE);
                  return;
              }
              String algShortName[] = new String[this.jTableAlgoritms.getRowCount()];
              String algName[] = new String[this.jTableAlgoritms.getRowCount()];
              for (int i = 0; i < this.jTableStreams.getRowCount(); i++) {
                  String streamName = this.jTableStreams.getModel().getValueAt(i, 0).toString();
                  String streamShortName = this.jTableStreams.getModel().getValueAt(i, 1).toString();
                  for (int j = 0; j < this.jTableAlgoritms.getRowCount(); j++) {
                      algName[j] = this.jTableAlgoritms.getModel().getValueAt(j, 0).toString();
                      algShortName[j] = this.jTableAlgoritms.getModel().getValueAt(j, 1).toString();
                      File inputFile = new File(FilenameUtils.separatorsToSystem(
                              this.path + "\\" + streamName + "\\" + algName[j]));
  
                      if (!inputFile.exists()) {
                          JOptionPane.showMessageDialog(this, "File not found: "
                                  + inputFile.getAbsolutePath(),
                                  "Error", JOptionPane.ERROR_MESSAGE);
                          return;
                      }
  
                  }
  
                  gnuplotScriptPath = resultDirectory + File.separator
                          + resultFile.getName() + ".plt";
                  String script = createScript(streamName, algName, algShortName, outPath);
                  File scriptFile = writeScriptToFile(gnuplotScriptPath, script);
                  String gnuplotCommand = gnuPlotPath + File.separator + "gnuplot \""
                          + gnuplotScriptPath + "\"";
                  String line, gnuplotOutput = "";
                  try {
                      Process p = Runtime.getRuntime().exec(gnuplotCommand);
  
                      BufferedReader err = new BufferedReader(new InputStreamReader(p
                              .getErrorStream()));
                      while ((line = err.readLine()) != null) {
                          gnuplotOutput += line + System.getProperty("line.separator");
                      }
                      err.close();
                  } catch (IOException ex) {
                      JOptionPane.showMessageDialog(this, "Error while executing gnuplot script",
                              "Error", JOptionPane.ERROR_MESSAGE);
                      throw new RuntimeException("Error while executing gnuplot script:"
                              + scriptFile, ex);
  
                  }
                  if (this.jCheckBoxDeleteScript.isSelected()) {
                      scriptFile.delete();
                  }
              }
  
              //Completed
              JOptionPane.showMessageDialog(this, "Figures created at " + (new File(resultFile.getAbsolutePath())).getParent(),
                      "", JOptionPane.INFORMATION_MESSAGE);
          }
          } else {
              JOptionPane.showMessageDialog(this, "Plot output file option not set!",
                      "Error", JOptionPane.ERROR_MESSAGE);
          }
  
      }