Skip to content

Commit

Permalink
update example for subclassing
Browse files Browse the repository at this point in the history
Signed-off-by: myscon <71620958+myscon@users.noreply.github.com>
  • Loading branch information
myscon committed Sep 5, 2024
1 parent 561cd3f commit 3fb18bb
Showing 1 changed file with 131 additions and 24 deletions.
155 changes: 131 additions & 24 deletions examples/basic_examples.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -146,8 +146,112 @@
},
{
"data": {
"text/html": [
"<div><style>:root {\n",
" --font-color-primary: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
" --font-color-secondary: var(--jp-content-font-color2, rgba(0, 0, 0, 0.6));\n",
" --font-color-accent: rgba(123, 31, 162, 1);\n",
" --border-color: var(--jp-border-color2, #e0e0e0);\n",
" --background-color: var(--jp-layout-color0, white);\n",
" --background-color-row-even: var(--jp-layout-color1, white);\n",
" --background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
"}\n",
"\n",
"html[theme=\"dark\"],\n",
"body[data-theme=\"dark\"],\n",
"body.vscode-dark {\n",
" --font-color-primary: rgba(255, 255, 255, 1);\n",
" --font-color-secondary: rgba(255, 255, 255, 0.6);\n",
" --font-color-accent: rgb(173, 132, 190);\n",
" --border-color: #2e2e2e;\n",
" --background-color: #111111;\n",
" --background-color-row-even: #111111;\n",
" --background-color-row-odd: #313131;\n",
"}\n",
"\n",
".ee {\n",
" padding: 1em;\n",
" line-height: 1.5em;\n",
" min-width: 300px;\n",
" max-width: 1200px;\n",
" overflow-y: scroll;\n",
" max-height: 600px;\n",
" border: 1px solid var(--border-color);\n",
" font-family: monospace;\n",
"}\n",
"\n",
".ee li {\n",
" list-style-type: none;\n",
"}\n",
"\n",
".ee ul {\n",
" padding-left: 1.5em !important;\n",
" margin: 0;\n",
"}\n",
"\n",
".ee > ul {\n",
" padding-left: 0 !important;\n",
"}\n",
"\n",
".ee-open,\n",
".ee-shut {\n",
" color: var(--font-color-secondary);\n",
" cursor: pointer;\n",
" margin: 0;\n",
"}\n",
"\n",
".ee-open:hover,\n",
".ee-shut:hover {\n",
" color: var(--font-color-primary);\n",
"}\n",
"\n",
".ee-k {\n",
" color: var(--font-color-accent);\n",
" margin-right: 6px;\n",
"}\n",
"\n",
".ee-v {\n",
" color: var(--font-color-primary);\n",
"}\n",
"\n",
".ee-toggle {\n",
" display: none;\n",
"}\n",
"\n",
".ee-shut + ul {\n",
" display: none;\n",
"}\n",
"\n",
".ee-open + ul {\n",
" display: block;\n",
"}\n",
"\n",
".ee-shut::before {\n",
" display: inline-block;\n",
" content: \"\";\n",
" margin-right: 6px;\n",
" transform: rotate(-90deg);\n",
" transition: transform 0.2s;\n",
"}\n",
"\n",
".ee-open::before {\n",
" transform: rotate(0deg);\n",
" display: inline-block;\n",
" content: \"\";\n",
" margin-right: 6px;\n",
" transition: transform 0.2s;\n",
"}\n",
"</style><div class='ee'><ul><li><label class='ee-shut'>Image (6 bands)<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>type:</span><span class='ee-v'>Image</span></li><li><label class='ee-shut'>bands: List (6 elements)<input type='checkbox' class='ee-toggle'></label><ul><li><label class='ee-shut'>0: \"LandTrendr\", double, EPSG:4326<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>id:</span><span class='ee-v'>LandTrendr</span></li><li><span class='ee-k'>crs:</span><span class='ee-v'>EPSG:4326</span></li><li><label class='ee-shut'>crs_transform: [1, 0, 0, 0, 1, 0]<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>0:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>1:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>2:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>3:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>4:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>5:</span><span class='ee-v'>0</span></li></ul></li><li><label class='ee-shut'>data_type: double<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>type:</span><span class='ee-v'>PixelType</span></li><li><span class='ee-k'>dimensions:</span><span class='ee-v'>2</span></li><li><span class='ee-k'>precision:</span><span class='ee-v'>double</span></li></ul></li></ul></li><li><label class='ee-shut'>1: \"ftv_tcb_fit\", double, EPSG:4326<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>id:</span><span class='ee-v'>ftv_tcb_fit</span></li><li><span class='ee-k'>crs:</span><span class='ee-v'>EPSG:4326</span></li><li><label class='ee-shut'>crs_transform: [1, 0, 0, 0, 1, 0]<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>0:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>1:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>2:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>3:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>4:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>5:</span><span class='ee-v'>0</span></li></ul></li><li><label class='ee-shut'>data_type: double<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>type:</span><span class='ee-v'>PixelType</span></li><li><span class='ee-k'>dimensions:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>precision:</span><span class='ee-v'>double</span></li></ul></li></ul></li><li><label class='ee-shut'>2: \"ftv_tcg_fit\", double, EPSG:4326<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>id:</span><span class='ee-v'>ftv_tcg_fit</span></li><li><span class='ee-k'>crs:</span><span class='ee-v'>EPSG:4326</span></li><li><label class='ee-shut'>crs_transform: [1, 0, 0, 0, 1, 0]<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>0:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>1:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>2:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>3:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>4:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>5:</span><span class='ee-v'>0</span></li></ul></li><li><label class='ee-shut'>data_type: double<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>type:</span><span class='ee-v'>PixelType</span></li><li><span class='ee-k'>dimensions:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>precision:</span><span class='ee-v'>double</span></li></ul></li></ul></li><li><label class='ee-shut'>3: \"ftv_tcw_fit\", double, EPSG:4326<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>id:</span><span class='ee-v'>ftv_tcw_fit</span></li><li><span class='ee-k'>crs:</span><span class='ee-v'>EPSG:4326</span></li><li><label class='ee-shut'>crs_transform: [1, 0, 0, 0, 1, 0]<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>0:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>1:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>2:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>3:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>4:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>5:</span><span class='ee-v'>0</span></li></ul></li><li><label class='ee-shut'>data_type: double<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>type:</span><span class='ee-v'>PixelType</span></li><li><span class='ee-k'>dimensions:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>precision:</span><span class='ee-v'>double</span></li></ul></li></ul></li><li><label class='ee-shut'>4: \"ftv_nbr_fit\", double, EPSG:4326<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>id:</span><span class='ee-v'>ftv_nbr_fit</span></li><li><span class='ee-k'>crs:</span><span class='ee-v'>EPSG:4326</span></li><li><label class='ee-shut'>crs_transform: [1, 0, 0, 0, 1, 0]<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>0:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>1:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>2:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>3:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>4:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>5:</span><span class='ee-v'>0</span></li></ul></li><li><label class='ee-shut'>data_type: double<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>type:</span><span class='ee-v'>PixelType</span></li><li><span class='ee-k'>dimensions:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>precision:</span><span class='ee-v'>double</span></li></ul></li></ul></li><li><label class='ee-shut'>5: \"rmse\", double, EPSG:4326<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>id:</span><span class='ee-v'>rmse</span></li><li><span class='ee-k'>crs:</span><span class='ee-v'>EPSG:4326</span></li><li><label class='ee-shut'>crs_transform: [1, 0, 0, 0, 1, 0]<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>0:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>1:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>2:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>3:</span><span class='ee-v'>0</span></li><li><span class='ee-k'>4:</span><span class='ee-v'>1</span></li><li><span class='ee-k'>5:</span><span class='ee-v'>0</span></li></ul></li><li><label class='ee-shut'>data_type: double<input type='checkbox' class='ee-toggle'></label><ul><li><span class='ee-k'>type:</span><span class='ee-v'>PixelType</span></li><li><span class='ee-k'>precision:</span><span class='ee-v'>double</span></li></ul></li></ul></li></ul></li></ul></li></ul></div><script>function toggleHeader() {\n",
" const parent = this.parentElement;\n",
" parent.className = parent.className === \"ee-open\" ? \"ee-shut\" : \"ee-open\";\n",
"}\n",
"\n",
"for (let c of document.getElementsByClassName(\"ee-toggle\")) {\n",
" c.onclick = toggleHeader;\n",
"}</script></div>"
],
"text/plain": [
"<ltgee.landtrendr.LandTrendr at 0x22e84b4acf0>"
"<ltgee.landtrendr.LandTrendr at 0x1f4a641acf0>"
]
},
"execution_count": 3,
Expand Down Expand Up @@ -204,9 +308,9 @@
{
"data": {
"text/plain": [
"(<ltgee.landtrendr.LandsatComposite at 0x22e84738140>,\n",
" <ltgee.landtrendr.LtCollection at 0x22effa16330>,\n",
" <ee.imagecollection.ImageCollection at 0x22e84b4de20>)"
"(<ltgee.landtrendr.LandsatComposite at 0x1f4a657d4c0>,\n",
" <ltgee.landtrendr.LtCollection at 0x1f4a6419700>,\n",
" <ee.imagecollection.ImageCollection at 0x1f4a679dd90>)"
]
},
"execution_count": 4,
Expand Down Expand Up @@ -260,16 +364,19 @@
"output_type": "display_data"
},
{
"ename": "AttributeError",
"evalue": "LandTrendr object has not been initialized. Please run the 'run' method.",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[1;32mIn[5], line 3\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;66;03m# Example 1: Displaying images from Landtrendr\u001b[39;00m\n\u001b[1;32m----> 3\u001b[0m lt_tcb \u001b[38;5;241m=\u001b[39m \u001b[43mlt\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mselect\u001b[49m(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mftv_nbr_fit\u001b[39m\u001b[38;5;124m'\u001b[39m)\u001b[38;5;241m.\u001b[39mclip(composite_params[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124marea_of_interest\u001b[39m\u001b[38;5;124m'\u001b[39m])\n\u001b[0;32m 4\u001b[0m \u001b[38;5;28mmap\u001b[39m \u001b[38;5;241m=\u001b[39m geemap\u001b[38;5;241m.\u001b[39mMap()\n\u001b[0;32m 5\u001b[0m \u001b[38;5;28mmap\u001b[39m\u001b[38;5;241m.\u001b[39mcenterObject(composite_params[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124marea_of_interest\u001b[39m\u001b[38;5;124m'\u001b[39m], \u001b[38;5;241m13\u001b[39m)\n",
"File \u001b[1;32m~\\lt-gee-py\\src\\ltgee\\landtrendr.py:603\u001b[0m, in \u001b[0;36mLandTrendr.__getattribute__\u001b[1;34m(self, name)\u001b[0m\n\u001b[0;32m 601\u001b[0m \u001b[38;5;66;03m# 'initilize' is the run method of ee.Image\u001b[39;00m\n\u001b[0;32m 602\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mcallable\u001b[39m(attr) \u001b[38;5;129;01mand\u001b[39;00m name \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;129;01min\u001b[39;00m [\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mrun\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124minitialize\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39minitialized:\n\u001b[1;32m--> 603\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mAttributeError\u001b[39;00m(\n\u001b[0;32m 604\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mLandTrendr object has not been initialized. Please run the \u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mrun\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m method.\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m 605\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m 606\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m attr\n",
"\u001b[1;31mAttributeError\u001b[0m: LandTrendr object has not been initialized. Please run the 'run' method."
]
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "6d931b8020b741b0bf4d1a31b80cf5b9",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"Map(center=[44.661026124368775, -122.31983825467653], controls=(WidgetControl(options=['position', 'transparen…"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
Expand All @@ -285,7 +392,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 6,
"id": "f526c669-6e92-4314-a2c0-30f00e731307",
"metadata": {
"scrolled": true
Expand Down Expand Up @@ -328,7 +435,7 @@
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "fe7799d5b0944301bf4ac468914cd24f",
"model_id": "f4273ab5c9584a98b1ac596b2b92be98",
"version_major": 2,
"version_minor": 0
},
Expand Down Expand Up @@ -356,7 +463,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 7,
"id": "12caa989-73dd-4e4f-a6d6-d5dcf8b6e18c",
"metadata": {},
"outputs": [
Expand Down Expand Up @@ -397,7 +504,7 @@
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "5309a8a6454745f788361fbb2612bb27",
"model_id": "d58c8355b8e846dfbd0a06c349560019",
"version_major": 2,
"version_minor": 0
},
Expand Down Expand Up @@ -448,7 +555,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 8,
"id": "92f250c9-d408-440f-a0f1-67e23c002a5e",
"metadata": {},
"outputs": [
Expand Down Expand Up @@ -489,7 +596,7 @@
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "02fc5917e7a0431d875987cc60c3756d",
"model_id": "53c5933f42dd4facb423a94b7ce535e2",
"version_major": 2,
"version_minor": 0
},
Expand All @@ -516,7 +623,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 9,
"id": "af16e2e6-8944-41d4-8f75-1d4fc2a90b43",
"metadata": {
"scrolled": true
Expand Down Expand Up @@ -559,7 +666,7 @@
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "fc89f72da6f94202b5aa65522efc1a8b",
"model_id": "fd231916a1a74ebba0973cc5efa97c3d",
"version_major": 2,
"version_minor": 0
},
Expand Down Expand Up @@ -591,7 +698,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 10,
"id": "77fda100-3cab-4c86-966f-6d1e622f47cd",
"metadata": {},
"outputs": [
Expand Down Expand Up @@ -632,7 +739,7 @@
{
"data": {
"text/plain": [
"'https://earthengine.googleapis.com/v1/projects/ee-myscon/videoThumbnails/400bac2ade6e169c6244a37d1fd69804-f5186f13751890705f7968fa04d8939c:getPixels'"
"'https://earthengine.googleapis.com/v1/projects/ee-myscon/videoThumbnails/400bac2ade6e169c6244a37d1fd69804-a03323e1aae7fa99a2b3138a8257c0b3:getPixels'"
]
},
"execution_count": 10,
Expand Down

0 comments on commit 3fb18bb

Please sign in to comment.