mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-14 00:07:35 -04:00
Add v.rast.stats algorithm
This commit is contained in:
parent
3f1445998a
commit
09b9a6246d
@ -0,0 +1,10 @@
|
||||
v.rast.stats
|
||||
Calculates univariate statistics from a raster map based on vector polygons and uploads statistics to new attribute columns.
|
||||
Vector (v.*)
|
||||
ParameterVector|map|Name of vector polygon map|-1|False
|
||||
ParameterRaster|raster|Name of raster map to calculate statistics from|False
|
||||
ParameterString|column_prefix|Column prefix for new attribute columns|None|False|False
|
||||
ParameterString|method|The methods to use (comma separated)|number,minimum,maximum,range,average,stddev,variance,coeff_var,sum,first_quartile,median,third_quartile,percentile|False|True
|
||||
ParameterNumber|percentile|Percentile to calculate|0|100|90|True
|
||||
Hardcoded|-c
|
||||
OutputVector|output|Rast stats
|
50
python/plugins/processing/algs/grass7/ext/v_rast_stats.py
Normal file
50
python/plugins/processing/algs/grass7/ext/v_rast_stats.py
Normal file
@ -0,0 +1,50 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
***************************************************************************
|
||||
v_rast_stats.py
|
||||
---------------
|
||||
Date : March 2016
|
||||
Copyright : (C) 2016 by Médéric Ribreux
|
||||
Email : medspx at medspx dot fr
|
||||
***************************************************************************
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; either version 2 of the License, or *
|
||||
* (at your option) any later version. *
|
||||
* *
|
||||
***************************************************************************
|
||||
"""
|
||||
|
||||
__author__ = 'Médéric Ribreux'
|
||||
__date__ = 'March 2016'
|
||||
__copyright__ = '(C) 2016, Médéric Ribreux'
|
||||
|
||||
# This will get replaced with a git SHA1 when you do a git archive
|
||||
|
||||
__revision__ = '$Format:%H$'
|
||||
|
||||
|
||||
import os
|
||||
|
||||
|
||||
def processCommand(alg):
|
||||
# exclude output for from_output
|
||||
output = alg.getOutputFromName('output')
|
||||
alg.removeOutputFromName('output')
|
||||
|
||||
alg.processCommand()
|
||||
alg.addOutput(output)
|
||||
|
||||
|
||||
def processOutputs(alg):
|
||||
# We need to add the vector layer to outputs:
|
||||
out = alg.exportedLayers[alg.getParameterValue('map')]
|
||||
from_out = alg.getOutputValue('output')
|
||||
command = u"v.out.ogr -s -e input={} output=\"{}\" format=ESRI_Shapefile output_layer={}".format(
|
||||
out, os.path.dirname(from_out),
|
||||
os.path.splitext(os.path.basename(from_out))[0]
|
||||
)
|
||||
alg.commands.append(command)
|
||||
alg.outputCommands.append(command)
|
Loading…
x
Reference in New Issue
Block a user