{ "cells": [ { "cell_type": "markdown", "id": "8782f0b6", "metadata": {}, "source": [ "(plotly:graph-objects)=\n", "# 图对象\n", "\n", "参考:[Graph Objects | Python | Plotly](https://plotly.com/python/graph-objects/)\n", "\n", "## 什么是图对象?\n", "\n", "`plotly.graph_objects` 模块(通常按顺序导入)包含一个自动生成的 Python类层次结构,这些类在这个图模式中表示非叶节点。术语“图对象”指的是这些类的实例。`plotly.graph_objects` 模块中有两大主类:[`Figure`](https://plotly.com/python-api-reference/generated/plotly.graph_objects.Figure.html) 和 [`FigureWidget`](plotly:figurewidget)(兼容 `ipywidgets` 的变体),它们都表示整个图。这些类的实例有许多方便的方法来用 Python 操作它们的属性(例如 `.update_layout()` 或 `.add_trace()`,它们都接受“魔法下划线”表示法),以及渲染它们(例如`.show()`)并将它们导出为各种格式(例如 `.to_json()` 或 `.write_image()` 或 `.write_html()`)。\n", "\n", "注意:`Plotly Express` 中的函数(这是 Plotly 库的推荐入口点)都建立在图对象之上,并且全返回 `plotly.graph_objects.Figure` 实例。\n", "\n", "图的每个非叶子属性都由 `plotly` 中的一个 `plotly.graph_objects` 层次结构的类实例表示。例如,一个 `fig` 可以有一个属性`layout.margin`包含属性 `t`、`l`、`b` 和 `r`,它们是树的叶子:它们没有子节点。`fig.layout` 的字段是 `plotly.graph_objects.Layout` 类的一个对象,并且 `fig.layout.margin` 表示 `margin` 节点,它有字段 `t`、`l`、`b` 和 `r`,其中包含各自叶节点的值。注意,指定所有这些值不需要使用“魔法下划线”符号创建中间对象: `go.Figure(layout_margin=dict(t=10, b=10, r=10, l=10))`。\n", "\n", "列表中包含的对象是属性`data`的值,称为“轨迹”,可以是 40 多种类型中的一种,每种类型在`plotly.graph_objects`中都有相应的类。例如,`scatter`类型的轨迹由`plotly.graph_objects.Scatter`类的实例表示。这意味着一个以`go.Figure(data=[go.Scatter(x=[1,2], y=[3,4)])`将JSON 表示 `{\"data\": [{\"type\": \"scatter\", \"x\": [1,2], \"y\": [3,4]}]}`。\n", "\n", "(plotly:when-use-graph-objects)=\n", "## 何时直接使用图对象\n", "\n", "创建图的推荐方法是使用`plotly.express`模块中的函数,统称为 Plotly express,它都返回 `plot.graph_objects.Figure` 的实例,所以使用 `plotly` 库生成的每个图,实际上都使用了图对象,除非是手工从字典中构建的。也就是说,某些类型的图形还不能用 Plotly Express 创建,比如使用特定的 3D 轨迹类型(如网格或等值面)的图。此外,从使用 Plotly Express 创建的图形开始创建某些图形非常麻烦,例如具有[不同类型的子图](plotly:mixed-subplots)、[双轴图](plotly:multiple-axes) 或具有多个不同类型轨迹的[分面图](https://plotly.com/python/facet-plots/)。\n", "\n", "注意,Plotly Express 在一个函数调用中生成的图[很容易在创建时定制](plotly:styling-plotly-express),并且在创建后使用`update_*`和`add_*`方法进行[操作](plotly:creating-and-updating-figures)。Plotly Express 生成的图总是可以使用图对象从头开始构建,但这种方法通常需要 5-100 行代码,而不是 1 行。下面是一个简单的例子,演示如何从相同的数据生成相同的图形对象,一次使用 Plotly Express,另一次不使用。本例中的数据是 \"long form\" 的,但 Plotly Express 也接受 [\"wide form\"](https://plotly.com/python/wide-form/) 的数据,而且 Plotly Express 相对于图对象节省的行数是可以比较的。更复杂的图形,如 [sunbursts](https://plotly.com/python/sunburst-charts/), [parallel coordinates](https://plotly.com/python/parallel-coordinates-plot/), [facet plots](https://plotly.com/python/facet-plots/) 或 [animations](https://plotly.com/python/animations/) 需要更多的图对象代码行,而使用 Plotly Express 从一种表示转换到另一种表示通常只需要更改几个字符。" ] }, { "cell_type": "code", "execution_count": 1, "id": "316878e3", "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "alignmentgroup": "True", "hovertemplate": "Contestant=Alex
Fruit=%{x}
Number Eaten=%{y}", "legendgroup": "Alex", "marker": { "color": "#636efa", "pattern": { "shape": "" } }, "name": "Alex", "offsetgroup": "Alex", "orientation": "v", "showlegend": true, "textposition": "auto", "type": "bar", "x": [ "Apples", "Oranges", "Bananas" ], "xaxis": "x", "y": [ 2, 1, 3 ], "yaxis": "y" }, { "alignmentgroup": "True", "hovertemplate": "Contestant=Jordan
Fruit=%{x}
Number Eaten=%{y}", "legendgroup": "Jordan", "marker": { "color": "#EF553B", "pattern": { "shape": "" } }, "name": "Jordan", "offsetgroup": "Jordan", "orientation": "v", "showlegend": true, "textposition": "auto", "type": "bar", "x": [ "Apples", "Oranges", "Bananas" ], "xaxis": "x", "y": [ 1, 3, 2 ], "yaxis": "y" } ], "layout": { "barmode": "group", "legend": { "title": { "text": "Contestant" }, "tracegroupgap": 0 }, "margin": { "t": 60 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "xaxis": { "anchor": "y", "domain": [ 0, 1 ], "title": { "text": "Fruit" } }, "yaxis": { "anchor": "x", "domain": [ 0, 1 ], "title": { "text": "Number Eaten" } } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pandas as pd\n", "\n", "df = pd.DataFrame({\n", " \"Fruit\": [\"Apples\", \"Oranges\", \"Bananas\", \"Apples\", \"Oranges\", \"Bananas\"],\n", " \"Contestant\": [\"Alex\", \"Alex\", \"Alex\", \"Jordan\", \"Jordan\", \"Jordan\"],\n", " \"Number Eaten\": [2, 1, 3, 1, 3, 2],\n", "})\n", "\n", "import plotly.express as px\n", "\n", "fig = px.bar(df, x=\"Fruit\", y=\"Number Eaten\", color=\"Contestant\", barmode=\"group\")\n", "fig.show()" ] }, { "cell_type": "markdown", "id": "5c251335", "metadata": {}, "source": [ "不使用 `px`:\n", "\n", "```python\n", "import plotly.graph_objects as go\n", "\n", "fig = go.Figure()\n", "for contestant, group in df.groupby(\"Contestant\"):\n", " fig.add_trace(go.Bar(x=group[\"Fruit\"], y=group[\"Number Eaten\"], name=contestant,\n", " hovertemplate=\"Contestant=%s
Fruit=%%{x}
Number Eaten=%%{y}\"% contestant))\n", "fig.update_layout(legend_title_text = \"Contestant\")\n", "fig.update_xaxes(title_text=\"Fruit\")\n", "fig.update_yaxes(title_text=\"Number Eaten\")\n", "fig.show()\n", "```\n", "\n", "(plotly:mixed-subplots)=\n", "## 混合子图\n", "\n", "```{important}\n", "Plotly Express 不支持创建具有任意混合子图的图形,即具有不同类型子图的图形。Plotly Express 仅支持 [facet 图](https://plotly.com/python/facet-plots/)和[边际分布子图](https://plotly.com/python/marginal-plots/)。要制作带有混合子图的图形,请将 [`make_subplots()`](https://plotly.com/python/subplots/) 函数与下图所述的图对象结合使用。\n", "```" ] }, { "cell_type": "code", "execution_count": 2, "id": "fe417b11", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "geo": "geo", "hoverinfo": "text", "lat": [ 34.5, -23.3, 14.501, 38.57, 46.206, 37.62, 10.07, 13.08, 40.275, 18.77, 14.465, 37.77, -50.17, -8.342, 20.42, 53.983, 53.98, 36.53, 43.38, 55.43, 39.75, 39.97, 29.45, 29.461, 54.13, 50.858, 17.6, 12.88, 41.73, -0.43, 13.52, 14.88, 60.42, 14.82, 56.7, 57.7, 13.82, 7.77, 55.42, -0.55, 17.32, 0.75, -4.08, 34.55, -12.48, -16.25, 15.828, -37.83, 52.5, 16.35, 56.32, -15.42, -75.8, -20.2, 56.88, -14.3, -19.4, -40.771, -49.683, -0.481, -26.08, -26.083, -25.53, -37.406, -15.4, 32.45, 13.891, 13.72, 6.987, 12.242, -24.27, -24.25, 40.55, 13.428, 39.7, 15.2, 11.58, 10.463, -47.2, 15.63, -7.725, 47.5, 36.4, 13.07, -7.95, 65.03, 32.88, 12.95, 19.67, -0.353, 23.333, 14.583, 52.38, 57.97, 19.809, 44.804, -34.65, -36.9, 59.37, 53.255, 3.67, 45.95, 10.082, 1.08, -0.9, -35.653, 12.53, 37.73, 19.523, 43.979, -6.14, 53.905, 48.786, 14.05, 8.8, -5.83, 37.328, -2.57, -7.85, 5.4, -3.6, -5.2, 14.07, -4.525, 37.6, 3.138, 45.1, 19.3, 64.63, 52.823, 12.292, 2.32, 8.8, 10.135, 10.8, -8.242, -25.42, 31.92, 18.33, 28.07, 55.32, 51.75, -2.82, 44.285, 57.88, -76.05, 8.95, 44.47, -4.43, 55.978, -0.78, 40.955, 7.07, 11.523, -6.092, 15.55, 18.367, 8.78, 10.75, 56.53, 38.97, -36.286, 56.97, 57.35, 44.42, -3.508, 51.9, 44.83, 53.93, -3.994, -5.15, 52.9, 55.88, 54.32, 56.47, 4.4, 61.38, -37.721, 8.27, 13.725, 13.3, 11.63, 8.558, -54.42, -8.28, 14.85, 5.092, 5.092, 63.92, 50.8, -62.05, -30.23, -59.03, -34.875, 41.178, -66.8, 5.95, -1.23, 52.37, 12.77, -0.2, -52.33, 47.12, 8.05, 64.07, 10.287, -39.2, 18.222, -35.558, 38.867, 7.877, -41.326, -37.92, 4.203, 9.203, 18.83, 40.827, 37.1, -57.08, 52.9, -40.35, 33.78, -17.47, 0.029, 0.029, -41.25, -41.25, 21.125, 10.158, 3.5, -6.892, 38.33, -0.375, -16.191, -16.191, 52.57, 45.775, -42.833, 41.98, -38.37, 56.82, 55.55, 19.08, 17.36, 57.13, 50.325, -23.58, -23.583, -36.863, -1.464, 13.475, 14.12, 14.83, 6.65, 48.98, 45.38, 46.525, 39.08, -2.68, 12.53, 43.241, 14.02, -36.446, 38.97, 44.83, 52.82, 13.87, -46.1, 19.492, -23.23, -8.83, 19.514, -18.5, -0.17, 26, 11.538, 13.277, 13.22, -54.95, -37.85, -27.3, 7.18, -43.18, -23.85, -23.75, -25.33, 29.08, -15.52, 39.67, 12.98, 36.03, -0.677, -42.017, 42.93, -6.58, 43.42, 54.7, 15.38, 0.308, 14.333, 14.33, 0.98, 19.15, -15.62, -15.617, -30.542, -26.617, 12.6, 12.38, 33.95, 21.324, 43.68, -5.056, 13.792, 14.242, 11.28, 35.951, 55.62, -6.2, 39.7, 45.33, -0.18, -3.38, 51.97, 43.57, -9.62, -62.97, 45.5, -4.03, 58.42, -35.58, 43.512, 50.52, 14.57, 15.62, 15.5, 43.1, 19.077, -7.2, 51.43, 9.35, -5.9, -36.63, 38.23, 1.47, 39.65, 58.87, 27.683, 13.58, 1.68, 56.5, 24.15, 55.18, 53.637, 41.8, 40.63, -27.15, -20.98, 50.68, -8.808, -0.63, -0.02, 57.05, 57.72, 56.57, -39.3, -8.67, 48.958, 43.33, -0.52, 57.53, 55.33, -6.62, 1.5, 47.95, -16.68, 38.52, -77.53, 13.6, 33.08, 40.983, -25.08, 64.27, 15, 66.35, -46.43, 13.17, 37.734, 63.63, -20.32, 20.53, 38.6, 57.13, 8.975, -0.37, -15.23, 54.67, 39.4, 14.3, 14.95, -18.02, 13.4, 0.7, 62.93, 43.361, -21.229, 58.77, 65.43, 55.07, 14.473, 28.358, 35.35, 32.653, 21.925, 24.28, 37.77, 50.27, 11.08, 13.975, 0.792, 0.792, 1.22, -9.35, -7.25, 0.8, 54.973, 1.375, -5.45, 51.78, 49.92, 49.85, -4.692, -5.269, -14.27, 8.35, -6.78, 0.32, 56.33, -30.036, 39.17, 48.112, 19.33, 36.358, 45.25, 38.25, 43.85, -9.48, 62.13, 52.558, 46.83, 57.33, 39.02, 28, 52.08, 58.35, -11.47, 64.03, 64.42, 11.73, 45.02, 29.07, -0.171, -18.42, -22.88, 13.9, 12.55, 17.32, -7.13, -6.642, 33.13, 39.95, 19.7, 40.65, 35.22, 36.15, 20.708, 33.37, 13.72, -5.33, 31.083, 27.25, 36.47, 38.13, 11.6, 61.62, 15.43, 13.5, -35.004, -53.106, 58.6, 63.98, 43.5, 64.18, 52.75, 9.78, 27.73, 38.6, 0.88, 36.95, 6.78, -56.7, 64.78, -0.38, -18.992, 41.47, 45.374, 56.78, -41.874, 64.073, 19.692, -39.87, -16.608, -74.33, -45.9, -42.377, 2.92, -5.35, 19.68, -20.57, -22.4, -2.333, -2.33, -9, -9.52, 1.475, 31.22, 55.68, 58.4, -4.87, -8.058, 58.08, 60.03, -8.342, -8.53, -8.478, -8.54, -0.659, 13.672, 51.49, 2.15, 65.6, 23, 45.93, 61.43, -8.73, -8.875, 37.692, 14.55, 20.469, 9.979, 13.457, 24.558, -20.73, 54.75, 13.658, 40.73, 56.58, -19.15, -19, 26.58, 45.77, 40.65, 39.85, 27.85, 24.75, 14.42, -8.88, -7.97, 13.813, 19.179, 34.92, -8.93, 1.08, 14.35, 15.042, 71.08, 29.33, -19.45, 44.692, 44.08, 19.724, 19.733, 43.03, 11.92, -3.52, 42.55, -3.62, 52.97, 58.62, 26.667, -35.3, 57.8, 26.122, 7.95, 51.3, 56.02, -8.75, 51.92, 10.412, -19.667, 37.67, -7.12, -6.27, 2.78, 37.67, -1.5, -4.649, 50.13, 40.75, -11.75, 54.05, 52.18, 42.7, 21.77, 63.63, 58.27, -0.47, -0.08, -9.02, -7.92, 57.1, 56.4, -8.758, 51.65, 49.37, -7.93, -7.23, -49.58, -1.814, 47.35, 54.75, 48.67, 49.12, 25, 52.063, 57.38, -6.73, 12.3, -9.23, 30.78, 54.487, 19.425, -3.07, 57.35, 31.93, 22.8, 52.1, 24.414, 25.43, 55.13, 1.47, 56.057, 66.67, 55.07, 46.042, 42.07, 55.032, 8.8, 52.22, 63.6, -7.33, 5.1, -17.32, 0.77, 53.32, 51.357, 19.8, 34.22, 55.58, 65.73, 56.37, 63.98, -6.102, 54.593, 63.98, 63.93, 54.753, 51.8, 29.97, 29.964, 30.43, 24.85, 33.08, 58.47, 38.58, 56.37, 35.52, 56.02, 38.95, 51.45, 33.4, 33.4, 11.88, 36.62, 43.55, 42.5, 14.5, -16.829, 64.65, 0.45, 28.58, 12.3, 64.42, 64.08, -8.95, -8, -5.525, 64.75, -39.633, 29.03, 43.25, -23.37, 40.492, -25.17, -18.806, 7.65, -49.02, 34.75, -7.625, 20.83, -2.751, 7.393, -8.358, -56.67, 57.3, 58.42, -8.53, -8.575, -8.272, -17.87, 9.57, 17.37, -22.83, -3.125, -65.03, 38.48, 38.483, 51.95, 64.87, -38.692, -24.72, 18.92, 1.358, -5.47, -4.92, -6.52, 50.25, -5.358, -36.193, 42.33, -0.92, -38.377, -16.507, 22.28, 1.478, -4.22, 25.17, -7.7, 44.62, 64.87, 13.02, -45.1, -30.2, -28.98, 4.48, 32.733, 11.446, -9.2, 9.258, 58.2, 10.872, 1.358, -34.161, 7.647, 0.32, 53.9, -7.13, -8.02, 13.422, 19.23, 8.22, 13.24, 0.467, 13.27, 55.82, 54.13, -9.08, -4.1, 66.3, 11.75, 12.17, 12.38, 10.615, 5.03, -5.53, 23.917, 14.13, -0.381, 0.33, 0.57, 15.28, -46.9, 14.5, 37.58, -38.42, 12.95, 2.32, 58.17, 13.32, 11.984, 20.62, 51.1, 43.57, 13.1, -22.33, 6.37, 20.017, -36.02, 19.82, 19.475, -0.93, 13.257, -37.28, -53.03, 50.63, 41.58, 45.38, 4.08, 39.95, -17.87, 15.32, -74.35, -44.08, 43.98, -0.2, -44.67, -7.542, -7.45, -14.45, -3.25, 37.615, -19.18, 57.47, -57.78, 19.48, 15.33, 45.28, 52.5, 46.82, 36.699, 23.507, -42.78, 10.748, -16.294, 34.08, -39.927, 51.93, 0.13, 0.133, 28.317, 11.826, 12.422, 37.6, -35.464, 37.88, 38, -25.887, -58.417, -78.5, 0.45, -13.67, -18.32, 12.47, 14.03, -1.38, 63.98, -4.63, -6.617, -9.308, 52.453, 32.1, 36.88, 14.601, 13.37, -19.117, 29.85, 1.9, 36.77, 19.67, 13.43, 38.73, 37.12, 14.705, 52.9, -8.72, -0.83, -24.18, -24.28, 0.828, 12.506, 12.12, 49.57, 38.65, -26.48, 17.15, 43.722, -37.77, 7.25, -39.158, -8.97, -16.258, -6.6, -37.417, 34.37, 36.92, 23.075, 36.8, -6.73, 43.45, 42.88, 27.274, 36.58, -15.6, 36.12, 42.667, 42.67, 4.07, 44.17, -17.45, 15.833, -13.32, 58.27, -19.783, 37.43, 60.02, 0.23, -1.408, -1.52, -14.175, -27.12, 52.7, -38.12, 36.17, 53.42, 6.25, 0.63, -20.93, -0.904, 52.077, -21.3, 42.17, 29.22, 36.78, 35.9, 52.543, 64, 19.03, 26, 10.98, 34.73, 41.5, 41.32, -41.1, 52.146, 58.18, 52.22, -23.35, 51.88, 14.381, 9.593, 18.13, -5.58, 0.92, -52, -43.68, 39.483, -34.608, -8.32, -20.85, 36.77, -40.77, -7.32, 19.308, 19.48, 6.12, -4.27, 15.22, -18.05, 17.147, -7.15, -63.58, 55.42, 55.45, -36.42, -26.617, 14.82, -7.62, -2.82, -62.1, -6.75, 1.57, -68.85, 4.914, 38.47, 55.42, 12.495, -19.492, 31.772, 15.13, 0.58, 10, 52.113, -35.24, 10.3, -72.67, 57.83, 55.2, 52.02, 10.2, 13.05, -8.68, 56.85, 20.87, 19.023, 40.017, -46.42, 64.6, 47.02, 32.418, -46.63, -55.92, -37.55, -37.567, -24.18, 0.038, -40.969, 2.32, -23, -22.57, -40.59, -44.3, 29.4, 13.83, -39.5, 14.65, 17.48, -0.85, -14.37, -4.271, 7.67, 27.8, 23.08, 48.292, 46.87, -5.78, -8.62, -4.83, -29.27, 47.77, -8.125, 44.073, 53.15, -50.98, 37.58, 60.48, -38.42, -36.45, -0.078, 63.88, 63.67, 10.83, -8.42, -34.933, 45.18, -5.52, -33.658, -26.767, -17.642, 55.65, 12.55, 54.8, -78.25, 2.28, -39.28, 15.617, 15.62, 59.68, 45.88, 4.895, -35.353, -35.745, -36.13, -36.139, -9.13, -46.167, -8.75, 17.63, 38.25, -15.78, -15.783, 37.75, -22.73, -5.414, 31.58, -6.72, 28.5, 3.35, -0.88, 12.702, 14.27, -26.27, 3.35, 38.65, -33.782, 29.814, 13.853, 18.572, 13.431, -21.88, -35.989, 30.468, 13.736, 13.623, 35.13, 44.38, 62.22, 21.45, 21.45, -2.03, -8.18, -8.68, 13.853, 37.257, -0.62, 3.58, 4.82, 14.756, -0.22, 14.33, 17.07, 16.33, 36.404, 0.32, 16.708, 16.708, 0.08, 48.092, 52.47, -13.612, -9.13, 13.58, 54.917, -65.03, 13.25, 57.23, 1.57, 52.32, 52.02, -5.12, -8.108, 51.95, 1.142, 19.27, 52.03, -6.3, -9.48, 37.87, 5.448, 58.28, 7.47, 36.53, 41.42, 36.7, 43.28, 42.7, 44.13, 50.2, 54.75, 57.15, 57.45, 56.653, 43.07, 3.2, 1.556, 1.15, 10.77, 51.43, -8.292, 3.17, 48.875, 22.7, 14.03, -73.43, -8.51, -7.242, 44.43, 31.32, 19.523, 64.8, 58.2, 58.02, 58.33, 0.552, -24.4, 18.78, 8.43, -38.97, 1.108, 0.686, 13.18, 2.12, 16.05, 16.72, 13.33, 2.63, 44.1, -18.533, -18.175, -17.436, 44.5, 57.43, 58.133, 61.3, 43.472, 47.6, -2.38, 12.15, 46.2, 63.45, -38.72, 39.375, 58.43, 55.929, 55.954, 38.789, -67.4, 14.4, -8.792, -0.538, -2.414, -7.38, 31.768, -7.3, 35.37, -5.25, 38.92, 20.13, -13.8, -1.175, 29.53, -14.23, 14.002, 13.435, 15.13, -17.72, 28.6, -15.367, 22.667, 14.433, 15.7, 15.034, 36.9, -76.28, 51.87, -6.442, -7.208, 0.079, -0.978, -8.25, -6.77, 52.833, 51.88, -0.433, -36.321, -6.77, 49.35, -7.792, 1.78, 48.17, 13.28, 36.57, 36.1, 25.17, 54.53, -38.82, -16.82, -4.117, -17.57, 13.494, 14.156, 12.602, -7.37, 4.77, 39.33, 28.271, 25.32, -7.942, 10.673, -6.92, 7.42, 38.73, 57.2, 65.88, -53.93, 62.27, -59.45, 42.5, 44.358, -16.755, 0.65, 0.07, 13.467, 13.27, 19.833, -10.38, 63.78, -34.814, -27.2, -27.2, 57.4, 66.3, 55.25, 34.52, 2.58, 1.625, 1.22, 17.683, -19.75, 21.333, 43.42, 55.83, -38.31, -38.31, 4.67, 14.612, 52.63, 19.108, 4.75, 1.23, -75.8, -39.13, 1.52, -5.83, 63.92, 30.48, 14.93, 27.392, 5.92, 21.03, 40.47, -18.75, 27.47, 45.93, 58.23, -20.514, -37.092, -37.733, 64.43, -37.142, -41.157, 55.12, -2.32, 39.733, 33.28, -23.83, -1.78, 8.158, 40.68, 52.25, 64.73, -1.467, 51.5, -33.4, 42.9, 10.03, -14.295, -17.025, 59.367, -24.05, 57.32, 40.78, 37.02, -16.355, 55.755, 56.18, 57.75, 36.38, 57.7, 57.83, 56.08, -5.05, 53.07, 37.5, 52.33, -5.589, 18.17, -7.18, 28.17, 24, 32.658, 19.17, 33.308, 36.67, 52.57, 52.33, -29.18, -14.23, 25.42, -21.07, 52, -33.622, 16.13, 66, 3.97, 56.82, -53.9, -25.78, -8.92, 9.82, 21.83, 20.93, -20.85, 39.25, -24.8, -21.15, -18.325, 26.133, 21, 20.3, 31.75, 10.733, 9.833, -8.267, -53.9, -55.967, -25.1, 85.583, 42.45, 7, 8.62, -0.58, -73.45, 8.7, -76.83, 8.07, 7.95, -3.5, 4.2, 41.55, 49, 48.08, -5.2, 33.15, -21.38, 5.65, -33.62, 88.27, 38.75, 39.95, 37.78, 23.58, 28, 26.13, -4.75, 55.92, 21.75, 21, 20.33, -4.311, 31.75, 46.47, -8.63, 55.93, 35.85, 52.88, 46.1, 45.03, -16.992, 20.3, 51.6, 57.87, 11.75, 12.25, 52.92, -3.03, 32.75, -13.935, 47.12, 47.52, 56.105, 42.53, 13.419, 16.1, 27.08, 54.5, 34.25, 8.583, 56.17, 56.52, 50.55, 63.43, 40.821, 9.83, -9.2, -49.358, -39.42, 52.68, -1.47, -42.07, -31.85, 20.92, 58.37, 53.13, 38.404, 42.6, -77.17, -9.57, -13.3, -5.53, 42.88, 36.4, 15.307, 25.05, -7.208, 52.33, 45.88, 50.17, -15.1, 54.52, -35.75, -37.52, -7.808, 0.02, 62, 48.72, -7.125, 41.33, 36.22, 36.63, 10.58, 57.02, -43.5, -43.42, 17.05, -19.52, -41.755, -7.05, 44.43, -7.53, 14.98, -4.92, 42.83, -66.42, -17.18, -21.5, 52.63, 13.33, 38.15, 56.88, 11.73, 53.905, 53.905, 46.925, -56.3, 26.18, 51.57, 53.59, 55.862, 15.05, 14.02, 34.8 ], "lon": [ 131.6, -67.62, -90.876, 34.52, -121.49, 140.28, 40.84, 40.85, 44.75, 145.67, -90.743, -25.47, -73.83, 115.508, 145.03, 159.45, 159.45, 139.18, 144.02, 158.65, 140.8, 140.77, 129.6, 129.597, -165.97, 155.55, 145.83, 40.57, 12.7, -91.12, 40.63, 39.92, -135.42, -91.48, 159.65, 160.4, 40.55, 38.78, -163.15, 127.5, 121.1, 124.42, 153.65, -115.78, 49.1, 168.12, 120.805, 77.52, -171.25, 145.67, 158.83, -72.33, -132.33, 169.83, -158.17, 48.67, 47.2, -72.153, 178.767, -78.141, -67.5, -67.5, -68, -71.349, 167.83, 139.77, -89.786, -88.77, 125.273, -86.342, -67.77, -67.767, 44.12, -88.105, 44.28, 120.742, 42.47, -84.703, -73.483, 44.08, 112.58, 120.7, 138.53, 41.6, -14.37, -16.75, 131.1, 42.43, 145.4, -78.617, 5.833, -91.186, -174.15, 160.65, -96.526, 147.13, -70.05, 174.87, -153.42, 158.83, 125.5, -130, 40.702, -77.68, -91.42, -70.761, -83.87, 140.25, 121.94, -121.688, 155.195, 158.07, -121.82, 48.33, 124.92, 154.98, -112.408, 147.28, 114.37, 125.375, 144.85, 151.23, 121.48, 129.871, 140.08, 125.491, 148.02, -110.82, -17.53, 158.27, 93.875, 36.57, -82.558, -84.1, 107.2, 115.375, -68.58, 139.92, 32.75, 60, -131.05, 157.27, 102.18, -121.841, 160.53, -136, 39.75, 146.93, 103.67, 160.587, 127.72, -121.365, 38.1, 124.534, 155.225, 50.63, 41.633, 38.98, 12, -158.8, -112.5, -71.009, 159.78, 161.367, -121.77, 144.62, -177.43, 147.37, -168.03, 144.963, 150.03, 157.78, 157.78, 160.02, 157.8, 117.88, -141.75, 77.825, 39.03, 40.6, 40.98, 41.45, 39.475, 3.35, 115.13, -24.72, -75.3, -75.3, -21.83, -123.4, -56.75, -178.92, -26.58, 179.075, -121.443, 163.25, 121.07, 29.72, 175.98, 124.05, 30.08, -73.4, 109.08, 38.35, -148.42, 125.22, -71.83, 122.123, -70.496, -4.017, 125.068, -72.614, -71.45, 9.17, 124.673, 121.86, 14.139, 12.7, -26.67, -170.05, -72.07, -105.93, -69.82, -77.986, -77.986, -72.27, -72.267, -104.508, 109.014, 36.042, 108.4, 127.33, -78.25, -71.53, -71.53, -171.13, 2.967, -72.646, 128.08, -71.08, 159.67, 157.467, -99.13, -93.228, -157, 155.458, -67.7, -67.7, -71.377, -78.815, -88.32, -89.73, -89.55, 38.12, 153.48, 147.92, 150.875, 140.03, 37.88, -86.142, -122.108, -89.25, 177.839, -122.77, -130.3, -169.95, -89.55, 50.23, -97.15, -67.65, 157.17, -103.62, -68.07, 121.608, -111.92, -85.622, -87.853, -87.765, -70.27, -71.17, -69.13, 38.43, -72.8, -67.62, -67.53, -68.52, -113.513, -72.65, -31.07, -87.57, -117.82, -78.436, -70.183, -122.12, 145.08, -113.5, -130.23, 109.12, -78.364, -90.4, -90.4, -77.88, -97.27, -173.67, -173.667, -178.561, -68.35, 40.48, 40.07, 67.92, 144.194, 142.88, 150.108, 40.55, 40.3, 41.63, 52.109, -161.22, 105.97, 45.542, 114, -91.28, 102.37, 178.33, -121.82, 150.88, -60.65, 148.85, 103.13, -154.45, -70.75, -120.861, 103.25, 44.67, -61.45, -61.42, -118.75, 122.202, 109.92, 157, 40.13, 143.15, -70.42, -26.63, -76.92, -107.03, -153.55, 140.8, 41.808, 127.88, -133.1, -104.45, -162.27, 158.922, 141.17, -120.83, -109.383, 170.28, 156.02, 121.18, 36.23, -91.546, -135.75, -130.63, 158.52, 174.07, 122.45, 153.93, 42.45, 36.27, 160.53, -162.07, 124.22, 36.33, -129.1, 168.37, 35.48, 167.17, 40.67, 37.15, -127.5, -68.37, -16.65, 145.25, -164.33, 52.2, -86.4, 15.004, -19.62, -175.42, 144.9, -28.73, 160.4, 39.93, -91.55, -72.63, -164.35, -31.17, -90, -24.35, -174.325, 143.917, 30.25, -137.38, -120.669, 55.713, -153.68, -16.65, -162.82, -90.88, -14.02, 138.73, 128.851, 143.442, 141.52, -25.32, 155.25, 41.27, 40.408, -86.15, -86.15, -77.37, 159.73, 108.05, 127.325, 160.702, 127.52, 150.03, -178.8, -123.03, -123, 149.5, 150.088, 167.5, 39.18, 106.98, -89.958, 158.67, -178.713, 43.33, -121.113, -97.25, -118.32, 148.35, 34.57, 145.53, 150.35, -143.08, 158.03, 151.75, 160.2, -27.97, -15.58, -176.13, -155.1, 43.33, -20.87, -17.33, 40.25, 147.87, -118.28, -78.598, -69.17, -67.58, -89.12, 42.53, 145.85, 107.83, 126.65, 139.77, 140.85, 110.1, 140.88, 139.02, 136.78, -156.25, 126.53, 42.73, 151.1, 38.417, 17.5, 138.88, 34.17, 108.2, -152.48, 44.78, 40.72, 178.973, 73.513, -131.97, -19.7, -112.45, -21.33, -170.12, 40.33, -18.03, 140.18, 127.32, 139.28, 37.83, -27.15, -18.92, 34.5, -174.775, 113, -121.694, -131.28, -72.431, -21.202, -155.87, -71.55, -70.85, -99.42, -72.97, -72.578, -76.05, 104.6, -97.45, -175.38, 172.05, 101.6, 101.6, 148.37, 150.53, 127.642, 130.57, 157.73, 161.08, 31.92, 114.242, 160.77, -153.08, 123.258, 123.42, 122.671, 123.59, -78.714, -89.053, 157.2, 98.93, -163.92, 10.833, -121.82, -164.47, 120.98, 120.95, -119.02, -89.63, 122.01, -83.852, 123.457, 124, -68.55, -163.73, 123.37, 13.897, -130.55, -68.83, 46.77, 40.2, 149.68, 140.3, 141, 128.25, 141.33, -89.68, 121.63, 113.57, -89.633, -98.642, 139.12, 33.4, 127.42, 121.33, 39.82, -8.17, -114.5, -67.417, -121.8, 128.83, -99.757, -99.758, -117.42, -85.98, 102.62, 44, 144.62, -169.72, -154.05, 141, 173.9, 160.67, 141.102, 124.8, 156.87, 160.593, 157.03, -177.17, 123.132, -175.033, 39.83, 108.08, 106.042, 125.48, 33.65, 29.45, 145.964, 155.37, 42.9, 43.38, 159.43, -175.5, 44.5, 143.72, -19.05, -154.98, 30.18, 29.92, 157.95, 112.45, 159.93, 158.85, 121.83, 157.35, 125.92, 112.308, 107.72, 69.5, 101.264, 152.475, 157.38, 102.75, 154.508, 39.92, 157.703, -156.75, 106.65, -61.63, 33.78, 130.28, 160.253, -155.292, 37.35, 160.967, 130.87, 41.38, 177.6, 141.419, 141.23, 160.32, 125.03, 160.638, -18.5, 160.77, 150.05, 140.68, 160.72, 39.692, -175.13, -170.43, 146.708, 35.88, 179.4, 36.12, 158.688, 156.75, 18.53, 139.15, 158.38, -16.78, 159.03, -19.7, 105.423, 160.273, -21.42, -22.1, 160.527, 157.53, 129.93, 129.928, 130.22, 121.92, 131.25, -154.35, 28.52, 158.37, 80.2, -159.8, 140.78, 157.12, 139.68, 139.683, 41.208, 138.55, 144.43, 141.18, 25.8, 168.536, -16.72, 30.25, -17.83, -85.73, 17.33, -19.4, 148.15, 113.342, 148.42, -19.98, -71.5, -13.63, 10.87, -67.73, -121.508, -68.5, -174.65, 124.47, -73.55, -116.625, 111.192, 109.78, 35.902, 126.397, 122.842, -28.13, 159.83, -131.35, 122.775, 122.78, 123.505, -69.48, 40.28, -62.8, -67.88, 152.642, -60.05, 14.95, 14.95, 178.53, -22.23, -71.729, -68.53, -155.27, 124.792, 150.5, 151.158, 155.62, 155.43, 147.12, -71.161, 126.5, 36.45, -71.58, 168.346, 95.1, 99.209, 103.62, 37.75, 113.58, 147, -23.25, 40.2, -73.2, -178.47, -140.25, -75.4, -16.967, -85.515, 147.57, 123.175, -155.25, 124.853, 124.858, -69.833, 124.32, 127.4, -166.93, 107.65, 112.68, 123.597, -98.03, 123.63, 122.018, 99.667, 41.65, 157.98, 159.67, 148.33, 145.061, -17.1, 41.483, 40.82, 42.2, 123.22, 9.83, 130.292, 5.833, 121.2, 100.473, -90.47, 127.4, 44.22, 37.75, 120.5, -112.67, 176.08, 24.27, 37.97, -155.35, 123.6, -86.161, -104.83, 156.72, 144.57, 41.15, 171.32, 125.108, 145.217, -70.58, -155.47, -155.608, 29.33, 123.685, 176.25, 72.6, -123.5, -121.57, 148.83, 37.42, 139.73, -148.07, 26.47, 164.7, -72.88, 145.7, 36.07, -73.08, 110.442, 110.43, 168.05, 36.75, 23.336, -174.87, 160.25, -26.45, -102.25, -61.33, 106.7, -128.73, 151.78, 24.439, 141.905, -72.43, -85.153, -71.409, 139.53, -72.027, -176.75, -78.27, -78.267, 140.567, -85.968, -86.54, -25.88, -70.8, -119, -119.03, -177.188, -26.333, 163.533, 127.4, 167.67, -148.67, 42.4, -90.1, 29.67, -19.7, 149.35, 110.883, 148.13, 158.195, 139.85, 138.12, 144.775, 41.7, 177.983, 129.87, 36.27, 139.5, -96.75, 94.25, 140.73, 139.97, 120.4, -123.73, 121.78, -91.17, -68.25, -68.6, -77.964, -86.702, -86.32, 154.808, 42.02, -68.58, -62.58, -121.229, 142.5, 13.67, 175.63, 33.57, -71.753, 124.675, -12.483, 139.27, 138.03, 142.308, 139.38, 129.5, 143.03, 140.63, 140.882, 27.18, -175.63, 137.55, -126.783, -126.78, 36.05, -121.77, 168.33, -105.433, 48.48, -155.16, -66.483, 139.58, -166.33, 37.87, 29.2, 29.25, -169.618, -68.53, 98.98, 176.5, 133.33, -168.13, 10.5, 36.08, -68.48, 36.292, 157.477, -68.18, 2.53, 140.8, 139.5, 137.48, 157.335, -16.65, -97.268, 57, -85.473, 139.38, 139.37, 141.08, -72.493, 157.322, 160.82, 157.428, -67.67, 157.38, -90.601, 125.52, 145.8, 150.52, 36.18, -70, -72.5, 14.833, -70.295, 121.708, -68.2, 12.02, -71.95, 107.73, -98.7, -102.25, 124.892, 103.3, -61.37, -69.03, 120.98, 107.37, -55.77, -161.9, -161.87, -69.2, -68.15, -61.17, 112.63, 102.02, -57.93, 106.68, -76.78, -90.58, 96.329, -28.4, 167.33, -86.688, -68.65, -113.498, 120.35, -90.75, -61, 157.849, -70.57, -84.366, 165.5, 160.25, 158.47, 157.53, -84.233, 123.958, 120.48, 159.8, 95.23, -98.622, 45.783, 51.63, -20.58, 152.12, -115.305, 37.95, -28.08, -69.62, -69.617, -68.05, -78.463, -72.264, -76.4, -67.75, -67.87, -72.117, -72.53, 57.57, -61.05, -71.7, -89.35, -62.95, -78.9, -71.17, 152.203, 124.5, 36.17, 39.78, 153.25, -121.758, 105.625, 120.52, 103.92, -177.92, 153.02, 114.042, 145.125, -168.55, -73.7, -119.05, -152.75, 176.33, -70.92, -77.656, -22.5, -23.33, -85.324, 116.47, -70, 141.25, 148.121, -78.85, -67.717, -148.6, 158.8, -86.75, -163.6, 163.6, 125.425, 175.57, 145.567, 145.57, -133.32, 149.83, -75.322, 178.527, 178.478, 178.05, 178.197, 33.67, -72.667, 33.8, -63.23, 47.917, -71.85, -71.85, 46.433, -67.88, 148.094, 130.67, 106.73, -113.75, 8.52, -89.5, -87.004, -89.48, -80.12, 8.63, -28.08, -69.897, -114.384, -89.63, -95.169, -88.272, -68.4, -70.849, -115.996, -89.286, -88.852, 132.62, -121.93, -144.13, -104.73, -104.733, -78.33, 119.058, 120.025, -89.63, -113.625, -90.33, 8.75, -75.37, -91.552, -90.77, -89.87, -25.17, 120.55, 25.396, 6.72, 145.783, 145.78, 100.2, 153.2, -124.7, -172.525, 159.82, 46.12, 160.633, -60.05, 144.017, 160.08, 37.9, -172.52, 178.13, 104.32, 112.92, 179.62, 124.73, -97.47, -174.93, 130, 149.13, -25.78, 95.658, 160.87, 38.55, 40.85, -122.2, 138.52, 143.08, 141.33, 145.17, 154.98, -163.97, 161.083, 160.37, 161.36, -114.43, 98.52, 99.255, 36.23, 123.23, -126.3, 156.52, 98.392, 154.175, 95.98, -89.7, -126.67, 124.148, 109.208, 146.13, 140.05, 121.94, -23.78, 160.97, 160.75, -154.68, -77.58, -68.25, -110.95, 39.35, -71.52, 124.725, 99.539, 41.725, -76.58, -61.67, -62.18, -61.18, 36.6, -121.77, -113.417, -113.35, -113.206, 135.5, -130.68, 160.817, -152.25, -120.754, 152.92, 147.35, -61.67, -122.18, -162.12, 77.53, -119.72, -154.4, -160.002, -159.954, 15.213, 164.83, -89.78, 121.77, -77.626, 101.728, 110.058, 130.594, 109.992, -111.5, 104.27, 42.82, 145.1, 167.47, 36.35, 129.72, -169.454, 120.993, -88.532, -92.112, -69.77, 61.6, -174.233, 5, -89.9, 41.742, -91.903, 139.78, -112.08, -178.02, 155.608, 108.07, 99.98, 100.679, 118, 107.95, -169.767, -178.13, 100.317, 178.028, 107.6, 154.7, 123.579, 127.792, 99.7, 41.07, 137.6, 138.3, 121.52, 159.8, 176, -179.97, 152.2, -148.85, -88.502, -90.407, -86.845, 110.4, 96.808, 43.83, -16.641, 98.47, 112.95, -85.015, 129.125, 35.43, -27.32, 159.833, -16.83, 5.5, -17.6, -27.37, 82.5, 146.27, -70.595, 127.4, 127.42, -88.433, -87.63, 2.833, 165.8, -19.57, -70.352, -68.55, -68.55, 160.1, -17.1, -133.3, 139.28, 98.83, 127.675, 127.43, 8.5, -175.07, 16.333, 142.68, 160.33, -71.645, -71.645, -75.33, -91.189, 157.58, -99.758, 9.667, 124.83, -115.83, 175.642, 125.2, 154.93, -19.17, 140.32, 108, -111.858, 37.57, 16.45, 140.92, 169.23, -112.591, 149.92, -155.08, -29.331, -12.28, -70.9, -18.13, -70.03, -71.885, -128.9, 28.75, 46.017, 131.43, -67.95, -78.613, 39.13, -121.55, 157.6, -17.92, -78.442, 102.5, -69.8, 89.25, -83.77, -170.7, -70.358, -130.583, -66.483, 159.97, -121.6, -117.45, -70.903, 160.527, 117.47, -156.37, -113.13, 160.58, -156.52, 158.38, 151.33, -169.77, 130.87, 98, 147.875, 33.83, 110.33, 60.67, 121.83, 36.425, 132.25, 36.925, 37, 157.02, 157.33, -177.87, -169.07, 122.33, -175.33, -173.5, -78.78, -61.28, -27.75, 124.17, 158.95, -140.3, 168.63, 158.03, -104.3, 121.18, 134.75, -175.53, 45.167, -177.017, -175.75, -174.365, 144.483, 142.9, 143.2, -124.25, -103.583, -104.3, -107.95, -140.3, -143.167, -68.267, 85, 44.25, -21.83, 38.95, -15.83, 164.58, 39.63, 163, 39.07, 38.93, -24.5, -21.45, 43.6, -34.5, 153.33, 148.57, 36.258, -175.65, 37.67, -76.83, -65.6, -38.08, -25.83, -25.67, -163.83, -115, 144.48, 150.85, 161.75, -158.75, 142.9, 121.75, 146.256, -124.25, 151.28, 33.57, -160, 91.7, 158.3, 150.5, 147.208, 168.592, 143.2, 156.55, -155.42, 80.75, 45, 158.52, 147.78, 130.3, -171.72, 152.23, 152.8, 160.47, 140.83, -88.471, -86.9, 37.25, 159.97, 67.97, -80.167, -159.38, 159.53, 155.97, -20.28, 14.426, 109.05, 149.07, -73.28, -71.93, 158.3, 29.492, -71.65, -179.183, 17.28, 160.62, -168.68, 14.962, 11.93, -126.88, 149.075, -176.17, 150.9, -113.22, 137.5, -61.305, 17.55, 107.63, -120.57, -122.08, 6.85, -173.75, -164.65, 174.27, 177.18, 111.758, -91.35, -144.02, 126.12, 128.675, 128, 137.58, 27.1, 41.042, -157.18, -72.8, -72.83, 42.83, 169.425, -72.396, 145.858, -110.67, 123.95, -87.98, 146.75, 140.82, 162.45, -70.2, -67.5, -170.63, -87.63, 140.45, 159.95, -85.82, 158.385, 158.385, 151.95, -27.57, 122.458, 157.323, 159.147, 160.603, 42.18, 42.75, -108 ], "marker": { "color": "crimson", "opacity": 0.8, "size": 4 }, "mode": "markers", "showlegend": false, "type": "scattergeo" }, { "marker": { "color": "crimson" }, "showlegend": false, "type": "bar", "x": [ "United States", "Russia", "Indonesia", "Japan", "Chile", "Ethiopia", "Papua New Guinea", "Philippines", "Mexico", "Iceland" ], "xaxis": "x", "y": [ 184, 169, 136, 111, 87, 57, 54, 49, 41, 38 ], "yaxis": "y" }, { "scene": "scene", "showscale": false, "type": "surface", "z": [ [ 100, 100, 101, 101, 101, 101, 101, 100, 100, 100, 101, 101, 102, 102, 102, 102, 103, 104, 103, 102, 101, 101, 102, 103, 104, 104, 105, 107, 107, 107, 108, 108, 110, 110, 110, 110, 110, 110, 110, 110, 108, 108, 108, 107, 107, 108, 108, 108, 108, 108, 107, 107, 107, 107, 106, 106, 105, 105, 104, 104, 103 ], [ 101, 101, 102, 102, 102, 102, 102, 101, 101, 101, 102, 102, 103, 103, 103, 103, 104, 105, 104, 103, 102, 102, 103, 105, 106, 106, 107, 109, 110, 110, 110, 110, 111, 112, 113, 114, 116, 115, 114, 112, 110, 110, 110, 109, 108, 109, 109, 109, 109, 108, 108, 108, 108, 107, 107, 106, 106, 105, 105, 104, 104 ], [ 102, 102, 103, 103, 103, 103, 103, 102, 102, 102, 103, 103, 104, 104, 104, 104, 105, 106, 105, 104, 104, 105, 106, 107, 108, 110, 111, 113, 114, 115, 114, 115, 116, 118, 119, 119, 121, 121, 120, 118, 116, 114, 112, 111, 110, 110, 110, 110, 109, 109, 109, 109, 108, 108, 107, 107, 106, 106, 105, 105, 104 ], [ 103, 103, 104, 104, 104, 104, 104, 103, 103, 103, 103, 104, 104, 104, 105, 105, 106, 107, 106, 106, 106, 107, 108, 110, 111, 114, 117, 118, 117, 119, 120, 121, 122, 124, 125, 126, 127, 127, 126, 124, 122, 120, 117, 116, 113, 111, 110, 110, 110, 109, 109, 109, 109, 108, 108, 107, 107, 106, 106, 105, 105 ], [ 104, 104, 105, 105, 105, 105, 105, 104, 104, 103, 104, 104, 105, 105, 105, 106, 107, 108, 108, 108, 109, 110, 112, 114, 115, 118, 121, 122, 121, 123, 128, 131, 129, 130, 131, 131, 132, 132, 131, 130, 128, 126, 122, 119, 115, 114, 112, 110, 110, 110, 110, 110, 109, 109, 108, 107, 107, 107, 106, 106, 105 ], [ 105, 105, 105, 106, 106, 106, 106, 105, 105, 104, 104, 105, 105, 106, 106, 107, 109, 110, 110, 112, 113, 115, 116, 118, 119, 121, 124, 126, 126, 129, 134, 137, 137, 136, 136, 135, 136, 136, 136, 135, 133, 129, 126, 122, 118, 116, 115, 113, 111, 110, 110, 110, 110, 109, 108, 108, 108, 107, 107, 106, 106 ], [ 105, 106, 106, 107, 107, 107, 107, 106, 106, 105, 105, 106, 106, 107, 108, 109, 111, 113, 114, 116, 118, 120, 121, 122, 123, 125, 127, 129, 130, 135, 140, 142, 142, 142, 141, 140, 140, 140, 140, 139, 137, 134, 129, 125, 121, 118, 116, 114, 112, 110, 110, 110, 111, 110, 109, 109, 108, 108, 107, 107, 106 ], [ 106, 107, 107, 108, 108, 108, 108, 107, 107, 106, 106, 107, 108, 108, 110, 113, 115, 117, 118, 120, 122, 124, 125, 127, 128, 129, 131, 134, 135, 141, 146, 147, 146, 146, 145, 144, 144, 144, 143, 142, 141, 139, 135, 130, 126, 122, 118, 116, 114, 112, 112, 113, 112, 110, 110, 109, 109, 108, 108, 107, 106 ], [ 107, 108, 108, 109, 109, 109, 109, 108, 108, 107, 108, 108, 110, 111, 113, 116, 118, 120, 123, 125, 127, 129, 130, 132, 134, 135, 137, 139, 142, 146, 152, 152, 151, 151, 150, 149, 148, 148, 146, 145, 143, 142, 139, 135, 131, 127, 122, 119, 117, 115, 115, 115, 114, 112, 110, 110, 109, 109, 108, 107, 107 ], [ 108, 109, 109, 110, 110, 110, 110, 109, 109, 108, 110, 110, 113, 116, 118, 120, 122, 125, 127, 129, 133, 136, 138, 140, 141, 142, 148, 150, 151, 156, 158, 159, 158, 157, 158, 158, 154, 151, 149, 148, 146, 144, 141, 137, 134, 130, 125, 122, 120, 118, 117, 117, 115, 113, 111, 110, 110, 109, 108, 107, 107 ], [ 109, 110, 110, 111, 111, 111, 111, 110, 110, 110, 112, 114, 118, 121, 123, 125, 127, 129, 133, 137, 141, 143, 145, 146, 148, 150, 154, 156, 159, 161, 162, 163, 164, 163, 164, 164, 160, 157, 154, 151, 149, 146, 144, 140, 137, 133, 129, 126, 124, 121, 119, 118, 116, 114, 112, 111, 110, 109, 108, 107, 106 ], [ 110, 110, 111, 113, 112, 111, 113, 112, 112, 114, 116, 119, 121, 124, 127, 129, 133, 138, 143, 146, 149, 149, 151, 153, 154, 157, 159, 160, 163, 165, 166, 167, 168, 168, 168, 168, 166, 162, 159, 157, 154, 152, 149, 144, 140, 136, 133, 131, 128, 125, 122, 119, 117, 115, 113, 111, 110, 109, 108, 107, 106 ], [ 110, 111, 113, 115, 114, 113, 114, 114, 115, 117, 119, 121, 124, 126, 129, 133, 140, 145, 150, 154, 155, 155, 157, 159, 161, 162, 164, 165, 167, 168, 169, 170, 172, 174, 172, 172, 171, 169, 166, 163, 161, 158, 153, 148, 143, 140, 137, 134, 131, 128, 125, 120, 118, 116, 114, 112, 110, 109, 108, 107, 105 ], [ 111, 113, 115, 117, 116, 115, 116, 117, 117, 119, 121, 124, 126, 128, 132, 137, 143, 151, 156, 161, 161, 162, 163, 165, 166, 167, 168, 170, 171, 173, 175, 177, 179, 178, 177, 176, 176, 174, 171, 169, 165, 161, 156, 152, 148, 144, 140, 138, 135, 131, 127, 123, 119, 117, 115, 113, 111, 110, 108, 106, 105 ], [ 114, 115, 117, 117, 117, 118, 119, 119, 120, 121, 124, 126, 128, 131, 137, 143, 150, 156, 160, 163, 165, 168, 170, 171, 172, 173, 174, 175, 177, 179, 180, 182, 183, 183, 183, 183, 180, 178, 177, 172, 168, 164, 160, 156, 152, 148, 144, 141, 138, 134, 130, 126, 121, 117, 114, 112, 110, 110, 108, 106, 104 ], [ 116, 118, 118, 118, 120, 121, 121, 122, 122, 123, 125, 128, 130, 134, 141, 147, 152, 156, 160, 165, 168, 170, 174, 176, 179, 180, 181, 181, 182, 182, 183, 184, 186, 187, 187, 184, 184, 181, 180, 176, 172, 168, 165, 161, 157, 153, 149, 145, 142, 138, 133, 129, 125, 120, 115, 111, 110, 110, 108, 106, 104 ], [ 118, 120, 120, 121, 122, 123, 124, 124, 125, 126, 127, 129, 132, 135, 142, 149, 153, 157, 161, 166, 170, 174, 178, 180, 182, 183, 184, 184, 185, 186, 186, 187, 189, 189, 189, 189, 189, 186, 182, 179, 175, 171, 168, 165, 162, 157, 152, 149, 145, 141, 137, 131, 125, 120, 116, 111, 110, 110, 108, 106, 104 ], [ 120, 121, 122, 123, 124, 125, 126, 127, 127, 128, 130, 132, 134, 137, 142, 151, 155, 158, 162, 169, 172, 176, 181, 183, 184, 186, 187, 188, 189, 189, 189, 189, 190, 190, 191, 190, 190, 188, 186, 183, 180, 175, 171, 168, 165, 161, 157, 152, 149, 145, 141, 134, 127, 121, 116, 112, 110, 110, 108, 106, 104 ], [ 120, 122, 125, 126, 126, 127, 128, 129, 130, 130, 132, 134, 136, 139, 145, 152, 157, 160, 167, 172, 175, 178, 181, 185, 186, 188, 190, 191, 192, 193, 193, 192, 192, 191, 192, 191, 191, 190, 190, 187, 184, 181, 177, 172, 169, 165, 161, 156, 152, 147, 143, 139, 131, 123, 119, 115, 111, 110, 108, 106, 105 ], [ 121, 124, 126, 128, 129, 129, 130, 131, 132, 133, 135, 137, 139, 143, 150, 154, 159, 164, 170, 173, 176, 179, 184, 186, 189, 190, 191, 192, 193, 194, 195, 194, 193, 192, 191, 191, 191, 191, 190, 190, 188, 184, 181, 177, 173, 169, 165, 160, 155, 149, 145, 142, 136, 129, 123, 118, 114, 110, 108, 108, 107 ], [ 122, 125, 127, 130, 130, 131, 133, 134, 135, 136, 137, 140, 143, 147, 154, 158, 162, 166, 171, 174, 177, 181, 186, 189, 190, 190, 191, 192, 191, 191, 190, 189, 188, 189, 190, 190, 191, 190, 190, 190, 189, 186, 184, 181, 177, 173, 169, 164, 158, 152, 148, 144, 140, 134, 125, 118, 115, 111, 110, 108, 107 ], [ 122, 125, 128, 130, 132, 133, 135, 136, 137, 139, 140, 143, 147, 152, 157, 161, 164, 168, 172, 175, 179, 182, 186, 190, 190, 190, 190, 189, 187, 184, 184, 183, 182, 182, 183, 183, 183, 184, 185, 186, 187, 186, 185, 184, 181, 177, 173, 169, 163, 157, 149, 145, 141, 136, 130, 119, 116, 112, 110, 108, 106 ], [ 123, 126, 129, 131, 133, 135, 137, 138, 139, 141, 143, 147, 150, 156, 161, 164, 167, 170, 173, 177, 181, 184, 187, 188, 190, 189, 187, 185, 183, 179, 176, 174, 174, 174, 174, 174, 176, 177, 179, 180, 182, 183, 182, 181, 181, 180, 176, 171, 166, 160, 152, 147, 142, 138, 133, 126, 121, 115, 110, 106, 105 ], [ 124, 127, 130, 132, 135, 137, 138, 140, 142, 144, 147, 149, 154, 157, 161, 165, 168, 171, 175, 178, 181, 184, 186, 187, 187, 184, 184, 181, 179, 175, 171, 169, 168, 168, 168, 169, 170, 172, 174, 177, 178, 179, 180, 181, 181, 180, 179, 174, 167, 161, 155, 148, 144, 139, 134, 128, 121, 115, 110, 106, 105 ], [ 123, 128, 131, 133, 136, 138, 140, 142, 144, 146, 149, 151, 154, 157, 160, 164, 168, 172, 175, 178, 181, 183, 184, 184, 185, 183, 180, 177, 174, 170, 167, 165, 164, 164, 164, 165, 166, 168, 171, 175, 176, 178, 180, 181, 180, 180, 179, 177, 170, 163, 157, 150, 144, 139, 134, 128, 121, 115, 110, 108, 107 ], [ 123, 127, 131, 134, 136, 138, 140, 142, 144, 147, 149, 151, 154, 157, 160, 164, 168, 171, 174, 178, 180, 181, 181, 182, 183, 181, 178, 173, 169, 166, 163, 161, 161, 160, 160, 161, 163, 165, 168, 173, 176, 178, 179, 180, 181, 180, 180, 175, 173, 166, 159, 152, 145, 139, 134, 127, 121, 115, 110, 109, 108 ], [ 120, 124, 128, 131, 134, 137, 139, 142, 144, 146, 149, 151, 153, 156, 160, 163, 167, 171, 174, 178, 180, 180, 180, 180, 180, 180, 175, 171, 167, 162, 160, 158, 157, 157, 157, 158, 159, 162, 166, 170, 175, 177, 178, 180, 181, 181, 180, 178, 175, 169, 160, 154, 148, 140, 134, 128, 121, 115, 110, 110, 109 ], [ 118, 121, 125, 129, 132, 134, 137, 140, 142, 145, 147, 149, 151, 155, 159, 163, 166, 169, 173, 177, 179, 180, 180, 180, 180, 179, 174, 169, 166, 161, 158, 156, 154, 153, 153, 154, 156, 159, 163, 169, 173, 175, 178, 180, 181, 180, 180, 179, 175, 170, 160, 154, 149, 142, 135, 128, 122, 116, 111, 110, 110 ], [ 117, 120, 121, 125, 129, 132, 135, 138, 140, 143, 145, 147, 149, 153, 157, 160, 163, 166, 171, 174, 177, 179, 180, 180, 180, 179, 172, 168, 164, 160, 157, 154, 151, 149, 150, 150, 154, 158, 164, 169, 174, 178, 180, 180, 180, 180, 178, 177, 175, 170, 161, 153, 148, 142, 135, 129, 123, 116, 113, 112, 110 ], [ 115, 118, 120, 122, 126, 130, 133, 136, 138, 141, 143, 145, 148, 151, 154, 157, 160, 163, 168, 171, 174, 177, 179, 179, 179, 176, 171, 167, 164, 160, 156, 153, 149, 148, 149, 151, 155, 158, 163, 170, 173, 177, 179, 180, 180, 180, 178, 175, 173, 171, 162, 154, 147, 141, 136, 130, 124, 117, 115, 112, 110 ], [ 114, 116, 118, 120, 122, 127, 131, 133, 136, 138, 141, 143, 146, 148, 151, 154, 157, 160, 164, 168, 171, 174, 178, 178, 179, 177, 173, 169, 165, 161, 157, 154, 151, 149, 150, 152, 155, 159, 166, 171, 175, 177, 179, 180, 180, 179, 176, 174, 171, 168, 159, 151, 146, 141, 135, 129, 124, 119, 116, 113, 110 ], [ 115, 114, 116, 118, 120, 122, 127, 129, 132, 136, 139, 141, 143, 146, 148, 151, 153, 156, 160, 164, 167, 172, 174, 176, 177, 176, 173, 170, 166, 162, 159, 157, 154, 153, 154, 155, 158, 161, 169, 172, 174, 176, 178, 178, 178, 178, 175, 172, 169, 162, 156, 149, 144, 140, 134, 128, 123, 118, 115, 112, 110 ], [ 113, 113, 114, 116, 118, 120, 122, 125, 129, 133, 136, 138, 141, 143, 146, 149, 150, 153, 156, 160, 165, 170, 173, 176, 176, 176, 173, 172, 169, 165, 163, 160, 158, 157, 158, 159, 161, 166, 170, 170, 173, 175, 176, 178, 176, 173, 171, 168, 164, 158, 153, 146, 140, 137, 132, 127, 121, 117, 113, 111, 110 ], [ 111, 112, 113, 114, 116, 118, 120, 122, 126, 130, 133, 136, 139, 142, 145, 147, 148, 151, 155, 158, 163, 168, 173, 176, 177, 177, 176, 174, 171, 169, 166, 164, 161, 161, 162, 164, 165, 167, 170, 170, 171, 173, 173, 173, 170, 168, 165, 163, 160, 155, 149, 143, 138, 134, 130, 125, 119, 116, 112, 110, 109 ], [ 110, 112, 113, 113, 114, 116, 118, 120, 123, 127, 131, 134, 137, 141, 143, 145, 148, 150, 154, 157, 161, 166, 171, 176, 178, 178, 178, 176, 174, 172, 170, 167, 167, 167, 166, 168, 170, 169, 168, 167, 168, 168, 168, 168, 167, 165, 163, 160, 156, 152, 146, 140, 136, 131, 128, 122, 118, 114, 110, 110, 109 ], [ 109, 110, 111, 112, 114, 116, 118, 119, 120, 124, 128, 131, 136, 140, 142, 145, 147, 150, 153, 157, 160, 165, 170, 174, 178, 179, 179, 178, 178, 176, 174, 171, 170, 170, 170, 168, 167, 166, 164, 163, 161, 162, 163, 163, 163, 161, 160, 157, 153, 148, 142, 136, 130, 127, 124, 120, 117, 113, 110, 110, 109 ], [ 108, 109, 111, 112, 114, 116, 117, 118, 120, 121, 125, 128, 132, 138, 142, 144, 147, 149, 153, 156, 160, 164, 170, 174, 178, 180, 180, 179, 179, 178, 176, 172, 170, 170, 170, 168, 166, 164, 162, 160, 157, 156, 157, 158, 158, 156, 153, 151, 149, 144, 139, 130, 127, 124, 121, 118, 115, 112, 110, 110, 109 ], [ 108, 109, 111, 113, 114, 116, 117, 118, 119, 120, 122, 126, 130, 135, 139, 143, 147, 149, 152, 156, 160, 164, 169, 173, 177, 180, 180, 180, 180, 179, 178, 174, 170, 170, 168, 167, 165, 163, 161, 157, 154, 153, 152, 152, 152, 149, 148, 147, 144, 140, 134, 128, 125, 122, 119, 117, 114, 110, 110, 109, 109 ], [ 107, 108, 111, 112, 114, 115, 116, 117, 119, 120, 121, 124, 128, 133, 137, 141, 145, 149, 152, 156, 160, 164, 168, 172, 176, 179, 180, 180, 180, 179, 178, 174, 170, 168, 166, 165, 163, 161, 158, 154, 150, 149, 148, 146, 145, 143, 143, 143, 140, 136, 130, 126, 123, 120, 118, 115, 112, 110, 110, 109, 109 ], [ 107, 108, 110, 112, 113, 113, 115, 116, 118, 120, 122, 125, 128, 132, 136, 140, 145, 148, 150, 155, 160, 164, 167, 170, 174, 177, 179, 179, 178, 176, 176, 173, 169, 166, 164, 163, 161, 159, 155, 152, 148, 145, 143, 141, 140, 139, 139, 138, 136, 132, 128, 124, 121, 118, 116, 114, 111, 110, 110, 109, 108 ], [ 107, 108, 109, 111, 113, 114, 116, 117, 119, 120, 122, 125, 128, 132, 137, 141, 144, 146, 149, 152, 157, 162, 166, 168, 171, 173, 175, 175, 173, 172, 172, 171, 168, 165, 162, 160, 158, 156, 153, 149, 145, 142, 139, 138, 137, 136, 135, 133, 131, 129, 126, 122, 119, 117, 114, 112, 110, 110, 109, 108, 107 ], [ 108, 109, 110, 112, 114, 115, 116, 117, 119, 120, 122, 126, 129, 133, 137, 141, 143, 146, 148, 151, 155, 160, 164, 167, 168, 169, 170, 170, 169, 168, 167, 168, 166, 163, 160, 158, 155, 153, 150, 147, 143, 140, 137, 136, 134, 133, 132, 130, 129, 127, 125, 121, 118, 115, 112, 110, 110, 110, 108, 107, 107 ], [ 109, 110, 111, 113, 115, 116, 117, 118, 120, 121, 123, 126, 129, 133, 138, 141, 143, 146, 148, 150, 155, 159, 163, 165, 166, 167, 168, 168, 166, 165, 164, 161, 160, 159, 158, 155, 152, 149, 147, 144, 141, 138, 135, 134, 132, 130, 129, 128, 126, 124, 122, 120, 117, 113, 111, 110, 110, 110, 108, 107, 107 ], [ 110, 111, 112, 113, 116, 117, 118, 119, 120, 122, 125, 127, 130, 133, 138, 141, 143, 146, 148, 150, 154, 159, 162, 163, 164, 166, 166, 166, 165, 163, 161, 159, 157, 156, 155, 153, 150, 146, 143, 140, 138, 136, 133, 132, 130, 129, 128, 125, 124, 122, 120, 119, 117, 114, 111, 110, 110, 109, 108, 107, 107 ], [ 111, 112, 113, 114, 116, 117, 118, 119, 120, 123, 125, 128, 130, 134, 139, 141, 144, 146, 148, 151, 154, 158, 161, 164, 166, 167, 168, 166, 165, 163, 161, 158, 156, 154, 152, 150, 146, 142, 139, 137, 135, 133, 131, 130, 129, 128, 127, 125, 123, 121, 120, 118, 116, 113, 111, 110, 110, 109, 108, 107, 106 ], [ 111, 112, 113, 115, 117, 118, 118, 120, 121, 124, 126, 128, 131, 135, 139, 142, 144, 146, 148, 151, 155, 160, 164, 165, 168, 169, 169, 168, 166, 163, 160, 158, 156, 153, 151, 148, 145, 142, 139, 137, 135, 132, 130, 129, 127, 126, 125, 124, 123, 120, 120, 117, 116, 114, 112, 110, 110, 108, 107, 106, 106 ], [ 112, 113, 114, 116, 117, 118, 119, 120, 122, 124, 127, 129, 132, 135, 139, 142, 144, 146, 149, 152, 157, 162, 167, 169, 170, 170, 170, 168, 165, 163, 161, 159, 157, 155, 151, 148, 145, 141, 139, 136, 134, 132, 130, 128, 127, 126, 124, 123, 122, 120, 119, 117, 116, 114, 112, 111, 109, 107, 106, 106, 105 ], [ 113, 114, 115, 116, 117, 119, 119, 120, 122, 125, 127, 129, 132, 135, 139, 142, 144, 147, 149, 154, 159, 164, 169, 170, 170, 170, 170, 170, 168, 165, 163, 161, 158, 155, 151, 148, 145, 142, 139, 137, 135, 132, 131, 128, 126, 125, 124, 122, 121, 120, 119, 117, 115, 113, 111, 110, 109, 106, 105, 105, 104 ], [ 113, 114, 115, 117, 118, 119, 120, 121, 123, 125, 127, 130, 132, 135, 139, 142, 145, 148, 150, 156, 161, 166, 170, 170, 170, 170, 170, 170, 169, 166, 163, 161, 159, 155, 151, 148, 146, 143, 140, 138, 135, 134, 132, 130, 127, 125, 123, 121, 120, 120, 119, 116, 114, 112, 110, 110, 108, 106, 105, 104, 104 ], [ 114, 115, 116, 117, 118, 119, 120, 121, 123, 126, 128, 130, 133, 136, 139, 142, 145, 148, 152, 157, 161, 166, 168, 170, 170, 170, 170, 168, 166, 164, 163, 160, 159, 155, 151, 148, 146, 143, 141, 138, 136, 134, 132, 130, 128, 125, 123, 121, 120, 120, 118, 116, 113, 111, 110, 110, 109, 106, 105, 104, 104 ], [ 115, 116, 117, 118, 119, 120, 121, 121, 123, 126, 128, 131, 134, 136, 139, 142, 145, 149, 152, 157, 161, 163, 164, 166, 168, 167, 166, 164, 163, 161, 160, 158, 156, 152, 149, 147, 144, 143, 141, 139, 136, 134, 132, 130, 128, 125, 122, 120, 120, 119, 117, 115, 113, 110, 110, 109, 107, 106, 105, 104, 104 ], [ 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 128, 131, 134, 137, 139, 142, 145, 149, 152, 156, 159, 159, 160, 162, 162, 161, 161, 160, 159, 158, 157, 155, 153, 150, 148, 146, 145, 143, 142, 140, 137, 134, 131, 129, 126, 124, 122, 120, 119, 117, 115, 113, 111, 110, 109, 109, 107, 106, 105, 104, 104 ], [ 114, 115, 116, 116, 118, 119, 120, 121, 122, 126, 129, 132, 135, 137, 140, 143, 146, 149, 152, 155, 156, 157, 158, 159, 159, 159, 158, 158, 157, 155, 153, 151, 150, 149, 147, 146, 145, 144, 142, 141, 138, 135, 132, 128, 125, 122, 120, 118, 117, 115, 113, 112, 110, 109, 108, 108, 106, 105, 105, 104, 104 ], [ 113, 114, 115, 116, 117, 118, 119, 120, 123, 126, 129, 132, 135, 138, 140, 143, 146, 148, 151, 153, 154, 156, 157, 157, 157, 157, 156, 155, 154, 152, 150, 149, 148, 147, 146, 145, 144, 142, 141, 140, 139, 136, 132, 129, 125, 121, 118, 116, 115, 113, 111, 110, 109, 108, 108, 107, 106, 105, 104, 104, 104 ], [ 112, 113, 114, 115, 116, 117, 119, 120, 122, 126, 130, 133, 136, 138, 141, 143, 146, 148, 150, 152, 154, 155, 155, 155, 155, 155, 154, 152, 152, 150, 148, 147, 146, 145, 145, 143, 142, 141, 140, 140, 140, 137, 133, 129, 125, 120, 117, 115, 111, 110, 110, 109, 108, 107, 107, 106, 105, 105, 104, 104, 103 ], [ 111, 112, 114, 115, 116, 117, 118, 120, 122, 125, 131, 134, 137, 139, 142, 144, 146, 148, 150, 152, 153, 153, 153, 153, 153, 153, 153, 151, 149, 147, 146, 144, 144, 143, 143, 142, 141, 140, 140, 140, 140, 138, 134, 130, 123, 120, 118, 111, 110, 110, 110, 108, 107, 106, 108, 105, 105, 104, 104, 103, 103 ], [ 111, 112, 113, 115, 115, 116, 117, 119, 121, 126, 131, 135, 138, 140, 142, 144, 146, 148, 150, 151, 151, 151, 151, 151, 151, 151, 151, 150, 148, 146, 144, 142, 141, 141, 142, 141, 140, 140, 140, 140, 140, 140, 136, 132, 126, 120, 115, 110, 110, 110, 109, 107, 106, 105, 107, 105, 104, 104, 104, 103, 103 ], [ 112, 113, 113, 114, 115, 116, 117, 119, 122, 127, 132, 135, 139, 141, 143, 145, 147, 149, 150, 150, 150, 150, 150, 150, 150, 150, 150, 149, 147, 144, 142, 141, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 137, 133, 128, 120, 117, 110, 110, 110, 108, 106, 105, 105, 106, 105, 104, 104, 103, 103, 103 ], [ 112, 113, 114, 114, 116, 117, 118, 120, 122, 128, 132, 136, 139, 141, 144, 146, 147, 149, 150, 150, 150, 150, 150, 150, 150, 150, 150, 149, 146, 143, 141, 140, 140, 139, 139, 139, 140, 140, 140, 140, 140, 140, 137, 133, 129, 121, 118, 110, 110, 109, 107, 106, 105, 105, 105, 104, 104, 103, 103, 103, 102 ], [ 112, 114, 114, 115, 116, 117, 119, 120, 122, 128, 133, 136, 140, 142, 144, 146, 148, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 148, 145, 142, 140, 138, 138, 138, 137, 138, 140, 140, 140, 140, 140, 140, 137, 134, 130, 122, 118, 110, 110, 108, 106, 105, 103, 104, 104, 104, 104, 103, 103, 102, 102 ], [ 113, 114, 115, 116, 116, 117, 118, 120, 123, 129, 133, 137, 140, 142, 144, 146, 149, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 147, 143, 141, 139, 137, 136, 136, 135, 136, 138, 140, 140, 140, 140, 139, 136, 134, 130, 123, 119, 113, 109, 108, 106, 104, 103, 104, 104, 104, 103, 103, 102, 102, 101 ], [ 114, 115, 115, 116, 117, 118, 118, 120, 123, 129, 133, 137, 140, 143, 145, 147, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 148, 145, 142, 139, 138, 136, 135, 134, 134, 134, 136, 138, 137, 138, 139, 137, 134, 132, 125, 122, 117, 114, 109, 107, 105, 103, 102, 104, 104, 103, 103, 102, 102, 101, 101 ], [ 114, 115, 116, 117, 117, 119, 118, 120, 123, 128, 132, 136, 139, 142, 145, 148, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 147, 144, 141, 139, 136, 135, 134, 133, 132, 132, 134, 134, 134, 134, 135, 133, 131, 128, 124, 120, 116, 113, 110, 107, 104, 102, 102, 103, 103, 103, 102, 102, 102, 101, 100 ], [ 115, 116, 116, 117, 118, 119, 119, 120, 124, 128, 132, 136, 139, 142, 145, 148, 150, 150, 150, 150, 150, 150, 150, 150, 150, 149, 146, 143, 140, 138, 135, 134, 133, 131, 131, 131, 131, 131, 131, 131, 130, 127, 124, 122, 119, 117, 115, 112, 109, 106, 104, 101, 102, 103, 103, 102, 102, 102, 101, 100, 100 ], [ 115, 116, 117, 118, 118, 119, 120, 123, 125, 128, 131, 135, 138, 141, 145, 148, 150, 150, 150, 150, 150, 150, 150, 150, 150, 147, 145, 142, 139, 137, 134, 132, 131, 130, 129, 128, 128, 128, 128, 128, 126, 123, 121, 119, 116, 114, 112, 110, 108, 105, 103, 101, 103, 103, 103, 102, 102, 101, 100, 100, 100 ], [ 116, 117, 118, 118, 119, 120, 122, 123, 125, 128, 131, 134, 137, 141, 145, 148, 149, 150, 150, 150, 150, 150, 150, 150, 148, 145, 143, 141, 138, 135, 133, 130, 129, 128, 127, 126, 125, 125, 125, 124, 123, 120, 118, 116, 114, 111, 109, 107, 106, 104, 102, 100, 101, 101, 102, 102, 101, 100, 100, 100, 100 ], [ 116, 117, 118, 119, 120, 121, 123, 124, 126, 128, 130, 133, 137, 140, 144, 145, 147, 148, 149, 150, 149, 149, 147, 146, 144, 141, 139, 136, 133, 131, 129, 128, 127, 126, 125, 124, 123, 123, 122, 121, 120, 118, 116, 114, 112, 108, 107, 105, 103, 102, 100, 100, 100, 100, 101, 101, 100, 100, 100, 100, 100 ], [ 117, 118, 119, 119, 120, 121, 123, 124, 126, 128, 129, 131, 135, 139, 142, 143, 145, 146, 147, 147, 147, 146, 144, 142, 140, 138, 135, 133, 130, 128, 127, 126, 125, 124, 123, 122, 121, 120, 119, 118, 117, 115, 114, 112, 110, 106, 105, 102, 101, 100, 100, 100, 100, 100, 100, 100, 100, 99, 99, 99, 99 ], [ 117, 118, 119, 120, 120, 121, 123, 124, 125, 126, 128, 129, 132, 137, 140, 142, 143, 143, 144, 144, 144, 143, 141, 139, 137, 135, 133, 130, 128, 127, 126, 125, 123, 122, 121, 120, 119, 117, 116, 115, 114, 112, 111, 108, 107, 105, 100, 100, 100, 100, 100, 100, 100, 99, 99, 99, 99, 99, 99, 99, 98 ], [ 116, 117, 118, 120, 120, 121, 122, 123, 124, 125, 126, 128, 130, 134, 139, 140, 141, 141, 141, 141, 141, 140, 138, 136, 134, 133, 131, 129, 127, 125, 124, 123, 122, 120, 119, 118, 117, 116, 114, 112, 111, 108, 109, 106, 106, 100, 100, 100, 100, 100, 99, 99, 99, 99, 99, 99, 99, 98, 98, 98, 97 ], [ 114, 115, 116, 117, 119, 119, 120, 121, 122, 123, 125, 127, 129, 133, 136, 134, 134, 136, 138, 138, 137, 137, 135, 133, 132, 130, 129, 127, 125, 124, 122, 121, 120, 119, 117, 116, 115, 114, 112, 110, 109, 108, 107, 105, 105, 100, 100, 100, 100, 99, 99, 99, 98, 98, 98, 98, 98, 97, 97, 97, 97 ], [ 112, 113, 114, 115, 116, 116, 117, 119, 120, 122, 124, 126, 127, 129, 129, 128, 127, 129, 132, 133, 133, 133, 133, 131, 129, 127, 126, 125, 124, 122, 121, 119, 118, 117, 116, 114, 113, 112, 110, 109, 108, 106, 106, 105, 100, 100, 100, 98, 98, 98, 98, 98, 98, 97, 97, 97, 97, 97, 97, 97, 96 ], [ 109, 111, 112, 112, 113, 113, 113, 114, 116, 119, 121, 123, 124, 125, 124, 123, 123, 123, 125, 127, 129, 129, 128, 128, 127, 125, 124, 123, 122, 121, 119, 118, 117, 116, 114, 113, 112, 110, 109, 108, 107, 106, 105, 100, 100, 100, 97, 97, 97, 97, 97, 97, 97, 96, 96, 96, 96, 96, 96, 96, 96 ], [ 106, 107, 108, 108, 109, 110, 110, 112, 113, 114, 117, 119, 120, 121, 119, 117, 117, 117, 118, 120, 123, 124, 125, 125, 125, 123, 121, 120, 120, 119, 118, 117, 116, 115, 114, 113, 111, 109, 109, 107, 106, 105, 100, 100, 100, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96 ], [ 104, 105, 105, 106, 106, 107, 108, 108, 109, 109, 111, 115, 116, 114, 113, 112, 111, 110, 111, 113, 116, 119, 122, 122, 122, 121, 120, 119, 118, 118, 117, 116, 115, 114, 113, 112, 111, 108, 108, 106, 105, 100, 100, 100, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96 ], [ 102, 103, 103, 104, 104, 105, 106, 106, 107, 108, 109, 111, 112, 110, 109, 108, 108, 108, 108, 109, 110, 112, 116, 117, 117, 118, 118, 118, 117, 116, 116, 115, 114, 113, 112, 111, 110, 107, 107, 105, 100, 100, 100, 97, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96 ], [ 101, 102, 103, 103, 104, 105, 105, 106, 106, 107, 108, 109, 109, 107, 106, 106, 105, 105, 105, 106, 107, 108, 109, 110, 111, 113, 114, 115, 115, 115, 114, 113, 112, 111, 110, 108, 108, 106, 105, 100, 100, 100, 97, 97, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96 ], [ 100, 101, 102, 102, 103, 103, 104, 104, 105, 106, 106, 107, 106, 106, 106, 105, 105, 104, 103, 103, 104, 105, 107, 108, 110, 111, 111, 112, 112, 113, 113, 112, 111, 110, 108, 107, 106, 105, 100, 100, 100, 98, 97, 97, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96 ], [ 100, 101, 101, 102, 102, 103, 103, 104, 104, 105, 105, 105, 105, 106, 105, 105, 104, 103, 102, 101, 102, 103, 104, 106, 107, 110, 111, 111, 111, 112, 112, 112, 110, 107, 107, 106, 105, 102, 100, 100, 99, 98, 97, 97, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 95 ], [ 99, 100, 101, 102, 102, 103, 103, 103, 104, 104, 104, 104, 103, 104, 104, 104, 104, 102, 101, 101, 102, 103, 104, 105, 107, 110, 111, 111, 111, 111, 111, 111, 108, 106, 105, 105, 102, 101, 100, 99, 99, 98, 97, 97, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 95, 95 ], [ 99, 100, 100, 101, 101, 102, 102, 102, 103, 103, 103, 103, 102, 103, 103, 104, 103, 102, 101, 101, 101, 102, 103, 104, 106, 109, 110, 111, 111, 111, 110, 110, 107, 105, 103, 104, 100, 100, 99, 99, 98, 98, 97, 97, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 95, 95, 95, 95, 95, 95, 95 ], [ 99, 100, 100, 100, 101, 101, 101, 102, 102, 103, 102, 102, 101, 102, 102, 103, 103, 101, 101, 100, 101, 101, 102, 103, 105, 109, 110, 110, 111, 110, 110, 109, 106, 105, 100, 102, 100, 99, 99, 99, 98, 98, 97, 97, 96, 96, 96, 96, 96, 96, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 94 ], [ 99, 99, 99, 99, 100, 100, 101, 101, 102, 102, 101, 101, 101, 101, 101, 102, 102, 101, 100, 100, 101, 101, 101, 103, 104, 107, 109, 109, 110, 110, 109, 108, 105, 102, 100, 100, 99, 99, 99, 98, 98, 98, 97, 96, 96, 96, 96, 96, 95, 95, 95, 95, 95, 95, 95, 94, 94, 94, 94, 94, 94 ], [ 98, 99, 99, 99, 99, 100, 100, 101, 101, 102, 101, 100, 100, 100, 101, 101, 101, 100, 100, 100, 100, 101, 101, 101, 103, 106, 107, 109, 109, 109, 109, 107, 104, 101, 100, 99, 99, 99, 98, 98, 98, 97, 96, 96, 96, 96, 95, 95, 95, 95, 95, 95, 95, 94, 94, 94, 94, 94, 94, 94, 94 ], [ 98, 98, 98, 99, 99, 99, 100, 100, 101, 101, 100, 100, 99, 99, 100, 100, 100, 100, 100, 100, 100, 101, 101, 101, 102, 105, 106, 109, 108, 109, 107, 105, 102, 100, 100, 99, 99, 98, 98, 98, 97, 96, 96, 96, 96, 95, 95, 95, 95, 95, 95, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94 ], [ 97, 98, 98, 98, 99, 99, 99, 100, 100, 100, 100, 100, 99, 99, 99, 100, 100, 100, 100, 100, 100, 100, 101, 101, 101, 103, 104, 105, 106, 105, 104, 101, 100, 100, 99, 99, 98, 98, 97, 97, 97, 96, 96, 96, 95, 95, 95, 95, 95, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94 ], [ 97, 97, 97, 98, 98, 99, 99, 99, 100, 100, 100, 99, 99, 99, 99, 99, 100, 100, 100, 100, 100, 100, 101, 101, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 99, 99, 98, 97, 97, 97, 96, 96, 96, 95, 95, 95, 95, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94 ] ] } ], "layout": { "annotations": [ { "showarrow": false, "text": "Source: NOAA", "x": 0, "xref": "paper", "y": 0, "yref": "paper" } ], "geo": { "domain": { "x": [ 0, 0.54 ], "y": [ 0, 1 ] }, "lakecolor": "LightBlue", "landcolor": "white", "oceancolor": "MidnightBlue", "projection": { "type": "orthographic" }, "showocean": true }, "margin": { "b": 40, "l": 60, "r": 10, "t": 25 }, "scene": { "domain": { "x": [ 0.64, 1 ], "y": [ 0, 0.51 ] } }, "template": { "data": { "bar": [ { "error_x": { "color": "#f2f5fa" }, "error_y": { "color": "#f2f5fa" }, "marker": { "line": { "color": "rgb(17,17,17)", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "rgb(17,17,17)", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#A2B1C6", "gridcolor": "#506784", "linecolor": "#506784", "minorgridcolor": "#506784", "startlinecolor": "#A2B1C6" }, "baxis": { "endlinecolor": "#A2B1C6", "gridcolor": "#506784", "linecolor": "#506784", "minorgridcolor": "#506784", "startlinecolor": "#A2B1C6" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "line": { "color": "#283442" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "line": { "color": "#283442" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#506784" }, "line": { "color": "rgb(17,17,17)" } }, "header": { "fill": { "color": "#2a3f5f" }, "line": { "color": "rgb(17,17,17)" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#f2f5fa", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#f2f5fa" }, "geo": { "bgcolor": "rgb(17,17,17)", "lakecolor": "rgb(17,17,17)", "landcolor": "rgb(17,17,17)", "showlakes": true, "showland": true, "subunitcolor": "#506784" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "dark" }, "paper_bgcolor": "rgb(17,17,17)", "plot_bgcolor": "rgb(17,17,17)", "polar": { "angularaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "bgcolor": "rgb(17,17,17)", "radialaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "gridwidth": 2, "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3" }, "yaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "gridwidth": 2, "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3" }, "zaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "gridwidth": 2, "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3" } }, "shapedefaults": { "line": { "color": "#f2f5fa" } }, "sliderdefaults": { "bgcolor": "#C8D4E3", "bordercolor": "rgb(17,17,17)", "borderwidth": 1, "tickwidth": 0 }, "ternary": { "aaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "baxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "bgcolor": "rgb(17,17,17)", "caxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" } }, "title": { "x": 0.05 }, "updatemenudefaults": { "bgcolor": "#506784", "borderwidth": 0 }, "xaxis": { "automargin": true, "gridcolor": "#283442", "linecolor": "#506784", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#283442", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "#283442", "linecolor": "#506784", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#283442", "zerolinewidth": 2 } } }, "xaxis": { "anchor": "y", "domain": [ 0.64, 1 ], "tickangle": 45 }, "yaxis": { "anchor": "x", "domain": [ 0.66, 1 ] } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly.graph_objects as go\n", "from plotly.subplots import make_subplots\n", "\n", "import pandas as pd\n", "go.FigureWidget();\n", "\n", "# read in volcano database data\n", "df = pd.read_csv(\n", " \"https://raw.githubusercontent.com/plotly/datasets/master/volcano_db.csv\",\n", " encoding=\"iso-8859-1\",\n", ")\n", "\n", "# frequency of Country\n", "freq = df\n", "freq = freq.Country.value_counts().reset_index().rename(columns={\"index\": \"x\"})\n", "\n", "# read in 3d volcano surface data\n", "df_v = pd.read_csv(\"https://raw.githubusercontent.com/plotly/datasets/master/volcano.csv\")\n", "\n", "# Initialize figure with subplots\n", "fig = make_subplots(\n", " rows=2, cols=2,\n", " column_widths=[0.6, 0.4],\n", " row_heights=[0.4, 0.6],\n", " specs=[[{\"type\": \"scattergeo\", \"rowspan\": 2}, {\"type\": \"bar\"}],\n", " [ None , {\"type\": \"surface\"}]])\n", "\n", "# Add scattergeo globe map of volcano locations\n", "fig.add_trace(\n", " go.Scattergeo(lat=df[\"Latitude\"],\n", " lon=df[\"Longitude\"],\n", " mode=\"markers\",\n", " hoverinfo=\"text\",\n", " showlegend=False,\n", " marker=dict(color=\"crimson\", size=4, opacity=0.8)),\n", " row=1, col=1\n", ")\n", "\n", "# Add locations bar chart\n", "fig.add_trace(\n", " go.Bar(x=freq[\"x\"][0:10],y=freq[\"Country\"][0:10], marker=dict(color=\"crimson\"), showlegend=False),\n", " row=1, col=2\n", ")\n", "\n", "# Add 3d surface of volcano\n", "fig.add_trace(\n", " go.Surface(z=df_v.values.tolist(), showscale=False),\n", " row=2, col=2\n", ")\n", "\n", "# Update geo subplot properties\n", "fig.update_geos(\n", " projection_type=\"orthographic\",\n", " landcolor=\"white\",\n", " oceancolor=\"MidnightBlue\",\n", " showocean=True,\n", " lakecolor=\"LightBlue\"\n", ")\n", "\n", "# Rotate x-axis labels\n", "fig.update_xaxes(tickangle=45)\n", "\n", "# Set theme, margin, and annotation in layout\n", "fig.update_layout(\n", " template=\"plotly_dark\",\n", " margin=dict(r=10, t=25, b=40, l=60),\n", " annotations=[\n", " dict(\n", " text=\"Source: NOAA\",\n", " showarrow=False,\n", " xref=\"paper\",\n", " yref=\"paper\",\n", " x=0,\n", " y=0)\n", " ]\n", ")\n", "\n", "fig.show()" ] }, { "cell_type": "code", "execution_count": null, "id": "eeddb0eb", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "jupytext": { "formats": "md:myst", "text_representation": { "extension": ".md", "format_name": "myst" } }, "kernelspec": { "display_name": "Python 3.10.4 ('tvmx': conda)", "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.10.4" }, "source_map": [ 11, 35, 48, 72, 152 ], "vscode": { "interpreter": { "hash": "e579259ee6098e2b9319de590d145b4b096774fe457bdf04260e3ba5c171e887" } } }, "nbformat": 4, "nbformat_minor": 5 }