Announcement: All noncommercial projects registered to use Earth Engine before April 15, 2025 must verify noncommercial eligibility to maintain Earth Engine access.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-09-19 UTC."],[[["\u003cp\u003eCalculates the arccosine (inverse cosine) of each element in an input array.\u003c/p\u003e\n"],["\u003cp\u003eReturns a new array containing the arccosine values in radians.\u003c/p\u003e\n"],["\u003cp\u003eAccepts an array as input and operates on each element independently.\u003c/p\u003e\n"],["\u003cp\u003eProvides examples in JavaScript, Python, and Colab to demonstrate usage and visualization.\u003c/p\u003e\n"]]],["The `Array.acos()` function computes the arccosine (in radians) of each element within an input array. It accepts an array as input and returns a new array containing the arccosine values. Examples demonstrate its use with -1, 0, and 1, resulting in outputs of π, π/2, and 0 respectively. The examples also showcase plotting the function, with `x` values between -1 and 1 and corresponding `acos(x)` outputs.\n"],null,["On an element-wise basis, computes the arccosine in radians of the input.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|----------------|---------|\n| Array.acos`()` | Array |\n\n| Argument | Type | Details |\n|---------------|-------|------------------|\n| this: `input` | Array | The input array. |\n\nExamples\n\nCode Editor (JavaScript) \n\n```javascript\nprint(ee.Array([-1]).acos()); // [π]\nprint(ee.Array([0]).acos()); // [π/2]\nprint(ee.Array([1]).acos()); // [0]\n\nvar start = -1;\nvar end = 1;\nvar points = ee.Array(ee.List.sequence(start, end, null, 50));\nvar values = points.acos();\n\n// Plot acos() defined above.\nvar chart = ui.Chart.array.values(values, 0, points)\n .setOptions({\n viewWindow: {min: start, max: end},\n hAxis: {\n title: 'x',\n viewWindowMode: 'maximized',\n ticks: [\n {v: start, f: start},\n {v: 0, f: 0},\n {v: end, f: end}]\n },\n vAxis: {\n title: 'acos(x)',\n ticks: [\n {v: 0, f: 0},\n {v: Math.PI / 2, f: 'π/2'},\n {v: Math.PI, f: 'π'}]\n },\n lineWidth: 1,\n pointSize: 0,\n });\nprint(chart);\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\nColab (Python) \n\n```python\nimport math\nimport altair as alt\nimport pandas as pd\n\ndisplay(ee.Array([-1]).acos()) # [π]\ndisplay(ee.Array([0]).acos()) # [π/2]\ndisplay(ee.Array([1]).acos()) # [0]\n\nstart = -1\nend = 1\npoints = ee.Array(ee.List.sequence(start, end, None, 50))\nvalues = points.acos()\n\ndf = pd.DataFrame({'x': points.getInfo(), 'acos(x)': values.getInfo()})\n\n# Plot acos() defined above.\nalt.Chart(df).mark_line().encode(\n x=alt.X('x', axis=alt.Axis(values=[start, 0, end])),\n y=alt.Y('acos(x)', axis=alt.Axis(values=[0, math.pi / 2, math.pi]))\n)\n```"]]