You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Earth Engine中Export函数未定义问题求助

解决Google Earth Engine中“Export is not defined”错误

错误原因

Export是GEE Code Editor网页环境提供的客户端专属函数,不属于ee命名空间:

  • 仅在GEE官方网页版Code Editor中会自动加载客户端库,可直接调用Export;若在本地Node.js、第三方IDE如VS Code等环境运行,未加载GEE客户端库则会触发该错误。
  • 代码中使用了HTML转义字符"替代双引号,会导致语法错误,间接引发Export未定义的提示。
  • 代码末尾通过DOM元素下载CSV的逻辑,仅在浏览器环境如Code Editor中有效,本地环境运行也会报错。

分场景解决方案

场景1:在GEE官方Code Editor中运行

  1. 修正转义引号:将代码中所有"替换为普通双引号",修正后的Export代码片段:
// Export features, specifying corresponding names.
Export.table.toDrive(myFeatures,
  "export_ppt", // 任务名称
  "GEE_Folder", // Google Drive文件夹
  "ppt_monthly", // 文件名前缀
  "CSV");
  1. 修复索引类型错误:代码中el = ee.List(el);是错误的,el是序列数字需转为ee.Number,修正后的特征集合构建代码:
var myFeatures = ee.FeatureCollection(list.map(function(el){
  el = ee.Number(el); // 修正为数字类型
  return ee.Feature(null, {
    'date': allDatesSimple.get(el),
    'p1': ee.List(getMonthlyValues.get(0)).get(el),
    'p2': ee.List(getMonthlyValues.get(1)).get(el),
    'p3': ee.List(getMonthlyValues.get(2)).get(el),
  });
}));
  1. 直接在GEE Code Editor中运行即可,无需额外配置。

场景2:在本地环境如Node.js/VS Code中运行

本地环境需使用GEE服务端导出方法替代客户端Export函数:

  1. 安装依赖:
npm install @google/earthengine-api
  1. 初始化客户端并替换导出逻辑:
const ee = require('@google/earthengine-api');

// 初始化GEE客户端
ee.initialize(null, null, () => {
  // 你的原有业务代码...
  
  // 用服务端API替代Export.table.toDrive
  const exportParams = {
    collection: myFeatures,
    description: 'export_ppt',
    folder: 'GEE_Folder',
    fileNamePrefix: 'ppt_monthly',
    fileFormat: 'CSV'
  };
  
  ee.data.startTableExport(exportParams, (error, taskId) => {
    if (error) {
      console.error('导出失败:', error);
    } else {
      console.log('导出任务已启动,任务ID:', taskId);
    }
  });
});
  1. 移除浏览器DOM代码:删除末尾encodedUri、link相关的下载逻辑,本地环境不支持浏览器DOM操作。

内容的提问来源于stack exchange,提问作者anon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 07:57:07