[Qgis-user] Using the ##passfilename tag for R script in Processing Toolbox

Ned Horning horning at amnh.org
Thu Feb 13 05:59:48 PST 2014


Thank you Victor. I updated to the experimental version of the 
Processing Plugin and it is working as you explain. I like the new 
editor too.

I think the tag name is ##passfilenames and not ##passfilename as it is 
written in the user guide.

I noticed that ##passfilenames only effects input files. Is there a way 
to specify an output file that is not output using writeRaster? The 
reason I ask is that I sometimes need to process an image in blocks 
using the Raster package WriteStart, writeValues, and writeStop 
functions. It would be great if there was a tag that would allow me to 
specify an output file that could be used in that instance and still 
output the image in QGIS. I have a workaround but it would be great if 
there was a more direct way to do it.

Thanks again for all your help.

Ned

On 02/11/2014 05:17 PM, Victor Olaya wrote:
> No, that's not the idea off ##passfilename, the idea is that, instead 
> of getting an R variable that is already a vector/raster layer, you 
> get a string with its filename, so you can use it in R as you like. 
> This was mainly done to allow the user to open a raster layer using a 
> different package, and not use a fixed one and provide the layer 
> object directly. So, if you declare a variable "mylayer" as vector 
> layer, Processing will ask the user to select a vector layer, but the 
> "mylayer" variable will have the path to the selected file. If you do 
> not use ##passfilename, Processing will add some extra code, so the 
> variable will already point to a data object created based on that 
> filename.
>
> You can update to the newer version using the plugin manager. You 
> should enable the "show experimental plugins" option, and you will see 
> a new version of Processing.
>
> To make feature requests, you can use the QGIS issue tracker.
>
> Thanks in advance!
>
>
> 2014-02-11 22:51 GMT+01:00 Ned Horning <horning at amnh.org 
> <mailto:horning at amnh.org>>:
>
>     Hi Victor -
>
>     Yes, I am using the version of Processing that comes with QGIS 2.0.1.
>
>     I played with it some more today and I don't get an error if I use
>     ##passfilenames (I added an "s" at the end) but it still didn't
>     seem to work. I'm assuming that using ##passfilename will simply
>     declare the directory path and file name as a variable instead of
>     actually opening the file. It's quite possible I don't understand
>     the intended functionality.
>
>     Can you let me know the best way to make comments or make feature
>     requests related to the R scripting capability. I'm glad I finally
>     got around to trying it out.
>
>     All the best,
>
>     Ned
>
>
>     On 02/11/2014 04:41 PM, Victor Olaya wrote:
>>     Hi Ned
>>
>>     That looks like a bug when parsing the script code. I will check
>>     to see what I can do.
>>
>>     Are you using the latest version of Processing, or the one that
>>     comes with QGIS 2.0.1?
>>
>>
>>     2014-02-10 23:03 GMT+01:00 Ned Horning <horning at amnh.org
>>     <mailto:horning at amnh.org>>:
>>
>>         Hi -
>>
>>         I am trying to learn to write R scripts using the Processing
>>         Toolbox. I have a random forest image classification script
>>         that works in the processing toolkit but I'd like to modify
>>         it to do more complex tasks. I think I need to use the
>>         ##passfilename tag but every time I add that to a script I
>>         get an error that I pasted below. I tried several different
>>         scripts and every time I add the ##passfilename tag I get the
>>         same error. Does the ##passfilename tag  need other
>>         parameters? If anyone knows what the problem might be or has
>>         pointers about how I can find the problem please let me know?
>>
>>         This R scripting capability has a lot of potential and I'd
>>         like to write a guide on how to use it but I still have a lot
>>         to learn myself.
>>
>>         All the best,
>>
>>         Ned
>>
>>
>>         I'm running QGIS 2.0.1 on Ubuntu 12.04. This is the error
>>         message:
>>         --
>>         An error has occured while executing Python code:
>>
>>         Traceback (most recent call last):
>>           File
>>         "/usr/share/qgis/python/plugins/processing/r/EditRScriptDialog.py",
>>         line 95, in runAlgorithm
>>             alg = RAlgorithm(None, unicode(self.text.text()))
>>           File
>>         "/usr/share/qgis/python/plugins/processing/r/RAlgorithm.py",
>>         line 71, in __init__
>>             self.defineCharacteristicsFromScript()
>>           File
>>         "/usr/share/qgis/python/plugins/processing/r/RAlgorithm.py",
>>         line 82, in defineCharacteristicsFromScript
>>             self.parseDescription(iter(lines))
>>           File
>>         "/usr/share/qgis/python/plugins/processing/r/RAlgorithm.py",
>>         line 108, in parseDescription
>>             raise WrongScriptException("Could not load R script:" +
>>         self.descriptionFile + ".\n Problem with line \"" + line + "\"")
>>         TypeError: cannot concatenate 'str' and 'NoneType' objects
>>
>>         Python version:
>>         2.7.3 (default, Sep 26 2013, 20:13:52)
>>         [GCC 4.6.3]
>>
>>
>>         QGIS version:
>>         2.0.1-Dufour Dufour, exported
>>
>>         Python path: ['/usr/share/qgis/python/plugins/processing',
>>         '/usr/share/qgis/python', '/home/nedhorning/.qgis2/python',
>>         '/home/nedhorning/.qgis2/python/plugins',
>>         '/usr/share/qgis/python/plugins', '/usr/lib/python2.7',
>>         '/usr/lib/python2.7/plat-linux2',
>>         '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old',
>>         '/usr/lib/python2.7/lib-dynload',
>>         '/usr/local/lib/python2.7/dist-packages',
>>         '/usr/lib/python2.7/dist-packages',
>>         '/usr/lib/python2.7/dist-packages/PIL',
>>         '/usr/lib/python2.7/dist-packages/gst-0.10',
>>         '/usr/lib/python2.7/dist-packages/gtk-2.0',
>>         '/usr/lib/pymodules/python2.7',
>>         '/usr/lib/python2.7/dist-packages/ubuntu-sso-client',
>>         '/usr/lib/python2.7/dist-packages/ubuntuone-client',
>>         '/usr/lib/python2.7/dist-packages/ubuntuone-installer',
>>         '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol', '/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode',
>>         '/usr/share/qgis/python/plugins/fTools/tools']
>>         _______________________________________________
>>         Qgis-user mailing list
>>         Qgis-user at lists.osgeo.org <mailto:Qgis-user at lists.osgeo.org>
>>         http://lists.osgeo.org/mailman/listinfo/qgis-user
>>
>>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20140213/d0f68f8c/attachment.html>


More information about the Qgis-user mailing list