3

Make sure all images are of the same data type. Make sure all images have the same number of bands. Make sure all images have the same band names. Here is a reproducible conceptual example: Code Editor script // Import a Landsat 8 image and calculate NDVI. var img = ee.Image('LANDSAT/LC08/C01/T1_SR/LC08_038029_20190712'); var ndvi = img....


3

You can use the .changeProj() image method to change the projection of an image in the Map display. Note, however, that the Google Map tiles, Map scale bar, geometry tools, and the Inspector coordinates are still tied to the Map object's original canvas (EPSG:3857). Here is an example from @Gennadii Donchyts (user:99557): var coords = ee.Image.pixelLonLat()...


3

By default, all properties of a collection will be exported. You can use the selectors argument to specify the properties you want to export. Export.table.toDrive({ collection: fire_ind_count, description: 'FireCountsInAustralia_gt50_conf', selectors:['count'] });


2

You can try to use joins for this. The below solution joins an S1 and S2 collection together. Each S2 scene will have a list of S1 scenes, where each S1 scene is within 16 days of the corresponding S2 scene, and intersects it. Since a single S1 scene might not cover a whole S2 scene, a quality mosaic of the S1 scenes is created, using the pixels closest ...


2

"scale" in reduceRegion() is, according to the docs: "A nominal scale in meters of the projection to work in." So setting this to 0.25 is not what you want to do. Instead, you can use "crs": The projection to work in. If unspecified, the projection of the image's first band is used. If specified in addition to scale, rescaled to the specified ...


2

