Hi,

  I am writing a python script that will take in two parameters (an input file and an ouput file name) , plot a graph and output it to the filename specified.

PYTHON SCRIPT

#!/usr/bin/python

import sys
import numpy as np
import matplotlib.pyplot as plt

input_file = sys.argv[1]
output_file = sys.argv[2]

mydata = np.loadtxt(input_file)
plt.figure(1)
plt.plot(mydata[:,0],mydata[:,1],label = "Feature");
plt.plot(mydata[:,0],mydata[:,2], label = "Variance");
plt.xlabel('Distance from feature(bp)');
plt.ylabel('Score');
plt.title(sys.argv[1]);
plt.legend(loc="best")
plt.savefig(output_file)


SAMPLE COMMAND : 

<command interpreter="python"> plot.py    $ref_filename    $out_file1    </command>
<inputs>
                  <param name="ref_filename"   type="data" format="gen,txt,gtf,bed"   label="Reference/Coordination file" help="Choose a reference file"/>
</inputs>
<outputs>
                 <data name="out_file1"   format="pdf" />
</outputs>

When I run this, I am getting the following error.
           
  File "/panfs/panfs.ccr.buffalo.edu/projects/mjbuck/galaxy/CistromeAP/tools/ArchTex/plot.py", line 22, in <module>
    plt.savefig(output_file)
  File "/data/apps/python/lib/python2.6/site-packages/matplotlib/pyplot.py", line 345, in savefig
    return fig.savefig(*args, **kwargs)
  File "/data/apps/python/lib/python2.6/site-packages/matplotlib/figure.py", line 990, in savefig
    self.canvas.print_figure(*args, **kwargs)
  File "/data/apps/python/lib/python2.6/site-packages/matplotlib/backend_bases.py", line 1399, in print_figure
    '%s.' % (format, ', '.join(formats)))
ValueError: Format "dat" is not supported.
Supported formats: emf, eps, pdf, png, ps, raw, rgba, svg, svgz.

I don't know how to make the script extract    ".pdf"    from the   ".dat"

Thanks,
VJ.