> For the complete documentation index, see [llms.txt](https://docs.geopard.tech/geopard-tutorials/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.geopard.tech/geopard-tutorials/it/documentazione-api/panoramica-delle-richieste-api-geopard/87.-mutation-salva-vectoranalysismap-personalizzata-zonesmap.md).

# 87. Mutation: salva VectorAnalysisMap personalizzata (ZonesMap)

Di seguito sono riportati i dettagli su come salvare una ZonesMap personalizzata con uno schema di colori personalizzato.

### 1. Salvare le geometrie di ZonesMap

{% hint style="danger" %}
VectorAnalysisMap (ZonesMap) `zonesMapGeojson` l'attributo deve essere nella proiezione WGS84 (EPSG:4326) e seguire la specifica GeoJson [specifica](https://geojson.org/).

Il `geojson` tipo previsto è `FeatureCollection` con `MultiPolygon`.
{% endhint %}

Mutation `saveVectorAnalysisMap` panoramica:

* L'attributo `fieldUuid` è un collegamento al Field esistente.
* L'attributo `nome` descrive il nome della ZonesMap.
* Il tipo di attributo è un valore enum che rappresenta il tipo di operazione. Può essere qualsiasi valore tra `GENERAL` , `SPRAYING`, `SEEDING`, `FERTILIZING` o `IRRIGATION`. È opzionale.
* L'attributo chiave con tutti i dettagli inclusi i rate per VRA è `zonesMapGeojson` come stringa JSON escapata.&#x20;
  * Il numero della zona è indicato in `properties` >> `zone`.
  * I rate verranno incorporati in `properties`  >> `attributes`.&#x20;

<mark style="color:predefinito;background-color:yellow;">L'</mark> <mark style="color:predefinito;background-color:yellow;"></mark><mark style="color:predefinito;background-color:yellow;">`properties`</mark> <mark style="color:predefinito;background-color:yellow;"></mark><mark style="color:predefinito;background-color:yellow;">attributo è un oggetto JSON che viene esteso con</mark>  `zone`<mark style="color:predefinito;background-color:yellow;">,</mark> <mark style="color:predefinito;background-color:yellow;"></mark><mark style="color:predefinito;background-color:yellow;">`rates`</mark><mark style="color:predefinito;background-color:yellow;">,</mark> <mark style="color:predefinito;background-color:yellow;"></mark><mark style="color:predefinito;background-color:yellow;">`ratesHeaders`</mark><mark style="color:predefinito;background-color:yellow;">,</mark>  <mark style="color:predefinito;background-color:yellow;"></mark><mark style="color:predefinito;background-color:yellow;">`ratesPrices`</mark> <mark style="color:predefinito;background-color:yellow;"></mark><mark style="color:predefinito;background-color:yellow;">e</mark> <mark style="color:predefinito;background-color:yellow;"></mark><mark style="color:predefinito;background-color:yellow;">`ratesUnits`</mark> <mark style="color:predefinito;background-color:yellow;"></mark><mark style="color:predefinito;background-color:yellow;">dettagli.</mark>  \
Una spiegazione di come assegnare i rate è [QUI](/geopard-tutorials/it/documentazione-api/panoramica-delle-richieste-api-geopard/85.-mutation-assegna-le-dosi-a-vectoranalysismap-zonesmap.md).

{% code overflow="wrap" lineNumbers="true" %}

```json
 {
    \"zone\":1,
    \"attributes\":{
        \"rates\":[100],
        \"ratesHeaders\":[\"Product1\"],
        \"ratesPrices\":[0],
        \"ratesUnits\":[\"KG_HA\"]
    }
}
```

{% endcode %}

Esempio di mutation senza rate definiti:

{% code overflow="wrap" lineNumbers="true" %}

```graphql
mutation saveVectorAnalysisMap {  
  saveVectorAnalysisMap(
    input: {
      fieldUuid:"abef3a63-a64b-4d84-aab0-43eaa8fbe0cd" 
      name:"Custom Zones" 
      zonesMapGeojson:"{\"type\":\"FeatureCollection\",\"features\":[{\"type\":\"Feature\",\"properties\":{\"zone\":1,\"attributes\":{}},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[10.426584494429108,52.872847225483895],[10.426789204309529,52.87282914352929],[10.42676923261385,52.87256092698456],[10.42679456306152,52.87240585041315],[10.427391783218683,52.87195386627311],[10.427338425939524,52.872087776901424],[10.427073800972806,52.87238914697767],[10.426899048635903,52.872624214183844],[10.42701887880915,52.872889416681545],[10.427403333950082,52.87288037571423],[10.427498199505067,52.872940648795804],[10.427403333950082,52.8731003720562],[10.42777780324397,52.873242012946434],[10.428022456514952,52.87323297205208],[10.428167251308338,52.8731244811766],[10.42807737867767,52.87286832108788],[10.42809735037332,52.87259407743369],[10.428501777209902,52.872404215426826],[10.428611621536277,52.87250969442229],[10.42882132434022,52.87257900905101],[10.429100928079123,52.87232585943539],[10.429155850242694,52.87216914702836],[10.429205779481066,52.87184065187668],[10.429263945397143,52.87180554285836],[10.42928833,52.87242022],[10.42922193,52.8725049],[10.42915175626986,52.87255993568499],[10.429021041297204,52.872554899627374],[10.428771395100966,52.872708596972984],[10.42838693996012,52.872847225483895],[10.428257123938948,52.87296777165494],[10.428370342208543,52.873172781233286],[10.42795711,52.87349687],[10.42718139841625,52.87321758481732],[10.427228581614003,52.87319078118864],[10.427208609918353,52.87305516741958],[10.42683913354881,52.873015990029785],[10.426664381211879,52.87293763514347],[10.426584494429108,52.872847225483895]]],[[[10.427804124872603,52.871641800637654],[10.42875584,52.87092153],[10.42897875,52.87105982],[10.42921404,52.87137376],[10.429231472601687,52.87152239994234],[10.428951140362273,52.871638731603355],[10.42879635972102,52.87193709107814],[10.428666543698995,52.872057639778546],[10.428371961188788,52.872057639778546],[10.42821218762407,52.87183161069021],[10.427967534352206,52.871708047624395],[10.427804124872603,52.871641800637654]]]]}},{\"type\":\"Feature\",\"properties\":{\"zone\":2,\"attributes\":{}},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[10.426899048635903,52.872624214183844],[10.427073800972806,52.87238914697767],[10.427338425939524,52.872087776901424],[10.427391783218683,52.87195386627311],[10.427804124872603,52.871641800637654],[10.427967534352206,52.871708047624395],[10.42821218762407,52.87183161069021],[10.428371961188788,52.872057639778546],[10.428666543698995,52.872057639778546],[10.42879635972102,52.87193709107814],[10.428951140362273,52.871638731603355],[10.429231472601687,52.87152239994234],[10.42926357,52.87179608],[10.429263945397143,52.87180554285836],[10.429205779481066,52.87184065187668],[10.429155850242694,52.87216914702836],[10.429100928079123,52.87232585943539],[10.42882132434022,52.87257900905101],[10.428611621536277,52.87250969442229],[10.428501777209902,52.872404215426826],[10.42809735037332,52.87259407743369],[10.42807737867767,52.87286832108788],[10.428167251308338,52.8731244811766],[10.428022456514952,52.87323297205208],[10.42777780324397,52.873242012946434],[10.427403333950082,52.8731003720562],[10.427498199505067,52.872940648795804],[10.427403333950082,52.87288037571423],[10.42701887880915,52.872889416681545],[10.426899048635903,52.872624214183844]]]]}},{\"type\":\"Feature\",\"properties\":{\"zone\":3,\"attributes\":{}},\"geometry\":{\"type\":\"MultiPolygon\",\"coordinates\":[[[[10.428257123938948,52.87296777165494],[10.42838693996012,52.872847225483895],[10.428771395100966,52.872708596972984],[10.429021041297204,52.872554899627374],[10.42915175626986,52.87255993568499],[10.428370342208543,52.873172781233286],[10.428257123938948,52.87296777165494]]],[[[10.42619246,52.87286153],[10.42679456306152,52.872405850413145],[10.42676923261385,52.87256092698456],[10.426789204309529,52.87282914352929],[10.426584494429108,52.872847225483895],[10.426664381211879,52.87293763514347],[10.42683913354881,52.873015990029785],[10.427208609918353,52.87305516741958],[10.427228581614003,52.87319078118864],[10.42718139841625,52.87321758481732],[10.42619246,52.87286153]]]]}}]}"
    }
  ) {
    uuid
  }
}
```

{% endcode %}

La rappresentazione predefinita senza schema di colori assegnato appare così. La ZonesMap dell'utente >> `geoMaps` >> `url` è simile a [https://api.geopard.tech/geo/map/reflect?TRANSPARENT=true\&VIEWPARAMS=uuid:4a3929a5-c166-41d7-b547-da1511a9fa1d\&LAYERS=custom\_zone\_map\_view\&SRS=EPSG:3857\&STYLES=default\_zonesmap\&HEIGHT=64\&BBOX=1160638.4354309493,6959157.496681602,1160983.0667152018,6959632.459385279\&geopardApiKey=\<your\_geopard\_api\_key>](https://api.geopard.tech/geo/map/reflect?TRANSPARENT=true\&VIEWPARAMS=uuid:4a3929a5-c166-41d7-b547-da1511a9fa1d\&LAYERS=custom_zone_map_view\&SRS=EPSG:3857\&STYLES=default_zonesmap\&HEIGHT=64\&BBOX=1160638.4354309493,6959157.496681602,1160983.0667152018,6959632.459385279\&geopardApiKey=<your_geopard_api_key>).

<figure><img src="/files/090f59fa4f72f17ba989058adc74b3157464f35c" alt=""><figcaption></figcaption></figure>

### 2. Assegnare uno schema di colori personalizzato

Mutation `setGeoMaps` panoramica:

* L'attributo `fieldUuid` è un collegamento al Field esistente.
* L'attributo `vectorAnalysisMapUuid` è un collegamento alla ZonesMap appena salvata (VectorAnalysisMap) dal primo passaggio.
* L'attributo `shortName` descrive lo stile da modificare. \
  Le opzioni per ZonesMap sono `zones` e `miniatura`.
* L'attributo `hexColorCodes` descrive i codici colore esadecimali da impostare.

{% hint style="danger" %}
Il numero di colori in `hexColorCodes` deve rappresentare il numero esatto di zone esistenti`.`
{% endhint %}

Una spiegazione di come salvare i colori personalizzati è [QUI](/geopard-tutorials/it/documentazione-api/panoramica-delle-richieste-api-geopard/39.-mutation-imposta-schemi-di-colore-personalizzati-per-le-geomaps-selezionate.md) e come applicare i colori personalizzati al volo è [QUI](/geopard-tutorials/it/documentazione-api/endpoint-geospaziali-per-laccesso-ai-dati-spaziali/wms-ottieni-immagini-raster-dei-layer-di-dati-spaziali/6.-zonesmap-schema-colori-personalizzato.md).

Esempio di mutation:

{% code overflow="wrap" lineNumbers="true" %}

```graphql
mutation setGeoMaps{
  setGeoMaps(
    input: {
      geoMaps:[
        {
          shortName:"zones" 
          fieldUuid:"abef3a63-a64b-4d84-aab0-43eaa8fbe0cd" 
          vectorAnalysisMapUuid:"9799e2eb-06d2-4a42-8f47-38655abf11e1"
          hexColorCodes:[
            "#ffffbf",
            "#66bd63",
            "#f46d43"
          ]
        }, {
          shortName:"thumbnail" 
          fieldUuid:"abef3a63-a64b-4d84-aab0-43eaa8fbe0cd" 
          vectorAnalysisMapUuid:"9799e2eb-06d2-4a42-8f47-38655abf11e1" 
          hexColorCodes:[
            "#ffffbf",
            "#66bd63",
            "#f46d43"
          ]
        }
      ]
    }
  ) {
    shortName
  }
}
```

{% endcode %}

Di conseguenza, la rappresentazione visiva dalla ZonesMap >> `geoMaps` >> `url` simile a [https://api.geopard.tech/geo/map/reflect?TRANSPARENT=true\&VIEWPARAMS=uuid:9799e2eb-06d2-4a42-8f47-38655abf11e1\&LAYERS=custom\_zone\_map\_view\&SRS=EPSG:3857\&STYLES=default\_zonesmap\&HEIGHT=64\&BBOX=1160638.4354309493,6959157.496681602,1160983.0667152018,6959632.459385279\&env=c1:#ffffbf;c2:#66bd63;c3:#f46d43\&geopardApiKey=\<your\_geopard\_api\_key>](https://api.geopard.tech/geo/map/reflect?TRANSPARENT=true\&VIEWPARAMS=uuid:9799e2eb-06d2-4a42-8f47-38655abf11e1\&LAYERS=custom_zone_map_view\&SRS=EPSG:3857\&STYLES=default_zonesmap\&HEIGHT=64\&BBOX=1160638.4354309493,6959157.496681602,1160983.0667152018,6959632.459385279\&env=c1:#ffffbf;c2:#66bd63;c3:#f46d43\&geopardApiKey=<your_geopard_api_key>) assomiglia a.

<figure><img src="/files/a89c2b206e807526afd18980c1149de59f91b70a" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.geopard.tech/geopard-tutorials/it/documentazione-api/panoramica-delle-richieste-api-geopard/87.-mutation-salva-vectoranalysismap-personalizzata-zonesmap.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
