{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Summary of the Geolocation Bias Corrections\n", "\n", "+ Distribution of the range delay time series using `boxenplot`\n", "+ Overall RMSE in Table\n", "\n", "Link: https://seaborn.pydata.org/generated/seaborn.boxenplot.html" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Go to directory: /Users/yunjunz/Papers/2021_Geolocation/figs_src/stats\n" ] } ], "source": [ "%matplotlib inline\n", "import os\n", "import h5py\n", "import numpy as np\n", "import seaborn as sns\n", "import pandas as pd\n", "from matplotlib import pyplot as plt, ticker, patches\n", "from mintpy.objects import timeseries, sensor\n", "from mintpy.utils import ptime, readfile, utils as ut\n", "from mintpy.simulation import iono\n", "from mintpy import add\n", "from ipynb.fs.full import utils\n", "plt.rcParams.update({'font.size': 12})\n", "\n", "work_dir = os.path.expanduser('~/Papers/2022_Geolocation/figs_src/stats')\n", "os.chdir(work_dir)\n", "print('Go to directory:', work_dir)\n", "\n", "proj_dirs = [os.path.expanduser('~/data/geolocation/ChileSenAT149/mintpy_offset'),\n", " os.path.expanduser('~/data/geolocation/ChileSenDT156/mintpy_offset'),\n", " os.path.expanduser('~/data/geolocation/KyushuAlos2DT23/mintpy_offset')]\n", "\n", "tec_dir = os.path.expanduser('~/data/aux/IGS_TEC')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Table II - Summary of Geolocation Bias Corrections" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ChileSenAT149: RMSE / MAX\n", " SAR - S1Bias : 18.3 / 61 cm\n", " SAR - S1Bias - TECjhr : 8.0 / 20 cm\n", " SAR - S1Bias - TECjhr - SET : 5.8 / 19 cm\n", " SAR - S1Bias - TECjhr - SET - ERA5 : 6.4 / 23 cm\n", "ChileSenDT156: RMSE / MAX\n", " SAR - S1Bias : 7.1 / 21 cm\n", " SAR - S1Bias - TECjhr : 7.4 / 25 cm\n", " SAR - S1Bias - TECjhr - SET : 6.1 / 28 cm\n", " SAR - S1Bias - TECjhr - SET - ERA5 : 5.7 / 25 cm\n", "KyushuAlos2DT23: RMSE / MAX\n", " SAR : 265.9 / 1108 cm\n", " SAR - TECjhr : 57.1 / 161 cm\n", " SAR - TECjhr - SET : 55.6 / 169 cm\n", " SAR - TECjhr - SET - ERA5 : 55.7 / 164 cm\n" ] } ], "source": [ "# prep data for box plot\n", "proj_names = []\n", "df_list = []\n", "for proj_dir in proj_dirs:\n", " suffix = '' if 'Alos2' in proj_dir else '_S1Bias'\n", " fnames = [os.path.join(proj_dir, f'timeseriesRg{suffix}.h5'),\n", " os.path.join(proj_dir, f'timeseriesRg{suffix}_TECjhr.h5'),\n", " os.path.join(proj_dir, f'timeseriesRg{suffix}_TECjhr_SET.h5'),\n", " os.path.join(proj_dir, f'timeseriesRg{suffix}_TECjhr_SET_ERA5.h5')]\n", " proj_name, dDict = utils.read_ts_files(fnames, print_msg=True)[:2]\n", " proj_names.append(proj_name)\n", " df_list.append(pd.DataFrame(dDict))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Figure 15 - Summary of Geolocation Bias Corrections" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "save figure to file /Users/yunjunz/Papers/2021_Geolocation/figs_src/stats/box_stats.pdf\n" ] }, { "data": { "image/png": "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nz+fJk2aEBgYSPfu3Tlx4oR1mDGGOXPm0LBhQwIDAxk9ejQiwsGDB3niiSfYsWMHPj4+BAQEALl/leccbp0xYwY1atSgZs2aLFiwwDrtq1evMnHiROrWrUtoaChPPPEEqampdi3XLbfcwsiRI2na1L5XKY8dO5bw8HD8/Pxo1apVrscN79q1i6ioKPz8/AgNDeXZZ5+1DsvZ+w0ICCA8PJyFCxfaNT9XpflgsXHjRho3boy/vz9PP/00IpJreEHrQEQYP348NWrUwN/fnxYtWrBv3z4AUlNTmTBhAhEREfj7+9OhQwe7468oFi9eTJs2bRg+fDiLFi2ya5y33noLHx8f5s2bR1hYGF5eXgwaNIjJkyczYcIERITo6Gjq16/PPffcgzEGX19fHnroIerWrZvvNO+8805GjhxJUFAQVapUYfz48Rw+fJjz58/n2/78+fP07dsXPz8/7rzzTn755Zdcww8dOkS3bt0ICgrilltuYcWKFdZh69ev59Zbb8XX15fatWvzj3/8wzrM9ihEZGQkX31V4jfGOoUWeidr1KgRHh4eDBs2jC+//JKLFy/mGr527Vpef/11Vq9eTXx8PHfffTeDBg3K1eaLL75g9+7d7N27lxUrVvD111/TpEkT5syZQ9u2bUlJSSExMTHf+cfFxZGUlERsbCzz5s1j9OjR1hgmTZpETEwM0dHRHD16lNjYWKZMmVIq66F169ZER0dz4cIFBg8ezIABA0hLSwMsPwLGjh1LcnIyv/zyCwMHDgTg5MmT9OzZk2eeeYb4+Hiio6Np2bJlqcRXVjQfLG+KfOihh3jttddISEggMjKS7777zq51sGHDBr799ltiYmJITEzkk08+oXr16gBMnDiRH3/8ke+//54LFy7w97//vcA9yopq8eLFDBkyhCFDhvD1119z9uzZIsfZuHEjDz300HXrcuDAgZw8eZKYmBjuuOMODh06xPjx49m8eTMpKSnFiuvbb78lLCzMui3zGj16NJ6envz222/Mnz+f+fPnW4ddvnyZbt26MXjwYM6dO8eyZct46qmn2L9/PwAjR47k/fff59KlS+zbt4+uXbsClh2MoUOHMn36dBITE/n222+pV69eseJ2GSLi9l2rVq3kRk2cOFG6d+8uEydOvOFpFOXAgQMybNgwqV27tnh4eEifPn0kLi5ORER69OghH374obXttWvXxMvLS44fPy4iIoBs27bNOnzAgAHyxhtviIjIggULpH379rnmNWzYMJk8ebKIiGzevFk8PT0lIyPDOjwkJER27NghWVlZctNNN8nRo0etw77//nupV6+eddzatWsXuWxHjhwRS5oVT0BAgERHR4uIyN133y0vv/yyxMfH52rz+uuvy4MPPljsaecA9oiD88URKno+LFq0SO666y7r96ysLKldu7Z88MEHRa6DTZs2ScOGDWXHjh1y7dq1XG08PT2tOXUjSiNfyuLvi722bdsmlStXtv4/u+WWW2TmzJnW4ba5YisyMlJmz559Xf/U1FQBZPv27SIismPHDhkwYIAEBwdLtWrVZNiwYXLp0qUi4zp16pTUqlVLli5dmu/wzMxMqVy5shw8eNDa7/nnn7fm+vLly6VDhw65xhk1apS8+uqrIiISHh4uc+bMkaSkpOvajBs3rsj48lNQrjir05+zLqBJkyYsXLiQ06dPs2/fPs6cOcO4ceMAOHHiBGPHjiUgIICAgACCgoIQEWJjY63jh4WFWT/fdNNNxfq1XL16dSpX/v2VBznjx8fHc+XKFVq1amWdd48ePYiPj79uGkuWLMHHxwcfHx969ux5A2sAZsyYQZMmTfD39ycgIICkpCQSEiyvdJ43bx4xMTE0btyY1q1bWy/yOXXqFJGRkTc0P1dW0fPhzJkzhIeHW78bY3J9L2wddO3alaeffprRo0cTGhrKqFGjSE5OJiEhgbS0NLfMF0dZtGgR9913H8HBwQAMHjzYrsP3wcHB/Pbbb9f1z+mXM702bdqwYsUK4uPj2bZtG99++y3Tpk0DsOaLj48PJ0/+/sre+Ph47rvvPp566qnrjlzZtsnMzMyVIxEREdbPJ06cYOfOndZ8CQgIYMmSJcTFxQGwatUq1q9fT0REBJ06dWLHjh2Ae/190ULvYho3bszw4cOt5xXDw8N5//33SUxMtHapqam0a9euyGmV5Orm4OBgvLy82L9/v3W+SUlJ+RaNIUOGkJKSQkpKCl9++WWx57Vt2zbefPNNVqxYwcWLF0lMTMTf3996XrZhw4YsW7aMc+fOMWnSJP7whz9w+fJlwsPDrzsX524qYj7UrFmTU6dOWb+LSK7vRa2DMWPG8OOPP7J//35iYmKYPn06wcHBeHp6un2+3KjU1FRWrFjB1q1bCQsLIywsjLfeeou9e/eyd2/hb0m99957WbVqFVlZWbn6r1ixgvDwcBo1anTdOK1bt6Z///7WvM7Jl5SUFOt5+4sXL3LffffRt29fJk+eXOD8Q0JCqFy5cq4csf2xEB4eTqdOnXLlS0pKCrNnz7bG8tlnn3Hu3DkefPBB66lBd/r7ooXeyQ4dOsSMGTM4ffo0YPkVuWzZMtq0aQNY7nN+4403rOeTkpKS+PTTT+2admhoKKdPnyY9Pb3YcVWqVInHH3+c8ePHc+7cOQBiY2P5+uuv7RpfREhLS7POOy0t7brbdXJcunSJypUrExISQmZmJlOmTCE5Odk6/OOPPyY+Pp5KlSpZLyLz8PBgyJAhfPPNN6xYsYLMzEzOnz9PdHR0sZfVlWg+WG5t3b9/P6tXryYzM5N33nnHuvcFha+D3bt3s3PnTjIyMvD29sbT0xMPDw8qVarEY489xrPPPsuZM2e4du0aO3bsKDCGimbt2rV4eHhw4MABoqOjiY6O5uDBg9x9990sXrzY2u7atWukpaVZu/T0dMaPH09ycjIjR44kLi6OtLQ0li1bxrRp05g+fTrGGLZv384HH3xgzZ1Dhw6xbt06a17nlZycTPfu3Wnfvj1/+9vfCo3dw8OD/v378+qrr3LlyhUOHDiQ60jE/fffT0xMDB999BEZGRlkZGSwe/duDh48SHp6OkuWLCEpKYkqVarg5+dnvdtq5MiRLFiwgE2bNpGVlUVsbCyHDh0q6ap2Ci30Tubr68vOnTu566678Pb2pk2bNjRr1owZM2YA0K9fPyZNmsQjjzyCn58fzZo1s3svqWvXrjRt2pSwsDDr4bPiePPNN7n55ptp06YNfn5+3HvvvXbfy3rixAm8vLysV1l7eXlxyy235Nu2e/fu9OzZk0aNGhEREYGnp2euw3BfffUVTZs2xcfHh7Fjx7J8+XI8PT2pW7cu69evZ8aMGQQFBdGyZcsi9z5cneaD5ejBp59+ynPPPUf16tU5cuQI7du3tw4vbB0kJyfz+OOPExgYSEREBNWrV2fixIkA/OMf/6B58+a0bt2aoKAgJk2adN1eaEW1aNEiRowYQd26da179GFhYTz99NMsWbKEzMxMAP72t7/h5eVl7bp27Ur16tXZvn07aWlp3HrrrVSvXp2ZM2fy0Ucf8fDDDwMQEBDAunXraN68OT4+PvTo0YN+/frxl7/8Jd941qxZw+7du1mwYEGBh/VtzZo1i5SUFMLCwhg+fDgjRoywDvP19WXDhg0sX76cWrVqERYWxqRJk6w/8j766CPq1auHn58fc+bM4eOPPwYsV/4vWLCA8ePH4+/vT6dOnXLd4VKemJzDo+4sKipK9uzZc0Pj/vnPf+bnn3+mefPmTJ8+3cGRKWcyxvwoIlF5+5ckX5T7Ko180b8v7qmgXHEW3aNXSiml3JgWeqWUUsqNVS66ScXWpUuXXP8qpZRS5YkW+iL06tWLXr16OTsMpZRS6obooXullFLKjWmhV0oppdyYFnqllFLKjWmhV0oppdyYFnqllFLKjWmhV0oppdyYFnqllFLKjWmhV0oppdyYFnqllFLKjWmhLwP16tXDy8sLHx8f62sUU1JSrMOHDx+OMYZ169blGm/cuHEYY1i4cCEA6enpTJgwgTp16uDj40P9+vUZP358vvPJ6Z5++mmHLouIMGnSJKpXr0716tX5y1/+QmFvQNy0aRONGzfmpptuokuXLte95vG///0vHTt2xMfHh9DQUP75z386NN7ySPNF86U4Kmq+HD9+HGNMrnimTp2aq43mSzYRcfuuVatW4kwRERGyceNGERH57bffpEWLFvLCCy9Yhw8bNkwaNWok/fv3t/bLyMiQWrVqSWRkpCxYsEBERF599VXp2LGjxMbGSlZWlvz666+yaNGifOdTWubMmSONGjWSU6dOyenTp6VJkyYye/bsfNvGx8eLn5+frFixQlJTU2XixIly11135RoeEhIiH3/8saSlpUlycrIcOHCgVOO3BewRzZdSXRbNl8JNnDhRunfvLhMnTrzhaVTUfPn1118FkIyMjHyHOzNfCsoVZ3W6R1/GwsLC6N69O9HR0bn69+nTh++++46LFy8C8NVXX9GiRQvCwsKsbXbv3k2/fv2oVasWxhjq1avH0KFDyzJ8Fi1aZP3VX7t2bSZMmGDdI8hr9erVNG3alAEDBuDp6cmrr77K3r17OXToEAAzZ86ke/fuDBkyhGrVquHr60uTJk3ynVbOr/cFCxYQHh5OYGAgc+bMYffu3bRo0YKAgACH7124As0XzZfiqEj5UhTNl99poS9jp0+f5ssvv+Tmm2/O1d/T05O+ffuyfPlyABYvXnzdf7I2bdowc+ZM3nvvPX7++edCD4EWZenSpQQEBBTYnTx5Mt/x9u/fz2233Wb9ftttt7F//3672np7exMZGWlt/8MPPxAUFES7du2oUaMGffr0KXC+OXbu3MmRI0f45JNPGDduHNOmTeObb75h//79rFixgq1btxZ3Vbg0zRfNl+KoSPmSIyIigjp16jBixAgSEhKs/TVfbDj7kEJZdK5wKNbb21t8fHwEkK5du8rFixetw4cNGyaTJ0+Wbdu2SZs2bSQxMVFq1KghV65ckfbt21sPrWVmZsqsWbOkXbt2UrVqValZs6YsXLjwuvn4+/tbu7lz5zp0WSpVqiQHDx60fo+JiRFAsrKyrmv72GOPyaRJk3L1a9eunXV5GjZsKP7+/rJr1y5JTU2VZ555Rtq1a5fvfHMO050+fdraLygoSJYvX2793r9/f3nrrbfsXhZc+NC95ouFu+eLow7dV8R8uXTpkuzevVsyMjIkLi5OHnroIbnvvvusw52ZLwXlirM63aMvI2vXruXSpUts2bKFQ4cO5frlmaNDhw7Ex8fz2muvcf/99+Pl5ZVruIeHB6NHj+a7774jMTGRyZMn89hjj3Hw4MFc80lMTLR2jz/+uEOXw8fHh+TkZOv35ORkfHx8MMYU2Tanva+vLwBeXl7069eP1q1b4+npySuvvML3339PUlJSgfMPDQ21fvby8rruu+1FSOWZ5svv7TVfilZR8yUqKorKlSsTGhrKrFmz2LBhg3V8zZffaaEvY506dWL48OFMnDgx3+F//OMfmTFjRpHnxry8vBg9ejSBgYEcOHCg2HEsWbIk19WqebuCDnE1bdqUvXv3Wr/v3buXpk2b2tX28uXL/PLLL9b2LVq0yPUfOOezlOCQobvRfNF8KY6KlC955c0HzZffaaG3w9WrV/ntt98cNr1x48axcePG6y6YARgzZgwbN26kY8eO1w17++232bJlC6mpqWRmZrJo0SIuXbrE7bffXuwYhgwZQkpKSoFd3bp18x1v6NChzJw5k9jYWM6cOcOMGTMYPnx4vm379evHvn37WLVqFWlpaUyZMoUWLVrQuHFjAEaMGMGaNWuIjo4mIyODqVOn0qFDBwICAoq9PO5M80XzpTgqSr7s3LmTw4cPk5WVxfnz5xkzZgydO3fG398f0HyxpYXeDkOHDiUiIoJjx445ZHohISEMHTr0uns+AYKCgrjnnnvyPVTl5eXFhAkTCAsLIzg4mHfffZdVq1bRoEEDa5s+ffrk+uXcr18/h8Sc409/+hN9+vShefPmNGvWjN69e/OnP/3JOrxp06YsWbLEupyrVq1i8uTJBAYGsnPnTuvFQABdu3bl9ddfp3fv3tSoUYOjR4+ydOlSh8brDjRfLDRf7FNR8uXYsWP06NEDX19fmjVrRrVq1Vi2bJm1rebL70xFOIwRFRUle/bsueHx33nnHT777DNWr15t/bWoyj9jzI8iEpW3f0nzRbmn0siXP//5z/z88880b96c6dOnlzhG5RoKyhU7xnsaGA40B5aJyPA8w+8B3gXqAjuB4SJygiLoHr0dxowZw6ZNm7TIK6WUKk1ngNeA+XkHGGOCgdXAS0AQsAf4xJ6JVnZggEoppZS6QSKyGsAYEwXUyTO4P7BfRD7NbvMqkGCMaSwihwqbru7RK6WUUq6vKWC9JUFELgO/ZPcvlBZ6pZRSqoTmzp1LVFQUUVFRAMGlMAsfIO9DAJIA36JG1EKvlFJKldCoUaPYs2cP2RdmXvfEImPMFmOMFNBtt2MWKYBfnn5+wKWiRtRCr5RSThQXF8esWbPYvHmzs0NRpUhEOouIKaDrYMck9gPWFwEYY7yByOz+hdJCr5RSTpSVlUV6ejrp6enODkU5mTGmsjHGE/AAPIwxnsaYnIvm1wDNjDEPZbd5GfipqAvxQAu9Uko5Va1atRg/fjzdu3d3dijK+V4EUoHngD9mf34RQETigYeAacBF4C7gEXsmqrfXKaWUk+X3pDpV8YjIq8CrhQz/Bmhc3OnqHr1SSinlxrTQK6WUUm5MC71SSinlxvQcvVJKOUmXLl1y/atUadA9ehdQr149qlatSkJC7mcstGzZEmMMx48fd05g+di0aRONGzfmpptuokuXLpw4kf+Lk65evcrIkSOJiIjA19eX22+/nS+//NI6/MCBA0RFRREYGEhgYCD33nsvBw4cKKvFKNcqYr4cP34cY0yuV6Tm9xrW8qZXr15Mnz6dXr16ldo8yku+pKen84c//IF69ephjGHLli1FjrN8+XKaNGmCt7c3kZGRbNu27bo2f/3rXzHG8M0335RC1OWDFnoXUb9+/VzvUv75559JTU11YkTXS0hIoH///kydOpULFy4QFRXFww8/nG/bzMxMwsPD2bp1K0lJSUydOpWBAwda/6jUqlWLlStXcuHCBRISEujbty+PPGLXnSKKipcvORITE0lJSSElJYWXXnqpDJbCPZSHfAHo0KEDH3/8MWFhYUW23bhxI5MmTWLBggVcunSJb7/9lgYNGuRq88svv7By5Upq1qxZWiGXDyLi9l2rVq3ElUVERMjUqVMlKirK2m/ChAny2muvCSC//vqriIh88cUX0rJlS/H19ZU6derIK6+8Ym2/fPlyqV+/viQlJYmIyPr16yU0NFTOnTvnsDjff/99adu2rfV7SkqKeHp6ysGDB+0av3nz5rJy5crr+mdkZMisWbPEy8urwHE7deokkydPlrZt24q3t7fcf//9kpCQIIMHDxZfX1+Jioqyrid7AXtE80VEXD9ffv31VwEkIyPDrnE1X35XXvLFVu3atWXz5s2Ftmnbtq18+OGHhbbp0aOH/Pvf/5aIiAjZuHFjge0cnS8F5YqzOqcHUBZdefiPuHHjRmnUqJEcOHBAMjMzpU6dOnL8+PFc/xE3b94sP/30k1y7dk327t0rNWrUkDVr1linM3jwYBk2bJgkJCRIzZo15fPPPy9wnv7+/gV2b7zxRr7jjBkzRp544olc/Zo2bZpv8c4rLi5OqlWrdt0feX9/f/Hw8BBjjEydOrXA8Tt16iSRkZFy9OhRSUxMlCZNmkjDhg1l48aNkpGRIY8++qgMHz68yDhslec/3BUtX3IKfa1ataR27doyfPhwiY+PL3B8zZfflZd8sVVUoc/MzJQqVarIG2+8IZGRkVK7dm0ZPXq0XLlyxdpmxYoV0rdv31zroCCOzhdXK/QuczGeMSYImAfch+WFAM+LyNJC2jcA3gE6AVeB+SLyl7KItbQ8+uijLF68mE6dOtG4cWNq166da3jnzp2tn1u0aMGgQYPYunUrDz74IADvvvsuLVq0oHPnzvTp04f777+/wHklJiYWO76UlBRCQkJy9fP39+fSpcLfqZCRkcGQIUMYNmwYjRvnftZDYmIily9fZtGiRURERBQ6nREjRhAZGQlAz549OXDgAPfeey8AAwYMqHCHcitSvgQHB7N7925atmzJ+fPnGT16NEOGDOHrr78ucDqaL7m5er4Ux9mzZ8nIyGDlypVs27aNKlWq8MADD/Daa68xbdo0UlJSeOGFF9iwYYPd03TnfHGlc/TvAulAKDAEmG2Myfc9u8aYqsBG4D9AGFAH+LiM4iw1jz76KEuXLmXhwoUMHTr0uuE7d+6kS5cuhISE4O/vz5w5c3JdYBMQEMCAAQPYt28fEyZMcHh8Pj4+JCcn5+qXnJyMr2/Bb0nMysri0UcfpWrVqsyaNSvfNt7e3jzxxBMMHTqUc+fOFTit0NBQ62cvL6/rvqekpNi7KG6hIuWLj48PUVFRVK5cmdDQUGbNmsWGDRuum74tzZfcXD1fisPLywuAZ555hpo1axIcHMyzzz7L+vXrAXjllVd49NFHqV+/vt3TdOd8cYlCn/0WnoeAl0QkRUS2A+uARwsYZThwRkRmishlEUkTkZ/KKNxSExERQf369Vm/fj39+/e/bvjgwYPp27cvp06dIikpiSeeeMJy/iVbdHQ08+fPZ9CgQYwZM6bQedlevZy3e/311/Mdp2nTpuzdu9f6/fLly/zyyy80bZrv7zFEhJEjR3L27FlWrVpFlSpVCownKyuLK1euEBsbW2jc6ncVOV9yHhlruzyqcK6eL8URGBhInTp1Cnx08KZNm3jnnXcICwsjLCyMU6dOMXDgQN58880Sz7s8colCDzQCrolIjE2/vUD+fxGgDXDcGPOlMSYh+z2/zUs9yjIwb948/vOf/+Dt7X3dsEuXLhEUFISnpye7du1i6dLfz2ykpaXxxz/+kddff50FCxYQGxvLe++9V+B8cq5czq974YUX8h2nX79+7Nu3j1WrVpGWlsaUKVNo0aLFdYfjczz55JMcPHiQzz//3PoLPMfGjRv53//+x7Vr10hOTubZZ58lMDCQJk2a2LOaVLaKki87d+7k8OHDZGVlcf78ecaMGUPnzp3x9/e3ZzWpbK6cL2C5zTItLQ2w3G6XlpZW4I+5ESNG8K9//Ytz585x8eJF3n77bevphE2bNrFv3z6io6OJjo6mVq1avP/++4wePdqu9eRuXKXQ+wBJefolAQUd46uD5a097wC1gH8Dn2Uf0r9OfHw8UVFR1m7u3LkOCtvxIiMjiYqKynfYe++9x8svv4yvry9Tpkxh4MCB1mHPP/88derU4cknn6RatWp8/PHHvPjiixw5csRhsYWEhLBq1SomT55MYGAgO3fuZPny5dbhr7/+Oj179gTgxIkTvP/++0RHRxMWFmb9Nb9kyRLAcg5v0KBB+Pv7ExkZydGjR/nqq6/w9PR0WLz5mTt3rjUPgOD82mi+OIYj8+XYsWP06NEDX19fmjVrRrVq1XLdLlZa7MmX8sSV8wXglltuwcvLi9jYWLp3746Xl5f12Qu2+QLw0ksv0bp1axo1akSTJk24/fbbmTx5MgDVq1e37s2HhYXh4eFBYGAgPj4+Do23vDBlcejLGLMFy0Vz+fkOeAb4TkRushlnAtBZRPrkM73PAD8R6ZL93QCJQEcR2Zu3fVRUlOzZs6eki6HcjDHmRxG57q+e5ovKj+aLsldBueIsZXLVvYh0Lmx49jn6ysaYhiKS8xPxNmB/AaP8BLR3XIRKKaWUe3KJQ/cichlYDUwxxngbY9oDDwAfFTDKx0AbY8y9xhgPYByWW/IOlmac6enpvPXWW8TExBTdWCmllHIBLlHosz0FeAHngGXAkyKyH8AYU9cYk2KMqQsgIoeBPwJzgItYfhT0FZH00gxw48aNPPvss7zxxhulORullFLKYVzmgTkicgF4sIBhJ7FcsGfbbzWWowBlplu3brz99tv07t27LGerlFJK3TBX2qN3eVWrVmXs2LHcfPPNzg5FKeUmsrKy+PLLL8v1A1mUa9NCr5RSTrRy5Up69erFlClTnB2KclNa6JVSyok6duzIY489VuArfJUqKZc5R6+UUhVRWFgY8+bNc3YYyo3pHr1SSinlxrTQK6WUUm5MC71SSinlxrTQK6WUUm5MC71SSinlxrTQ28FVXlPqCnG4QgzgOnHkx1Vic4U4XCEGcJ048uMqsblCHK4QA7hOHI6ihd4OrrLRXSEOV4gBXCeO/LhKbK4QhyvEAK4TR35cJTZXiMMVYgDXicNRtNArpZRSbsyIiLNjKHXGmHjgRAkmEYzlNbjO5gpxuEIM4Jg4IkQkJG9PzRe3iwE0X+zhCnG4QgxQ8jjyzRVnqRCFXimllKqo9NC9Ukop5ca00CullFJuTAu9Ukop5ca00CullFJuTAu9Ukop5ca00CullFJuTAu9Ukop5ca00CullFJuTAu9Ukop5ca00CullFJuTAu9Ukop5ca00CullFJuTAu9Ukop5ca00CullFJuzCULvTGmgzHme2NMkjHmgjHmO2NMa5vh3saYFGPM+nzGPW6MSc0eHmeMWWiM8SnbJchfUcuV3WaLMeaiMaZanv6lslzGmEeMMTuNMZeNMeeyPz9ljDE2873X5nO6MSY4zzSijTFijKlX0nhcgW6n0lHYes2z3nK6WdnDbPtl5Wk3xBnLkpfmTOlwlZwpbF75DC9wGxaSA1uMMWk20z5c/LVVCBEpcWcqV40DxN7OVK4aV9C0AD8gERgEeABewH1AC5s2w4DzQCZQM8/4x4F7sz+HAXuBaTeyXB5VqxVruTyqVivpctUDrgEXgAGltVw205wAnAX+APgCBrgdWAJUy2e+x4HDwDM202ie3U+Aeo7Ip+J2VYq5narodirz7VTUerWNv4jp2NWuqK5qNc9i5UzVap6aMxU4Z4qahj3bsIgc2AL8X2mty8o4gGSmh94+ZZPd7f/38j2hhQxuBCAiy7K/pwIb8rQZBswBegJDgH/kG5dInDHma6Cl3cHZuJZ+NXT06gN2t3+3/60lXa6hwA/ATizL+Gl+EyrpcgEYY/yBKcBQEVllM+h/WNZpQT7KjvNf2d+HAYuB1240lpLKSL8aOn/XCbvbP3ZnhG6nsmfPei0z6VfTQr8/ctHu9u0aBmrOlD2Xyhl7FbIN7cqB0uCKh+5jgGvGmEXGmJ7GmEDbgcaYukBnLL9Ml2BZefkyxtTB8mPgaOmFa7dClyvbUH5fru7GmHz/uDhoudoC1YDPijneD4CfMaaJMcYDeBj4uARxuBrdTqXDnvVaXmnOlI5ymTOFbMOicuANY0xC9umJzo6MyeUKvYgkAx2wHC76AIg3xqyzWSlDgZ9E5ACwDGhqjLk9z2TWGmMuAaeAc8ArZRN9wYpaLmNMByACWCEiPwK/AIPzTMaRyxUMJIhIZk6P7HNhidnnmjoWMm7OL/9uwCEg1nagMaaeMWZlzr82/e83xrxq0yY++9zUbmNMjxIsi8Podiqd7WTH/2uwrLdEm+7xG5lXWdOcqTA5U9S8CtyGduTAJKABUBuYC3xujIl0VOAuV+gBROSgiAwXkTpAM6AW8Hb24JxfRYjIGWArlsMgth4UEV8se/6NsSS+0xWxXMOADSKSkP19KTe4XMaYIeb3izq+LCCc80CwMcZ6+kZE2olIQPawwnLjIyxJOhzLob0btVVEOgP9gKklmI5D6Xa6TpHbyZ5lKWK9gmW9Bdh0H5Qg5jKlOXOdcpMzdq5Te+ZV2DYsNAdEZKeIXBKRqyKyCPgO6FXcZSmISxZ6WyJyCFgINDPGtAMaAs8by5WNccBdwCDbpLYZd2v2uPmew3emPMvlBQwEOtks13jgNmPMbfmMW+hyicgSEfHJ7noWEMIO4CrwwA3EfgL4FUsiri7u+PkIwHKxkMvR7ZRLAAVsJzuXxba9db06IC6XojmTSwAunjPFjcOO6eXahsXNgZzJ4MC/iQ65GM+RjDGNgd7AJyJy2hgTjuWqyx+w/ALaSO7z8l7AT1jOiXyezyTfBo4bY1qKSHQphl6oIpbrQSxXYzYH0m1GW4FlWSfkM8m3KcFyiUiiMeavwHvGGAN8BVwBWgDedkxiJBAoIpfz+5Flo5MxZkv25+rAqjzDdmBZ7mL/USoNup2AUthORazXck1zBtCcyettsrch0IRCcsAYMxXLDutWLHeSPQx0BMY5KhhX3KO/hGWhdxpjLmPZqPuw/IcYCPxLROJsul+xHG7KeygMABGJx3II6qUyib5ghS3XMGCBiJy0XTZgFjCkgKMVJV4uEfk78CzwFyznlM4C72M5X/R9EeP+IiJ77JjNVhHpnH0Y7/l8hrUF/gR0LWb4pUW3U+lsp8LWa47PTe77lNfc4LzKmuZMxcgZu+eVZxsWmgNAFSx3NsQDCcAzWE4DOO5eenHAPXqOvI/elTpH3kdfkTos94uuzPnXpv/9wKu2bWyG7cSyF1Hs+TnyPvqK1JX1dnKlzpH30VekriLnTHnuHLJHn5VxNUxEjL1dVsbVMEfMt7RlXk0r1nJlXk0rF8tVBgyWQ1XFsQgYdSMzSy/mdkrX7ZSjTLeTK7mallqsnLmalqo5Y1Fhc6Y8M2L5xaWUwxhjOgH9RGScs2NRBdPtpIpLc6Z8csVz9KocM8b0BqZjuRdUuSjdTqq4NGfKL92jV0oppdyY7tErpZRSbkwLvVJKKeXGtNArpZRSbkwLvVJKKeXGtNArpZRSbkwLvVJKKeXGtNArpZRSbkwLvVJKKeXGtNArpZRSbkwLvVJKKeXGtNArpZRSbkwLvVJKKeXGtNArpZRSbuz/AW2UKN6Yk4gSAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, axs = plt.subplots(nrows=1, ncols=3, figsize=[7, 5])\n", "for ax, df in zip(axs, df_list):\n", " im = sns.boxenplot(ax=ax, data=df, k_depth='proportion', outlier_prop=0.05, showfliers=False, orient='v', palette=\"tab20c\", width=0.7, saturation=1)\n", " sns.stripplot(ax=ax, data=df, orient='v', size=2, color='k')\n", "\n", "# axis format\n", "for ax in axs:\n", " ax.set_xticklabels([])\n", " ax.tick_params(which='both', direction='in', bottom=True, top=True, left=True, right=True)\n", "for ax in axs[:2]: ax.set_ylim(-0.65, 0.32)\n", "axs[2].set_ylim(-11.5, 3)\n", "axs[0].set_ylabel('Slant range delay [m]')\n", "axs[1].set_yticklabels([])\n", "axs[2].yaxis.tick_right()\n", "axs[2].yaxis.set_label_position(\"right\")\n", "handles = [patches.Rectangle((0, 0), 1, 1, fc=plt.get_cmap('tab20c')(x), ec='k', lw=1) for x in [0, 1, 2, 3]]\n", "labels = [r'SAR',\n", " r'SAR - GIM$_\\mathrm{JHR}$',\n", " r'SAR - GIM$_\\mathrm{JHR}$ - SET',\n", " r'SAR - GIM$_\\mathrm{JHR}$ - SET - ERA5']\n", "fig.tight_layout(pad=0.5)\n", "fig.legend(handles=handles, labels=labels, ncol=4, loc='lower left', bbox_to_anchor=(0.01, -0.1), frameon=False, columnspacing=1, handlelength=1, handletextpad=0.5)\n", "\n", "# label\n", "ts_list = [df.iloc[:,-1:] for df in df_list]\n", "rmse_list = [ut.root_mean_sq_error(ts) for ts in ts_list]\n", "max_list = [np.nanmax(np.abs(ts)) for ts in ts_list]\n", "for ax, label in zip(axs, ['(a)', '(b)', '(c)']):\n", " ax.annotate(label, xy=(0.17, 0.94), xycoords='axes fraction', ha='right')\n", "labels = [\n", " 'Sentinel-1 asc\\nRMSE = {:.2f} m\\nMax = {:.2f} m'.format(rmse_list[0], max_list[0]),\n", " 'Sentinel-1 desc\\nRMSE = {:.2f} m\\nMax = {:.2f} m'.format(rmse_list[1], max_list[1]),\n", " 'ALOS-2 desc\\nRMSE = {:.2f} m\\nMax = {:.2f} m'.format(rmse_list[2], max_list[2]),\n", "]\n", "for ax, label in zip(axs, labels):\n", " ax.annotate(label, xy=(0.93, 0.05), xycoords='axes fraction', ha='right', linespacing=2.0)\n", "\n", "# output\n", "out_fig = os.path.join(work_dir, 'box_stats.pdf')\n", "print('save figure to file', out_fig)\n", "plt.savefig(out_fig, bbox_inches='tight', transparent=True, dpi=300)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Table III - Comparing different TEC products" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ChileSenAT149: RMSE\n", " SAR - S1Bias - SET - ERA5 : 18.1 cm\n", " SAR - S1Bias - SET - ERA5 - TECclr : 21.2 cm\n", " SAR - S1Bias - SET - ERA5 - TECjlr : 19.2 cm\n", " SAR - S1Bias - SET - ERA5 - TECjhr : 6.4 cm\n", " SAR - S1Bias - SET - ERA5 - TECsub : 4.9 cm\n", "ChileSenDT156: RMSE\n", " SAR - S1Bias - SET - ERA5 : 5.7 cm\n", " SAR - S1Bias - SET - ERA5 - TECclr : 5.1 cm\n", " SAR - S1Bias - SET - ERA5 - TECjlr : 5.1 cm\n", " SAR - S1Bias - SET - ERA5 - TECjhr : 5.6 cm\n", "KyushuAlos2DT23: RMSE\n", " SAR - SET - ERA5 : 271.2 cm\n", " SAR - SET - ERA5 - TECclr : 138.1 cm\n", " SAR - SET - ERA5 - TECjlr : 131.3 cm\n", " SAR - SET - ERA5 - TECjhr : 55.7 cm\n", "Expected ALOS-2 RMSE with sub-orbital TEC : 31.1 cm\n" ] } ], "source": [ "dDicts = []\n", "for proj_dir in proj_dirs:\n", " #proj_dir = proj_dirs[0]\n", " suffix = '' if 'Alos2' in proj_dir else '_S1Bias'\n", " fnames = [os.path.join(proj_dir, f'timeseriesRg{suffix}_SET_ERA5.h5'),\n", " os.path.join(proj_dir, f'timeseriesRg{suffix}_SET_ERA5_TECclr.h5'),\n", " os.path.join(proj_dir, f'timeseriesRg{suffix}_SET_ERA5_TECjlr.h5'),\n", " os.path.join(proj_dir, f'timeseriesRg{suffix}_SET_ERA5_TECjhr.h5'),\n", " os.path.join(proj_dir, f'timeseriesRg{suffix}_SET_ERA5_TECsub.h5')]\n", " proj_name, dDict = utils.read_ts_files(fnames, print_max=False)[:2]\n", " dDicts.append(dDict)\n", "\n", "# Expected ALOS-2 geolocation using sub-orbital TEC\n", "a2_jhr = ut.root_mean_sq_error(dDicts[2]['SAR - SET - ERA5 - TECjhr']) * 100.\n", "a2_top = 46.2 # cm\n", "a2_sub = np.sqrt(a2_jhr**2 - a2_top**2)\n", "print('Expected ALOS-2 RMSE with sub-orbital TEC : {:6.1f} cm'.format(a2_sub))" ] }, { "cell_type": "markdown", "metadata": { "heading_collapsed": "true" }, "source": [ "### Implication for Stack Coregistration" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ChileSenAT149: RMSE\n", " SAR - S1Bias - TECjhr - SET - ERA5 : 6.4 cm\n", "ChileSenDT156: RMSE\n", " SAR - S1Bias - TECjhr - SET - ERA5 : 5.7 cm\n", "KyushuAlos2DT23: RMSE\n", " SAR - TECjhr - SET - ERA5 : 55.7 cm\n" ] } ], "source": [ "s1_ts = []\n", "a2_ts = []\n", "for proj_dir in proj_dirs:\n", " suffix = '' if 'Alos2' in proj_dir else '_S1Bias'\n", " fnames = [os.path.join(proj_dir, f'timeseriesRg{suffix}_TECjhr_SET_ERA5.h5')]\n", " proj_name, dDict = utils.read_ts_files(fnames, print_max=False)[:2]\n", " # save info\n", " if 'Sen' in proj_name:\n", " s1_ts += dDict['SAR - S1Bias - TECjhr - SET - ERA5'].tolist()\n", " else:\n", " a2_ts += dDict['SAR - TECjhr - SET - ERA5'].tolist()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "S1 (304 images) - rg: 0.06 m (1-sigma) / 0.05 pixel (2-sigma)\n", "S1 (304 images) - az: 0.36 m (1-sigma) / 0.05 pixel (2-sigma)\n" ] } ], "source": [ "# Conclusion for stack coregistration - S1\n", "s1_num = len(s1_ts)\n", "s1_rg_std = np.std(s1_ts) # Yunjun et al. [in prep]\n", "s1_az_std = 0.36 # Gisinger et al. (2021)\n", "s1_rg_std_pix = s1_rg_std * 2 / sensor.SENSOR_DICT['sen']['range_pixel_size']\n", "s1_az_std_pix = s1_az_std * 2 / sensor.SENSOR_DICT['sen']['azimuth_pixel_size']\n", "print(f'S1 ({s1_num} images) - rg: {s1_rg_std:.2f} m (1-sigma) / {s1_rg_std_pix:.2f} pixel (2-sigma)')\n", "print(f'S1 ({s1_num} images) - az: {s1_az_std:.2f} m (1-sigma) / {s1_az_std_pix:.2f} pixel (2-sigma)')" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ALOS-2 (49 images) - rg: 0.55 m (1-sigma)\n", "ALOS - rg: 0.06 pixel (1-sigma)\n", "ALOS2 - rg: 0.38 pixel (1-sigma)\n", "NISAR - rg: 0.09 pixel (1-sigma)\n", "\n", "ALOS-2 (49 images) - rg: 0.05 m (1-sigma)\n", "ALOS - rg: 0.01 pixel (1-sigma)\n", "ALOS2 - rg: 0.04 pixel (1-sigma)\n", "NISAR - rg: 0.01 pixel (1-sigma)\n", "\n" ] } ], "source": [ "# Conclusion for stack coregistration - ALOS-2\n", "a2_num = len(a2_ts)\n", "a2_rg_std = np.std(a2_ts) # Yunjun et al. [in prep]\n", "for rg_std in [a2_rg_std, a2_sub/100.]:\n", " rg_std_pix_a1 = rg_std / sensor.SENSOR_DICT['alos']['range_pixel_size']['stripmap_FBD']\n", " rg_std_pix_a2 = rg_std / sensor.SENSOR_DICT['alos2']['range_pixel_size']['stripmap_ultrafine']\n", " rg_std_pix_ni = rg_std / sensor.SENSOR_DICT['ni']['range_pixel_size']['24MHz']\n", " print(f'ALOS-2 ({a2_num} images) - rg: {rg_std:.2f} m (1-sigma)')\n", " print('ALOS - rg: {:.2f} pixel (1-sigma)'.format(rg_std_pix_a1))\n", " print('ALOS2 - rg: {:.2f} pixel (1-sigma)'.format(rg_std_pix_a2))\n", " print('NISAR - rg: {:.2f} pixel (1-sigma)'.format(rg_std_pix_ni))\n", " print('')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.12" } }, "nbformat": 4, "nbformat_minor": 4 }