Announcement: All noncommercial projects registered to use Earth Engine before
April 15, 2025 must
verify noncommercial eligibility to maintain Earth Engine access.
ui.Map.setOptions
Stay organized with collections
Save and categorize content based on your preferences.
Modifies the Google Maps basemap. Allows for: 1) Setting the current MapType. 2) Providing custom styles for the basemap (MapTypeStyles). 3) Setting the list of available mapTypesIds for the basemap.
If called with no parameters, resets the map type to the Google Maps default.
Returns this ui.Map.
Usage | Returns | Map.setOptions(mapTypeId, styles, types) | ui.Map |
Argument | Type | Details | this: ui.map | ui.Map | The ui.Map instance. |
mapTypeId | String, optional | A mapTypeId to set the basemap to. Can be one of "ROADMAP", "SATELLITE", "HYBRID", or "TERRAIN" to select one of the standard Google Maps API map types, or one of the keys specified in the opt_styles dictionary. If left as null and only 1 style is specified in opt_styles, that style will be used. |
styles | Object, optional | A dictionary of custom MapTypeStyle objects keyed with a name that will appear in the map's Map Type Controls. See: https://developers.google.com/maps/documentation/javascript/reference#MapTypeStyle |
types | List<String>, optional | A list of mapTypeIds to make available. If omitted, but opt_styles is specified, appends all of the style keys to the standard Google Maps API map types. |
Examples
Code Editor (JavaScript)
// Set the map to terrain with a string.
Map.setOptions('TERRAIN');
// Use a dictionary to add some typo protection.
var mapTypes = {
HYBRID: 'HYBRID',
ROADMAP: 'ROADMAP',
SATELLITE: 'SATELLITE',
TERRAIN: 'TERRAIN'
};
Map.setOptions({mapTypeId: mapTypes.HYBRID});
Map.setOptions({mapTypeId: mapTypes.ROADMAP});
Map.setOptions({mapTypeId: mapTypes.SATELLITE});
Map.setOptions({mapTypeId: mapTypes.TERRAIN});
// Add a basemap that inverts the lightness to make a darker background.
Map.setOptions({
styles:
{'Inverted': [{featureType: 'all', stylers: [{invert_lightness: true}]}]}
});
// Use types keyword to control map type visibility, e.g. show only 'Inverted'.
Map.setOptions({
styles:
{'Inverted': [{featureType: 'all', stylers: [{invert_lightness: true}]}]},
types: ['Inverted']
});
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-07-08 UTC.
[null,null,["Last updated 2025-07-08 UTC."],[[["\u003cp\u003eModifies the Google Maps basemap by setting the map type, providing custom styles, and controlling available map types.\u003c/p\u003e\n"],["\u003cp\u003eAccepts \u003ccode\u003emapTypeId\u003c/code\u003e, \u003ccode\u003estyles\u003c/code\u003e, and \u003ccode\u003etypes\u003c/code\u003e as parameters to customize the basemap's appearance and functionality.\u003c/p\u003e\n"],["\u003cp\u003eResets the map to the default Google Maps style if called without any parameters.\u003c/p\u003e\n"],["\u003cp\u003eAllows the use of standard Google Maps API map types ("ROADMAP", "SATELLITE", "HYBRID", "TERRAIN") or custom styles defined using MapTypeStyle objects.\u003c/p\u003e\n"],["\u003cp\u003eOffers flexibility in controlling the visibility of map types through the \u003ccode\u003etypes\u003c/code\u003e parameter.\u003c/p\u003e\n"]]],["This tool modifies the Google Maps basemap by setting the `mapTypeId` (e.g., \"ROADMAP\", \"SATELLITE\"). It allows custom styles (`MapTypeStyles`) via a dictionary, with user-defined names. Users can control available map types using a list of `mapTypeIds`. If no parameters are specified it defaults to the original Google Maps basemap. Example usage is shown, to set different Map Types, add a style (like Inverted) or control the displayed Map Types.\n"],null,["# ui.Map.setOptions\n\n\u003cbr /\u003e\n\nModifies the Google Maps basemap. Allows for: 1) Setting the current MapType. 2) Providing custom styles for the basemap (MapTypeStyles). 3) Setting the list of available mapTypesIds for the basemap.\n\n\u003cbr /\u003e\n\nIf called with no parameters, resets the map type to the Google Maps default.\n\nReturns this ui.Map.\n\n| Usage | Returns |\n|----------------------------------------------------------|---------|\n| Map.setOptions`(`*mapTypeId* `, `*styles* `, `*types*`)` | ui.Map |\n\n| Argument | Type | Details |\n|----------------|--------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| this: `ui.map` | ui.Map | The ui.Map instance. |\n| `mapTypeId` | String, optional | A mapTypeId to set the basemap to. Can be one of \"ROADMAP\", \"SATELLITE\", \"HYBRID\", or \"TERRAIN\" to select one of the standard Google Maps API map types, or one of the keys specified in the opt_styles dictionary. If left as null and only 1 style is specified in opt_styles, that style will be used. |\n| `styles` | Object, optional | A dictionary of custom MapTypeStyle objects keyed with a name that will appear in the map's Map Type Controls. See: https://developers.google.com/maps/documentation/javascript/reference#MapTypeStyle |\n| `types` | List\\\u003cString\\\u003e, optional | A list of mapTypeIds to make available. If omitted, but opt_styles is specified, appends all of the style keys to the standard Google Maps API map types. |\n\nExamples\n--------\n\n### Code Editor (JavaScript)\n\n```javascript\n// Set the map to terrain with a string.\nMap.setOptions('TERRAIN');\n\n// Use a dictionary to add some typo protection.\nvar mapTypes = {\n HYBRID: 'HYBRID',\n ROADMAP: 'ROADMAP',\n SATELLITE: 'SATELLITE',\n TERRAIN: 'TERRAIN'\n};\n\nMap.setOptions({mapTypeId: mapTypes.HYBRID});\nMap.setOptions({mapTypeId: mapTypes.ROADMAP});\nMap.setOptions({mapTypeId: mapTypes.SATELLITE});\nMap.setOptions({mapTypeId: mapTypes.TERRAIN});\n\n// Add a basemap that inverts the lightness to make a darker background.\nMap.setOptions({\n styles:\n {'Inverted': [{featureType: 'all', stylers: [{invert_lightness: true}]}]}\n});\n\n// Use types keyword to control map type visibility, e.g. show only 'Inverted'.\nMap.setOptions({\n styles:\n {'Inverted': [{featureType: 'all', stylers: [{invert_lightness: true}]}]},\n types: ['Inverted']\n});\n```"]]