Skip to main content

geoengine_api_client/models/
statistics.rs

1/*
2 * Geo Engine API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * Contact: dev@geoengine.de
7 * Generated by: https://openapi-generator.tech
8 */
9
10use crate::models;
11use serde::{Deserialize, Serialize};
12
13/// Statistics : The `Statistics` operator is a _plot operator_ that computes count statistics over  - a selection of numerical columns of a single vector dataset, or - multiple raster datasets.  The output is a JSON description.  For instance, you want to get an overview of a raster data source. Then, you can use this operator to get basic count statistics.  ## Vector Data  In the case of vector data, the operator generates one statistic for each of the selected numerical attributes. The operator returns an error if one of the selected attributes is not numeric.  ## Raster Data  For raster data, the operator generates one statistic for each input raster.  ## Inputs  The operator consumes exactly one _vector_ or multiple _raster_ operators.  | Parameter | Type                                 | | --------- | ------------------------------------ | | `source`  | `MultipleRasterOrSingleVectorSource` |  ## Errors  The operator returns an error in the following cases.  - Vector data: The `attribute` for one of the given `columnNames` is not numeric. - Vector data: The `attribute` for one of the given `columnNames` does not exist. - Raster data: The length of the `columnNames` parameter does not match the number of input rasters.  ### Example Output  ```json {   \"A\": {     \"valueCount\": 6,     \"validCount\": 6,     \"min\": 1.0,     \"max\": 6.0,     \"mean\": 3.5,     \"stddev\": 1.707,     \"percentiles\": [       {         \"percentile\": 0.25,         \"value\": 2.0       },       {         \"percentile\": 0.5,         \"value\": 3.5       },       {         \"percentile\": 0.75,         \"value\": 5.0       }     ]   } } ``` 
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct Statistics {
16    #[serde(rename = "params")]
17    pub params: Box<models::StatisticsParameters>,
18    #[serde(rename = "sources")]
19    pub sources: Box<models::MultipleRasterOrSingleVectorSource>,
20    #[serde(rename = "type")]
21    pub r#type: Type,
22}
23
24impl Statistics {
25    /// The `Statistics` operator is a _plot operator_ that computes count statistics over  - a selection of numerical columns of a single vector dataset, or - multiple raster datasets.  The output is a JSON description.  For instance, you want to get an overview of a raster data source. Then, you can use this operator to get basic count statistics.  ## Vector Data  In the case of vector data, the operator generates one statistic for each of the selected numerical attributes. The operator returns an error if one of the selected attributes is not numeric.  ## Raster Data  For raster data, the operator generates one statistic for each input raster.  ## Inputs  The operator consumes exactly one _vector_ or multiple _raster_ operators.  | Parameter | Type                                 | | --------- | ------------------------------------ | | `source`  | `MultipleRasterOrSingleVectorSource` |  ## Errors  The operator returns an error in the following cases.  - Vector data: The `attribute` for one of the given `columnNames` is not numeric. - Vector data: The `attribute` for one of the given `columnNames` does not exist. - Raster data: The length of the `columnNames` parameter does not match the number of input rasters.  ### Example Output  ```json {   \"A\": {     \"valueCount\": 6,     \"validCount\": 6,     \"min\": 1.0,     \"max\": 6.0,     \"mean\": 3.5,     \"stddev\": 1.707,     \"percentiles\": [       {         \"percentile\": 0.25,         \"value\": 2.0       },       {         \"percentile\": 0.5,         \"value\": 3.5       },       {         \"percentile\": 0.75,         \"value\": 5.0       }     ]   } } ``` 
26    pub fn new(params: models::StatisticsParameters, sources: models::MultipleRasterOrSingleVectorSource, r#type: Type) -> Statistics {
27        Statistics {
28            params: Box::new(params),
29            sources: Box::new(sources),
30            r#type,
31        }
32    }
33}
34/// 
35#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
36pub enum Type {
37    #[serde(rename = "Statistics")]
38    Statistics,
39}
40
41impl Default for Type {
42    fn default() -> Type {
43        Self::Statistics
44    }
45}
46