If you do not want RGB visualization bands, then you should not call image.visualize({}). The visualize algorithm creates RGB bands. Simply replace image.visualize({}).addBands(image), which adds the original bands back to the visualization bands, with image. The toFloat will probably also be unneeded then. for (var i in listOfNumbers) { var image = ee....


2

Earth Engine is a deterministic programming environment, so only limited forms of pseudorandom numbers are available. One of them is ImageCollection.randomColumn, which adds a property with a pseudorandom number to each element of a collection. We can use this to randomly sample by using that as a sort key: var seed = 328948349; var tenImages = Sentinel2 ...


2

The answer is in your script. When you print your collection size it says there is 0 images in there. Change the filter parameters you apply in your script to ensure there is actually images in your collection


2

The problem is that the composite image used in the mapped function to calculate the "VCI" index has four bands. You need to .select('NDVI') from it. The selected single band of NDVI from img1 is being used as a numerator constant for the four bands of the composite image in the division step - four bands are returned. This snippet corrects the problem: ...


2

Using your script, I ran taskToexport.status() to check on the status of the download request and an error was returned: error_message: Unable to export unbounded image. You need to provide an argument to the region parameter of the ee.batch.Export.image.toDrive function to bound the extent of the download: taskToexport = ee.batch.Export.image.toDrive( ...


2

Justin's solution is great but it works even better if you add ".distinct('year')" to the distinctYear variable (which was probably his intention). // Reduce the collection to a set of unique year representatives // to serve as the primary collection in a join with the complete // collection. var distinctYear = ee.ImageCollection("ECMWF/ERA5/MONTHLY") ...


2

Applying .mean() to the collection will return a single image that represents the mean of all monthly means; essentially mean temperature 1979 to 2019. To calculate a collection of mean annual temperature images (one image per year), you can use the code below. It: Reduces the image collection to a set of distinct year representatives. Performs a join ...


2

The default map in Earth Engine is the map from Google Maps, and is not a dataset available within Earth Engine. It is possible to retrieve the data (e.g. via Maps Static API), but the Terms of Service for Google Maps Platform include “No Creating Content From Google Maps Content”, so I would guess that the usage you propose is not allowed unless you can ...


2

Like Walshe pointed out, the images are split into a fixed grid. There are tiles that never get completely covered by a single image, so filtering out scenes is probably not a good idea. Normally, this isn't a problem. I suppose you could re-assemble the tiles by joining images from same day/spacecraft/orbit-number: var aoi = ee.Geometry.Polygon( [[[24.06,...


2

There are a couple of issues with the code: You're invoking export_image() with the wrong argument order. Like you pointed out, your image doesn't contain a VH band. You have to remove all references to it. Instead of doing that, I typically filter out images that doesn't contain both VV and VH. There is problems with your geometry. I didn't try to figure ...


2

.toList(size) is effectively asking Earth Engine to load everything in the collection into memory at once, because lists (as opposed to collections) always work that way. You should avoid using toList whenever possible; Earth Engine is designed to process collections in a streaming fashion and toList prevents that from working. For your example, you can use ...


2

You can split your MultiPolygon into many single Polygons and calculate your stats: // Check if it's a MultiPolygon if (geometry instanceof ee.Geometry.MultiPolygon) { // If it is a MultiPolygon, split it up into separate Polygons // and do the work on each of them, separately. // In your code, you printed intermediate values and // added ...


2

This can hopefully get you started: var start = ee.Date.fromYMD(2013,4,1); // from 2013-04-01 var end = ee.Date.fromYMD(2020,1,1); // to 2020-01-01 var months = end.difference(start, 'month') var monthlyWater = ee.ImageCollection( ee.List.sequence(0, months.subtract(1)).map(function (delta) { var startDate = start.advance(delta, 'month') var ...


2

This is because ee.ImageCollection doesn't have a subtract() method. If you need to subtract something from every image in a collection, you need to map over the collection. var collection = ee.ImageCollection('COPERNICUS/S2') .limit(10) var subtracted = collection.map(function (image) { return image.subtract(42) })


2

You're requesting export of a table. and columns like a database or spreadsheet. In Earth Engine, the “rows” of a table are features, and the “columns” are property names. Each cell contains the value of a property of the row feature. You computed one value (using reduceRegion) and then put those results as properties of the feature collection, not any of ...


2

The imagery in your collection have originally had different projections, because it is built from Landsat scenes of different WRS paths/rows. Subsequently, you will need to provide a scale in the arguments of the ui.Chart function to tell GEE specifically how you want to aggregate pixels within the geometry. Use for example a scale of 30 (in meters), which ...


1

You could multiply one of the layers by a large scalar and then add the other, which will result in unique combinations. For instance, suppose land cover values range from 1-100 and you multiply the image by 1,000, the new range will be 1,000-100,000. This works if the values of the soil layer are less than 1000. In this example, up to the one thousands ...


1

I usually use the angle band to mask the sides of the scenes, only allowing angles between 31 and 45 degrees. There's often some noise at the beginning and end of each track, so I mask that out too. This might lead to gaps in your composites though, so you might want to skip that in some cases. function maskBorder(image) { var totalSlices = ee.Number(...


1

Why not making the image collection in one go by mapping over the list of years. THen you can also immediately calculate the RUE as you have both images for a year. var byYear = ee.ImageCollection.fromImages( years.map(function (y) { var start = ee.Date.fromYMD(y, 07, 1); var stop = start.advance(1, 'year'); var sumVeg = smoothed.filterDate(start, ...


1

You have defined your S2 collection to perform masking, but your addImage function does not refer to S2 at all; it is fetching unaltered images from Earth Engine (via ee.Image(...)) that happen to have the same IDs. Here is a replacement which does retrieve the images from S2: function addImage(clientSideImage) { var idInCollection = clientSideImage....


1

Your date filter is not doing what you expect it should be doing. In this way, it will return a empty image collection and that gives an error. You are probably looking to the filter ee.Filter.date and then combine both filter using ee.Filter.or. The docs give sufficient explanation about both filters. You can use that in the following manner: var l5_coll = ...


1

You can use RGB color mixing as a way to show spots where both chlor_a and sst show high values (or low, or somewhere in between). Basically, you are assigning one variable to the color red and the other to blue and then mixing them (green is set to zero contribution) as they relate to the position in their respective data ranges. Data range is important ...


1

It sounds like you want ee.Image.addBands and ee.Image.rename. addBands lets you create an image which has the bands from two different images, and in order to give them useful names you will want to rename them first since in your current situation, every band's name is 'LC_Type1'. var everything = LC2001 .addBands(Grassland2001.rename('Grassland')) ...


1

Your question is a little vague, though I see an opportunity to describe a few ways to deal with changing masked pixel values. 1. You can change masked pixels to a new value using the .unmask() image method: // Define a function to return a masked random image. function getMaskedImg(seed, thresh) { var randImg = ee.Image.random(seed).multiply(100); var ...


1

If you trying to take the mean of the ImageCollection (which reduces it to a single image) there is a function for that: var MeanOverTime = IC.mean()


Only top voted, non community-wiki answers of a minimum length are eligible