图表概览

Earth Engine JavaScript 代码编辑器可与 Google 图表无缝集成,以便通过 ui.Chart 函数轻松直观呈现表格数据。图表可以在 Code Editor 控制台、ui.Panel Widget 和独立的浏览器标签页中以互动方式显示。

DataTable 个图表

Earth Engine 使用 Google Visualization API 来支持绘制图表。该 API 接受 DataTable,这是一个二维表,其中行是观察结果,列是观察属性。Earth Engine 中的所有图表都派生自 DataTableui.Chart 微件允许您直接提供 DataTable。这种方法可最大限度地实现图表自定义,但可能不如用于绘制特定 Earth Engine 对象的图表方法(请参阅下一部分)方便。详细了解如何基于 DataTable 创建图表:

Earth Engine 对象图表

ui.Chart 微件提供了辅助方法,用于构建 DataTable 并根据 ImageImageCollectionFeatureFeatureCollectionArrayList 对象渲染图表。每个函数都接受特定的数据类型,并包含用于以各种排列方式将数据缩减为表格格式的方法,这些排列方式决定了将数据分配给图表系列和轴的方式。

请访问以下链接,了解如何为每种数据类型生成图表:

图表类型

可以生成多种图表类型,例如散点图、折线图、条形图、饼图和直方图。具体而言,可以生成 Google 图表 corechart 软件包中提供的任何图表类型。使用 ui.Chart.setChartType() 方法设置图表类型。Earth Engine 对象图表DataTable 图表部分中链接到的每个页面都包含生成多种图表类型的示例。

将以下字符串用作 ui.Chart.setChartType() 方法的输入:

'ScatterChart'
'LineChart'
'ColumnChart'
'BarChart'
'PieChart'
'AreaChart'

示例如下:

var data = ee.List([0, 1, 2, 3, 4, 5]);
var chart = ui.Chart.array.values(data, 0, data)
  .setChartType('ColumnChart');
print(chart);

显示和下载

ui.Chart widget 可通过以下三种方式显示:

var data = ee.List([0, 1, 2, 3, 4, 5]);
var chart = ui.Chart.array.values(data, 0, data);
print(chart);
var data = ee.List([0, 1, 2, 3, 4, 5]);
var chart = ui.Chart.array.values(data, 0, data);
var chartPanel = ui.Panel(chart);
Map.add(chartPanel);
  • 在一个单独的浏览器标签页中,点击显示的 ui.Chart 微件的右上角的弹出式窗口图标 ()。新页面提供全屏显示,并提供以图形(PNG 或 SVG)或底层数据的 CSV 文件的形式下载图表的选项。

互动

图表默认是交互式的。将鼠标悬停在点、线、条形等上,即可查看相应的 x、y 和系列值。您可以选择启用图表的“Explorer”功能,以允许对轴进行缩放和平移。

样式

Google 图表可通过样式属性进行高度自定义。使用 ui.Chart.setOptions() 方法设置图表样式属性。如需了解详情,请参阅图表样式设置指南。

限制

ui.Chart 函数将仅渲染 5,000 个地图项。如果您的 FeatureCollectionImageCollectionArrayList 包含更多元素,请考虑限制数据的方法。如果您有长时间序列且节奏率较高,请尝试使用较短的时间段、时间采样或生成时间复合项。如果问题是空间性问题,请尝试使用随机子集。如果您在列表或数组中处理像素,请尝试使用稍大一点的比例或更小的区域。

由于代码编辑器的互动响应限制,长时间运行的计算可能会无法生成图表。如果您的图表请求超时,请尝试导出分析的中间步骤,然后根据导出的素材资源重新生成图表。