Duyuru:
15 Nisan 2025'ten önce Earth Engine'i kullanmak için kaydedilen tüm ticari olmayan projelerin Earth Engine erişimini sürdürmek için
ticari olmayan uygunluğu doğrulaması gerekir.
ee.FeatureCollection.runBigQuery
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Bir BigQuery sorgusu çalıştırır, sonuçları getirir ve FeatureCollection olarak sunar.
Kullanım | İadeler |
---|
ee.FeatureCollection.runBigQuery(query, geometryColumn, maxBytesBilled) | FeatureCollection |
Bağımsız Değişken | Tür | Ayrıntılar |
---|
query | Dize | BigQuery kaynaklarında gerçekleştirilecek GoogleSQL sorgusu. |
geometryColumn | Dize, varsayılan: null | Ana özellik geometrisi olarak kullanılacak sütunun adı. Belirtilmemişse ilk geometri sütunu kullanılır. |
maxBytesBilled | Uzun, varsayılan: 100000000000 | Sorgu işlenirken faturalandırılan maksimum bayt sayısı. Bu sınırı aşan BigQuery işleri başarısız olur ve faturalandırılmaz. |
Örnekler
Kod Düzenleyici (JavaScript)
// Get places from Overture Maps Dataset in BigQuery public data.
Map.setCenter(-3.69, 40.41, 12)
var mapGeometry= ee.Geometry(Map.getBounds(true)).toGeoJSONString();
var sql =
"SELECT geometry, names.primary as name, categories.primary as category "
+ " FROM bigquery-public-data.overture_maps.place "
+ " WHERE ST_INTERSECTS(geometry, ST_GEOGFROMGEOJSON('" + mapGeometry+ "'))";
var features = ee.FeatureCollection.runBigQuery({
query: sql,
geometryColumn: 'geometry'
});
// Display all relevant features on the map.
Map.addLayer(features,
{'color': 'black'},
'Places from Overture Maps Dataset');
// Create a histogram of the categories and print it.
var propertyOfInterest = 'category';
var histogram = features.filter(ee.Filter.notNull([propertyOfInterest]))
.aggregate_histogram(propertyOfInterest);
print(histogram);
// Create a frequency chart for the histogram.
var categories = histogram.keys().map(function(k) {
return ee.Feature(null, {
key: k,
value: histogram.get(k)
});
});
var sortedCategories = ee.FeatureCollection(categories).sort('value', false);
print(ui.Chart.feature.byFeature(sortedCategories).setChartType('Table'));
Python kurulumu
Python API'si ve etkileşimli geliştirme için geemap
kullanımı hakkında bilgi edinmek üzere
Python Ortamı sayfasına bakın.
import ee
import geemap.core as geemap
Colab (Python)
import json
import pandas as pd
# Get places from Overture Maps Dataset in BigQuery public data.
location = ee.Geometry.Point(-3.69, 40.41)
map_geometry = json.dumps(location.buffer(5e3).getInfo())
sql = f"""SELECT geometry, names.primary as name, categories.primary as category
FROM bigquery-public-data.overture_maps.place
WHERE ST_INTERSECTS(geometry, ST_GEOGFROMGEOJSON('{map_geometry}'))"""
features = ee.FeatureCollection.runBigQuery(
query=sql, geometryColumn="geometry"
)
# Display all relevant features on the map.
m = geemap.Map()
m.center_object(location, 13)
m.add_layer(features, {'color': 'black'}, 'Places from Overture Maps Dataset')
display(m)
# Create a histogram of the place categories.
property_of_interest = 'category'
histogram = (
features.filter(
ee.Filter.notNull([property_of_interest])
).aggregate_histogram(property_of_interest)
).getInfo()
# Display the histogram as a pandas DataFrame.
df = pd.DataFrame(list(histogram.items()), columns=['category', 'frequency'])
df = df.sort_values(by=['frequency'], ascending=False, ignore_index=True)
display(df)
Aksi belirtilmediği sürece bu sayfanın içeriği Creative Commons Atıf 4.0 Lisansı altında ve kod örnekleri Apache 2.0 Lisansı altında lisanslanmıştır. Ayrıntılı bilgi için Google Developers Site Politikaları'na göz atın. Java, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-25 UTC.
[null,null,["Son güncelleme tarihi: 2025-07-25 UTC."],[],[],null,["# ee.FeatureCollection.runBigQuery\n\nRuns a BigQuery query, fetches the results and presents the them as a FeatureCollection.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|------------------------------------------------------------------------------------|-------------------|\n| `ee.FeatureCollection.runBigQuery(query, `*geometryColumn* `, `*maxBytesBilled*`)` | FeatureCollection |\n\n| Argument | Type | Details |\n|------------------|-----------------------------|------------------------------------------------------------------------------------------------------------------------------------|\n| `query` | String | GoogleSQL query to perform on the BigQuery resources. |\n| `geometryColumn` | String, default: null | The name of the column to use as the main feature geometry. If not specified, the first geometry column will be used. |\n| `maxBytesBilled` | Long, default: 100000000000 | Maximum number of bytes billed while processing the query. Any BigQuery job that exceeds this limit will fail and won't be billed. |\n\nExamples\n--------\n\n### Code Editor (JavaScript)\n\n```javascript\n// Get places from Overture Maps Dataset in BigQuery public data.\nMap.setCenter(-3.69, 40.41, 12)\nvar mapGeometry= ee.Geometry(Map.getBounds(true)).toGeoJSONString();\nvar sql =\n \"SELECT geometry, names.primary as name, categories.primary as category \"\n + \" FROM bigquery-public-data.overture_maps.place \"\n + \" WHERE ST_INTERSECTS(geometry, ST_GEOGFROMGEOJSON('\" + mapGeometry+ \"'))\";\n\nvar features = ee.FeatureCollection.runBigQuery({\n query: sql,\n geometryColumn: 'geometry'\n});\n\n// Display all relevant features on the map.\nMap.addLayer(features,\n {'color': 'black'},\n 'Places from Overture Maps Dataset');\n\n\n// Create a histogram of the categories and print it.\nvar propertyOfInterest = 'category';\nvar histogram = features.filter(ee.Filter.notNull([propertyOfInterest]))\n .aggregate_histogram(propertyOfInterest);\nprint(histogram);\n\n// Create a frequency chart for the histogram.\nvar categories = histogram.keys().map(function(k) {\n return ee.Feature(null, {\n key: k,\n value: histogram.get(k)\n });\n});\nvar sortedCategories = ee.FeatureCollection(categories).sort('value', false);\nprint(ui.Chart.feature.byFeature(sortedCategories).setChartType('Table'));\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\nimport json\nimport pandas as pd\n\n# Get places from Overture Maps Dataset in BigQuery public data.\nlocation = ee.Geometry.Point(-3.69, 40.41)\nmap_geometry = json.dumps(location.buffer(5e3).getInfo())\n\nsql = f\"\"\"SELECT geometry, names.primary as name, categories.primary as category\nFROM bigquery-public-data.overture_maps.place\nWHERE ST_INTERSECTS(geometry, ST_GEOGFROMGEOJSON('{map_geometry}'))\"\"\"\n\nfeatures = ee.FeatureCollection.runBigQuery(\n query=sql, geometryColumn=\"geometry\"\n)\n\n# Display all relevant features on the map.\nm = geemap.Map()\nm.center_object(location, 13)\nm.add_layer(features, {'color': 'black'}, 'Places from Overture Maps Dataset')\ndisplay(m)\n\n# Create a histogram of the place categories.\nproperty_of_interest = 'category'\nhistogram = (\n features.filter(\n ee.Filter.notNull([property_of_interest])\n ).aggregate_histogram(property_of_interest)\n).getInfo()\n\n# Display the histogram as a pandas DataFrame.\ndf = pd.DataFrame(list(histogram.items()), columns=['category', 'frequency'])\ndf = df.sort_values(by=['frequency'], ascending=False, ignore_index=True)\ndisplay(df)\n```"]]