公告:所有在
2025 年 4 月 15 日之前注册使用 Earth Engine 的非商业项目都必须
验证是否符合非商业性质的资格条件,才能继续使用 Earth Engine。
ee.Number.toByte
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
将输入值强制转换为无符号 8 位整数。
示例
代码编辑器 (JavaScript)
// Cast a number to unsigned 8-bit integer: [0, 255].
var number = ee.Number(100);
print('Number:', number);
var byteNumber = number.toByte();
print('Number cast to byte:', byteNumber);
/**
* Casting numbers to byte that are outside of its range and precision can
* modify the resulting value, note the behavior of the following scenarios.
*/
// A floating point number cast to byte loses decimal precision.
var float = ee.Number(1.7);
print('Floating point value:', float);
var floatToByte = float.toByte();
print('Floating point value cast to byte:', floatToByte);
// A number greater than byte range max cast to byte becomes byte range max.
var BYTE_MAX = 255;
var outOfRangeHi = ee.Number(BYTE_MAX + 12345);
print('Greater than byte max:', outOfRangeHi);
var outOfRangeHiToByte = outOfRangeHi.toByte();
print('Greater than byte max cast to byte becomes byte max:', outOfRangeHiToByte);
// A number greater than byte range min cast to byte becomes byte range min.
var BYTE_MIN = 0;
var outOfRangeLo = ee.Number(BYTE_MIN - 12345);
print('Less than byte min:', outOfRangeLo);
var outOfRangeLoToByte = outOfRangeLo.toByte();
print('Less than byte min cast to byte becomes byte min:', outOfRangeLoToByte);
Python 设置
如需了解 Python API 和如何使用 geemap
进行交互式开发,请参阅
Python 环境页面。
import ee
import geemap.core as geemap
Colab (Python)
# Cast a number to unsigned 8-bit integer: [0, 255].
number = ee.Number(100)
print('Number:', number.getInfo())
byte_number = number.toByte()
print('Number cast to byte:', byte_number.getInfo())
"""Casting numbers to byte that are outside of its range and precision can
modify the resulting value, note the behavior of the following scenarios.
"""
# A floating point number cast to byte loses decimal precision.
float_number = ee.Number(1.7)
print('Floating point value:', float_number.getInfo())
float_to_byte = float_number.toByte()
print('Floating point value cast to byte:', float_to_byte.getInfo())
# A number greater than byte range max cast to byte becomes byte range max.
BYTE_MAX = 255
out_of_range_hi = ee.Number(BYTE_MAX + 12345)
print('Greater than byte max:', out_of_range_hi.getInfo())
out_of_range_hi_to_byte = out_of_range_hi.toByte()
print('Greater than byte max cast to byte becomes byte max:',
out_of_range_hi_to_byte.getInfo())
# A number greater than byte range min cast to byte becomes byte range min.
BYTE_MIN = 0
out_of_range_lo = ee.Number(BYTE_MIN - 12345)
print('Less than byte min:', out_of_range_lo.getInfo())
out_of_range_lo_to_byte = out_of_range_lo.toByte()
print('Less than byte min cast to byte becomes byte min:',
out_of_range_lo_to_byte.getInfo())
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-26。
[null,null,["最后更新时间 (UTC):2025-07-26。"],[[["\u003cp\u003e\u003ccode\u003eNumber.toByte()\u003c/code\u003e casts a given Earth Engine \u003ccode\u003eNumber\u003c/code\u003e to an unsigned 8-bit integer, representing values within the range of 0 to 255.\u003c/p\u003e\n"],["\u003cp\u003eWhen casting floating-point numbers, the decimal precision is lost, resulting in the nearest integer value within the byte range.\u003c/p\u003e\n"],["\u003cp\u003eInput values exceeding the maximum byte value (255) are converted to 255, while values below the minimum (0) are converted to 0.\u003c/p\u003e\n"],["\u003cp\u003eThis function is useful for ensuring data is stored in a compact 8-bit format, which can be beneficial for memory management and data transfer efficiency.\u003c/p\u003e\n"]]],["The `toByte()` method casts a number to an unsigned 8-bit integer, ranging from 0 to 255. Floating-point numbers lose their decimal precision. Numbers exceeding the maximum byte range (255) are set to 255, while numbers below the minimum (0) are set to 0. This method takes an input number and returns it as an 8-bit number.\n"],null,["# ee.Number.toByte\n\nCasts the input value to an unsigned 8-bit integer.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|-------------------|---------|\n| Number.toByte`()` | Number |\n\n| Argument | Type | Details |\n|---------------|--------|------------------|\n| this: `input` | Number | The input value. |\n\nExamples\n--------\n\n### Code Editor (JavaScript)\n\n```javascript\n// Cast a number to unsigned 8-bit integer: [0, 255].\nvar number = ee.Number(100);\nprint('Number:', number);\n\nvar byteNumber = number.toByte();\nprint('Number cast to byte:', byteNumber);\n\n\n/**\n * Casting numbers to byte that are outside of its range and precision can\n * modify the resulting value, note the behavior of the following scenarios.\n */\n\n// A floating point number cast to byte loses decimal precision.\nvar float = ee.Number(1.7);\nprint('Floating point value:', float);\n\nvar floatToByte = float.toByte();\nprint('Floating point value cast to byte:', floatToByte);\n\n// A number greater than byte range max cast to byte becomes byte range max.\nvar BYTE_MAX = 255;\nvar outOfRangeHi = ee.Number(BYTE_MAX + 12345);\nprint('Greater than byte max:', outOfRangeHi);\n\nvar outOfRangeHiToByte = outOfRangeHi.toByte();\nprint('Greater than byte max cast to byte becomes byte max:', outOfRangeHiToByte);\n\n// A number greater than byte range min cast to byte becomes byte range min.\nvar BYTE_MIN = 0;\nvar outOfRangeLo = ee.Number(BYTE_MIN - 12345);\nprint('Less than byte min:', outOfRangeLo);\n\nvar outOfRangeLoToByte = outOfRangeLo.toByte();\nprint('Less than byte min cast to byte becomes byte min:', outOfRangeLoToByte);\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\n# Cast a number to unsigned 8-bit integer: [0, 255].\nnumber = ee.Number(100)\nprint('Number:', number.getInfo())\n\nbyte_number = number.toByte()\nprint('Number cast to byte:', byte_number.getInfo())\n\n\n\"\"\"Casting numbers to byte that are outside of its range and precision can\nmodify the resulting value, note the behavior of the following scenarios.\n\"\"\"\n\n# A floating point number cast to byte loses decimal precision.\nfloat_number = ee.Number(1.7)\nprint('Floating point value:', float_number.getInfo())\n\nfloat_to_byte = float_number.toByte()\nprint('Floating point value cast to byte:', float_to_byte.getInfo())\n\n# A number greater than byte range max cast to byte becomes byte range max.\nBYTE_MAX = 255\nout_of_range_hi = ee.Number(BYTE_MAX + 12345)\nprint('Greater than byte max:', out_of_range_hi.getInfo())\n\nout_of_range_hi_to_byte = out_of_range_hi.toByte()\nprint('Greater than byte max cast to byte becomes byte max:',\n out_of_range_hi_to_byte.getInfo())\n\n# A number greater than byte range min cast to byte becomes byte range min.\nBYTE_MIN = 0\nout_of_range_lo = ee.Number(BYTE_MIN - 12345)\nprint('Less than byte min:', out_of_range_lo.getInfo())\n\nout_of_range_lo_to_byte = out_of_range_lo.toByte()\nprint('Less than byte min cast to byte becomes byte min:',\n out_of_range_lo_to_byte.getInfo())\n```"]]