diff --git a/dev/404.html b/dev/404.html index 77fac74ae..c54ac9b2b 100644 --- a/dev/404.html +++ b/dev/404.html @@ -5,10 +5,10 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>404 | DimensionalData.jl</title> <meta name="description" content="Not Found"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> @@ -18,7 +18,7 @@ </head> <body> <div id="app"></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/api/dimensions.html b/dev/api/dimensions.html index a8604f3d8..c2772a0d2 100644 --- a/dev/api/dimensions.html +++ b/dev/api/dimensions.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Dimensions | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/api_dimensions.md.CnOMCJ83.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/api_dimensions.md.SBrxkSyF.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,8 +20,8 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_api_dimensions" data-v-83890dd9><div><h1 id="dimensions" tabindex="-1">Dimensions <a class="header-anchor" href="#dimensions" aria-label="Permalink to "Dimensions""></a></h1><p>Dimensions are kept in the sub-module <code>Dimensions</code>.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions" href="#DimensionalData.Dimensions"><span class="jlbinding">DimensionalData.Dimensions</span></a> <span class="VPBadge info jlObjectType jlModule"><!--[-->Module<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p>Sub-module for <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s wrappers, and operations on them used in DimensionalData.jl.</p><p>To load <code>Dimensions</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/Dimensions.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p></details><p>Dimensions have a type-hierarchy that organises plotting and dimension matching.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Dimension" href="#DimensionalData.Dimensions.Dimension"><span class="jlbinding">DimensionalData.Dimensions.Dimension</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension</span></span></code></pre></div><p>Abstract supertype of all dimension types.</p><p>Example concrete implementations are <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.X"><code>X</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Y"><code>Y</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Z"><code>Z</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Ti"><code>Ti</code></a> (Time), and the custom <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimension.</p><p><code>Dimension</code>s label the axes of an <code>AbstractDimArray</code>, or other dimensional objects, and are used to index into an array.</p><p>They may also wrap lookup values for each array axis. This may be any <code>AbstractVector</code> matching the array axis length, but will usually be converted to a <code>Lookup</code> when use in a constructed object.</p><p>A <code>Lookup</code> gives more details about the dimension, such as that it is <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> along some transect. DimensionalData will attempt to guess the lookup from the passed-in index value.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_api_dimensions" data-v-83890dd9><div><h1 id="dimensions" tabindex="-1">Dimensions <a class="header-anchor" href="#dimensions" aria-label="Permalink to "Dimensions""></a></h1><p>Dimensions are kept in the sub-module <code>Dimensions</code>.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions" href="#DimensionalData.Dimensions"><span class="jlbinding">DimensionalData.Dimensions</span></a> <span class="VPBadge info jlObjectType jlModule"><!--[-->Module<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p>Sub-module for <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s wrappers, and operations on them used in DimensionalData.jl.</p><p>To load <code>Dimensions</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/Dimensions.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p></details><p>Dimensions have a type-hierarchy that organises plotting and dimension matching.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Dimension" href="#DimensionalData.Dimensions.Dimension"><span class="jlbinding">DimensionalData.Dimensions.Dimension</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension</span></span></code></pre></div><p>Abstract supertype of all dimension types.</p><p>Example concrete implementations are <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.X"><code>X</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Y"><code>Y</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Z"><code>Z</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Ti"><code>Ti</code></a> (Time), and the custom <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimension.</p><p><code>Dimension</code>s label the axes of an <code>AbstractDimArray</code>, or other dimensional objects, and are used to index into an array.</p><p>They may also wrap lookup values for each array axis. This may be any <code>AbstractVector</code> matching the array axis length, but will usually be converted to a <code>Lookup</code> when use in a constructed object.</p><p>A <code>Lookup</code> gives more details about the dimension, such as that it is <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> along some transect. DimensionalData will attempt to guess the lookup from the passed-in index value.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> @@ -73,21 +73,21 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Ti Sampled{Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DateTime} Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"2021-01-01T00:00:00"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"2021-12-01T00:00:00"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">02</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> …</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L1-L92" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.DependentDim" href="#DimensionalData.Dimensions.DependentDim"><span class="jlbinding">DimensionalData.Dimensions.DependentDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for dependent dimensions. These will plot on the Y axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L102-L106" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.IndependentDim" href="#DimensionalData.Dimensions.IndependentDim"><span class="jlbinding">DimensionalData.Dimensions.IndependentDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IndependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for independent dimensions. These will plot on the X axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L95-L99" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.XDim" href="#DimensionalData.Dimensions.XDim"><span class="jlbinding">DimensionalData.Dimensions.XDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">XDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all X dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L109-L113" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.YDim" href="#DimensionalData.Dimensions.YDim"><span class="jlbinding">DimensionalData.Dimensions.YDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">YDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Y dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L116-L120" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.ZDim" href="#DimensionalData.Dimensions.ZDim"><span class="jlbinding">DimensionalData.Dimensions.ZDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ZDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Z dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L123-L127" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.TimeDim" href="#DimensionalData.Dimensions.TimeDim"><span class="jlbinding">DimensionalData.Dimensions.TimeDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">TimeDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all time dimensions.</p><p>In a <code>TimeDime</code> with <code>Interval</code> sampling the locus will automatically be set to <code>Start()</code>. Dates and times generally refer to the start of a month, hour, second etc., not the central point as is more common with spatial data. `</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L130-L138" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.X" href="#DimensionalData.Dimensions.X"><span class="jlbinding">DimensionalData.Dimensions.X</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> XDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L1-L92" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.DependentDim" href="#DimensionalData.Dimensions.DependentDim"><span class="jlbinding">DimensionalData.Dimensions.DependentDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for dependent dimensions. These will plot on the Y axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L102-L106" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.IndependentDim" href="#DimensionalData.Dimensions.IndependentDim"><span class="jlbinding">DimensionalData.Dimensions.IndependentDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IndependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for independent dimensions. These will plot on the X axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L95-L99" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.XDim" href="#DimensionalData.Dimensions.XDim"><span class="jlbinding">DimensionalData.Dimensions.XDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">XDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all X dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L109-L113" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.YDim" href="#DimensionalData.Dimensions.YDim"><span class="jlbinding">DimensionalData.Dimensions.YDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">YDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Y dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L116-L120" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.ZDim" href="#DimensionalData.Dimensions.ZDim"><span class="jlbinding">DimensionalData.Dimensions.ZDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ZDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Z dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L123-L127" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.TimeDim" href="#DimensionalData.Dimensions.TimeDim"><span class="jlbinding">DimensionalData.Dimensions.TimeDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">TimeDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all time dimensions.</p><p>In a <code>TimeDime</code> with <code>Interval</code> sampling the locus will automatically be set to <code>Start()</code>. Dates and times generally refer to the start of a month, hour, second etc., not the central point as is more common with spatial data. `</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L130-L138" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.X" href="#DimensionalData.Dimensions.X"><span class="jlbinding">DimensionalData.Dimensions.X</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> XDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>X <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>X <: XDim <: IndependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">xdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L465-L485" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Y" href="#DimensionalData.Dimensions.Y"><span class="jlbinding">DimensionalData.Dimensions.Y</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> YDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>X <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>X <: XDim <: IndependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">xdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L465-L485" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Y" href="#DimensionalData.Dimensions.Y"><span class="jlbinding">DimensionalData.Dimensions.Y</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> YDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Y <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Y <: YDim <: DependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ydim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L488-L508" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Z" href="#DimensionalData.Dimensions.Z"><span class="jlbinding">DimensionalData.Dimensions.Z</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ZDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Y <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Y <: YDim <: DependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ydim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L488-L508" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Z" href="#DimensionalData.Dimensions.Z"><span class="jlbinding">DimensionalData.Dimensions.Z</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ZDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Z <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Z <: ZDim <: Dimension</code></p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">zdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L511-L530" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Ti" href="#DimensionalData.Dimensions.Ti"><span class="jlbinding">DimensionalData.Dimensions.Ti</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><p>m Ti <: TimeDim</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>Ti(val=:)</span></span></code></pre></div><p>Time <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Ti <: TimeDim <: IndependentDim</code></p><p><code>Time</code> is already used by Dates, and <code>T</code> is a common type parameter, We use <code>Ti</code> to avoid clashes.</p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">timedim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L533-L556" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Dim" href="#DimensionalData.Dimensions.Dim"><span class="jlbinding">DimensionalData.Dimensions.Dim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{S}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>A generic dimension. For use when custom dims are required when loading data from a file. Can be used as keyword arguments for indexing.</p><p>Dimension types take precedence over same named <code>Dim</code> types when indexing with symbols, or e.g. creating Tables.jl keys.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:custom}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">custom [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L350-L363" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.AnonDim" href="#DimensionalData.Dimensions.AnonDim"><span class="jlbinding">DimensionalData.Dimensions.AnonDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AnonDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Z <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Z <: ZDim <: Dimension</code></p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">zdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L511-L530" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Ti" href="#DimensionalData.Dimensions.Ti"><span class="jlbinding">DimensionalData.Dimensions.Ti</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><p>m Ti <: TimeDim</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>Ti(val=:)</span></span></code></pre></div><p>Time <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Ti <: TimeDim <: IndependentDim</code></p><p><code>Time</code> is already used by Dates, and <code>T</code> is a common type parameter, We use <code>Ti</code> to avoid clashes.</p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">timedim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L533-L556" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Dim" href="#DimensionalData.Dimensions.Dim"><span class="jlbinding">DimensionalData.Dimensions.Dim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{S}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>A generic dimension. For use when custom dims are required when loading data from a file. Can be used as keyword arguments for indexing.</p><p>Dimension types take precedence over same named <code>Dim</code> types when indexing with symbols, or e.g. creating Tables.jl keys.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:custom}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">custom [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L350-L363" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.AnonDim" href="#DimensionalData.Dimensions.AnonDim"><span class="jlbinding">DimensionalData.Dimensions.AnonDim</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AnonDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AnonDim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Anonymous dimension. Used when extra dimensions are created, such as during transpose of a vector.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L388-L395" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.@dim" href="#DimensionalData.Dimensions.@dim"><span class="jlbinding">DimensionalData.Dimensions.@dim</span></a> <span class="VPBadge info jlObjectType jlMacro"><!--[-->Macro<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> typ [supertype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension] [label</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">String</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">string</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(typ)]</span></span></code></pre></div><p>Macro to easily define new dimensions.</p><p>The supertype will be inserted into the type of the dim. The default is simply <code>YourDim <: Dimension</code>.</p><p>Making a Dimension inherit from <code>XDim</code>, <code>YDim</code>, <code>ZDim</code> or <code>TimeDim</code> will affect automatic plot layout and other methods that dispatch on these types. <code><: YDim</code> are plotted on the Y axis, <code><: XDim</code> on the X axis, etc.</p><p><code>label</code> is used in plots and similar, if the dimension is short for a longer word.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AnonDim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Anonymous dimension. Used when extra dimensions are created, such as during transpose of a vector.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L388-L395" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.@dim" href="#DimensionalData.Dimensions.@dim"><span class="jlbinding">DimensionalData.Dimensions.@dim</span></a> <span class="VPBadge info jlObjectType jlMacro"><!--[-->Macro<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> typ [supertype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension] [label</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">String</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">string</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(typ)]</span></span></code></pre></div><p>Macro to easily define new dimensions.</p><p>The supertype will be inserted into the type of the dim. The default is simply <code>YourDim <: Dimension</code>.</p><p>Making a Dimension inherit from <code>XDim</code>, <code>YDim</code>, <code>ZDim</code> or <code>TimeDim</code> will affect automatic plot layout and other methods that dispatch on these types. <code><: YDim</code> are plotted on the Y axis, <code><: XDim</code> on the X axis, etc.</p><p><code>label</code> is used in plots and similar, if the dimension is short for a longer word.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, YDim, XDim</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lat YDim </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Latitude"</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lon XDim </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Longitude"</span></span> -<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L404-L428" target="_blank" rel="noreferrer">source</a></p></details><h3 id="Exported-methods" tabindex="-1">Exported methods <a class="header-anchor" href="#Exported-methods" aria-label="Permalink to "Exported methods {#Exported-methods}""></a></h3><p>These are widely useful methods for working with dimensions.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dims-api-dimensions" href="#DimensionalData.Dimensions.dims-api-dimensions"><span class="jlbinding">DimensionalData.Dimensions.dims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L404-L428" target="_blank" rel="noreferrer">source</a></p></details><h3 id="Exported-methods" tabindex="-1">Exported methods <a class="header-anchor" href="#Exported-methods" aria-label="Permalink to "Exported methods {#Exported-methods}""></a></h3><p>These are widely useful methods for working with dimensions.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dims-api-dimensions" href="#DimensionalData.Dimensions.dims-api-dimensions"><span class="jlbinding">DimensionalData.Dimensions.dims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Get the dimension(s) matching the type(s) of the query dimension.</p><p>Lookup can be an Int or an Dimension, or a tuple containing any combination of either.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or a single <code>Dimension</code> or <code>Dimension</code> <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z))</span></span> @@ -101,7 +101,7 @@ <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.otherdims-api-dimensions" href="#DimensionalData.Dimensions.otherdims-api-dimensions"><span class="jlbinding">DimensionalData.Dimensions.otherdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.otherdims-api-dimensions" href="#DimensionalData.Dimensions.otherdims-api-dimensions"><span class="jlbinding">DimensionalData.Dimensions.otherdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -109,7 +109,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Y, Z))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dimnum-api-dimensions" href="#DimensionalData.Dimensions.dimnum-api-dimensions"><span class="jlbinding">DimensionalData.Dimensions.dimnum</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dimnum-api-dimensions" href="#DimensionalData.Dimensions.dimnum-api-dimensions"><span class="jlbinding">DimensionalData.Dimensions.dimnum</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Int</span></span></code></pre></div><p>Get the number(s) of <code>Dimension</code>(s) as ordered in the dimensions of an object.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple, Array or single <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p>The return type will be a Tuple of <code>Int</code> or a single <code>Int</code>, depending on whether <code>query</code> is a <code>Tuple</code> or single <code>Dimension</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> @@ -118,7 +118,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Y)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.hasdim-api-dimensions" href="#DimensionalData.Dimensions.hasdim-api-dimensions"><span class="jlbinding">DimensionalData.Dimensions.hasdim</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.hasdim-api-dimensions" href="#DimensionalData.Dimensions.hasdim-api-dimensions"><span class="jlbinding">DimensionalData.Dimensions.hasdim</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if an object <code>x</code> has dimensions that match or inherit from the <code>query</code> dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>Check if an object or tuple contains an <code>Dimension</code>, or a tuple of dimensions.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -131,13 +131,13 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p></details><h3 id="Non-exported-methods" tabindex="-1">Non-exported methods <a class="header-anchor" href="#Non-exported-methods" aria-label="Permalink to "Non-exported methods {#Non-exported-methods}""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.lookup" href="#DimensionalData.Dimensions.lookup"><span class="jlbinding">DimensionalData.Dimensions.lookup</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p></details><h3 id="Non-exported-methods" tabindex="-1">Non-exported methods <a class="header-anchor" href="#Non-exported-methods" aria-label="Permalink to "Non-exported methods {#Non-exported-methods}""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.lookup" href="#DimensionalData.Dimensions.lookup"><span class="jlbinding">DimensionalData.Dimensions.lookup</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Lookup}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Lookup}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span></code></pre></div><p>Returns the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> of a dimension. This dictates properties of the dimension such as array axis and lookup order, and sampling properties.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p>This is separate from <code>val</code> in that it will only work when dimensions actually contain an <code>AbstractArray</code> lookup, and can be used on a <code>DimArray</code> or <code>DimStack</code> to retrieve all lookups, as there is no ambiguity of meaning as there is with <code>val</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L91-L107" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.label" href="#DimensionalData.Dimensions.label"><span class="jlbinding">DimensionalData.Dimensions.label</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span></code></pre></div><p>Returns the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> of a dimension. This dictates properties of the dimension such as array axis and lookup order, and sampling properties.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p>This is separate from <code>val</code> in that it will only work when dimensions actually contain an <code>AbstractArray</code> lookup, and can be used on a <code>DimArray</code> or <code>DimStack</code> to retrieve all lookups, as there is no ambiguity of meaning as there is with <code>val</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L91-L107" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.label" href="#DimensionalData.Dimensions.label"><span class="jlbinding">DimensionalData.Dimensions.label</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span></code></pre></div><p>Get a plot label for data or a dimension. This will include the name and units if they exist, and anything else that should be shown on a plot.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L159-L170" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.format" href="#DimensionalData.Dimensions.format"><span class="jlbinding">DimensionalData.Dimensions.format</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Format the passed-in dimension(s) <code>dims</code> to match the object <code>x</code>.</p><p>Errors are thrown if dims don't match the array dims or size, and any fields holding <code>Auto-</code> objects are filled with guessed objects.</p><p>If a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> hasn't been specified, a lookup is chosen based on the type and element type of the values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/format.jl#L5-L15" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dims2indices" href="#DimensionalData.Dimensions.dims2indices"><span class="jlbinding">DimensionalData.Dimensions.dims2indices</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims2indices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Union{Colon,AbstractArray,Int}}</span></span></code></pre></div><p>Convert a <code>Dimension</code> or <code>Selector</code> <code>I</code> to indices of <code>Int</code>, <code>AbstractArray</code> or <code>Colon</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/indexing.jl#L26-L30" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.selectindices" href="#DimensionalData.Dimensions.Lookups.selectindices"><span class="jlbinding">DimensionalData.Dimensions.Lookups.selectindices</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">selectindices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lookups, selectors)</span></span></code></pre></div><p>Converts <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a> to regular indices.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1091-L1095" target="_blank" rel="noreferrer">source</a></p></details><h3 id="Primitive-methods" tabindex="-1">Primitive methods <a class="header-anchor" href="#Primitive-methods" aria-label="Permalink to "Primitive methods {#Primitive-methods}""></a></h3><p>These low-level methods are really for internal use, but can be useful for writing dimensional algorithms.</p><p>They are not guaranteed to keep their interface, but usually will.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.commondims" href="#DimensionalData.Dimensions.commondims"><span class="jlbinding">DimensionalData.Dimensions.commondims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>This is basically <code>dims(x, query)</code> where the order of the original is kept, unlike <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> where the query tuple determines the order</p><p>Also unlike <code>dims</code>,<code>commondims</code> always returns a <code>Tuple</code>, no matter the input. No errors are thrown if dims are absent from either <code>x</code> or <code>query</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span></code></pre></div><p>Get a plot label for data or a dimension. This will include the name and units if they exist, and anything else that should be shown on a plot.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L159-L170" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.format" href="#DimensionalData.Dimensions.format"><span class="jlbinding">DimensionalData.Dimensions.format</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Format the passed-in dimension(s) <code>dims</code> to match the object <code>x</code>.</p><p>Errors are thrown if dims don't match the array dims or size, and any fields holding <code>Auto-</code> objects are filled with guessed objects.</p><p>If a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> hasn't been specified, a lookup is chosen based on the type and element type of the values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/format.jl#L5-L15" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dims2indices" href="#DimensionalData.Dimensions.dims2indices"><span class="jlbinding">DimensionalData.Dimensions.dims2indices</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims2indices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Union{Colon,AbstractArray,Int}}</span></span></code></pre></div><p>Convert a <code>Dimension</code> or <code>Selector</code> <code>I</code> to indices of <code>Int</code>, <code>AbstractArray</code> or <code>Colon</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/indexing.jl#L26-L30" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.selectindices" href="#DimensionalData.Dimensions.Lookups.selectindices"><span class="jlbinding">DimensionalData.Dimensions.Lookups.selectindices</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">selectindices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lookups, selectors)</span></span></code></pre></div><p>Converts <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a> to regular indices.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1091-L1095" target="_blank" rel="noreferrer">source</a></p></details><h3 id="Primitive-methods" tabindex="-1">Primitive methods <a class="header-anchor" href="#Primitive-methods" aria-label="Permalink to "Primitive methods {#Primitive-methods}""></a></h3><p>These low-level methods are really for internal use, but can be useful for writing dimensional algorithms.</p><p>They are not guaranteed to keep their interface, but usually will.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.commondims" href="#DimensionalData.Dimensions.commondims"><span class="jlbinding">DimensionalData.Dimensions.commondims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>This is basically <code>dims(x, query)</code> where the order of the original is kept, unlike <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> where the query tuple determines the order</p><p>Also unlike <code>dims</code>,<code>commondims</code> always returns a <code>Tuple</code>, no matter the input. No errors are thrown if dims are absent from either <code>x</code> or <code>query</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -148,9 +148,9 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L155-L181" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.name2dim" href="#DimensionalData.Dimensions.name2dim"><span class="jlbinding">DimensionalData.Dimensions.name2dim</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Symbol</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L155-L181" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.name2dim" href="#DimensionalData.Dimensions.name2dim"><span class="jlbinding">DimensionalData.Dimensions.name2dim</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Symbol</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span></code></pre></div><p>Convert a symbol to a dimension object. <code>:X</code>, <code>:Y</code>, <code>:Ti</code> etc will be converted to <code>X()</code>, <code>Y()</code>, <code>Ti()</code>, as with any other dims generated with the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.@dim"><code>@dim</code></a> macro.</p><p>All other <code>Symbol</code>s <code>S</code> will generate <code>Dim{S}()</code> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L40-L49" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.reducedims" href="#DimensionalData.Dimensions.reducedims"><span class="jlbinding">DimensionalData.Dimensions.reducedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reducedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dimstoreduce) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Replace the specified dimensions with an index of length 1. This is usually to match a new array size where an axis has been reduced with a method like <code>mean</code> or <code>reduce</code> to a length of 1, but the number of dimensions has not changed.</p><p><code>Lookup</code> traits are also updated to correspond to the change in cell step, sampling type and order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L475-L485" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.swapdims" href="#DimensionalData.Dimensions.swapdims"><span class="jlbinding">DimensionalData.Dimensions.swapdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">T</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> T</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span></code></pre></div><p>Convert a symbol to a dimension object. <code>:X</code>, <code>:Y</code>, <code>:Ti</code> etc will be converted to <code>X()</code>, <code>Y()</code>, <code>Ti()</code>, as with any other dims generated with the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.@dim"><code>@dim</code></a> macro.</p><p>All other <code>Symbol</code>s <code>S</code> will generate <code>Dim{S}()</code> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L40-L49" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.reducedims" href="#DimensionalData.Dimensions.reducedims"><span class="jlbinding">DimensionalData.Dimensions.reducedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reducedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dimstoreduce) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Replace the specified dimensions with an index of length 1. This is usually to match a new array size where an axis has been reduced with a method like <code>mean</code> or <code>reduce</code> to a length of 1, but the number of dimensions has not changed.</p><p><code>Lookup</code> traits are also updated to correspond to the change in cell step, sampling type and order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L475-L485" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.swapdims" href="#DimensionalData.Dimensions.swapdims"><span class="jlbinding">DimensionalData.Dimensions.swapdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">T</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> T</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Swap dimensions for the passed in dimensions, in the order passed.</p><p>Passing in the <code>Dimension</code> types rewraps the dimension index, keeping the index values and metadata, while constructed <code>Dimension</code> objects replace the original dimension. <code>nothing</code> leaves the original dimension as-is.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>newdim</code>: Tuple of <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}, Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}, Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}))</span></span> @@ -163,21 +163,21 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└───────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">[:, :, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L343-L376" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.slicedims" href="#DimensionalData.Dimensions.slicedims"><span class="jlbinding">DimensionalData.Dimensions.slicedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span></code></pre></div><p>Slice the dimensions to match the axis values of the new array.</p><p>All methods return a tuple containing two tuples: the new dimensions, and the reference dimensions. The ref dimensions are no longer used in the new struct but are useful to give context to plots.</p><p>Called at the array level the returned tuple will also include the previous reference dims attached to the array.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: a function <code>getindex</code>, <code>view</code> or <code>dotview</code>. This will be used for slicing <code>getindex</code> is the default if <code>f</code> is not included.</p></li><li><p><code>x</code>: An <code>AbstractDimArray</code>, <code>Tuple</code> of <code>Dimension</code>, or <code>Dimension</code></p></li><li><p><code>I</code>: A tuple of <code>Integer</code>, <code>Colon</code> or <code>AbstractArray</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L389-L408" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.comparedims" href="#DimensionalData.Dimensions.comparedims"><span class="jlbinding">DimensionalData.Dimensions.comparedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L343-L376" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.slicedims" href="#DimensionalData.Dimensions.slicedims"><span class="jlbinding">DimensionalData.Dimensions.slicedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span></code></pre></div><p>Slice the dimensions to match the axis values of the new array.</p><p>All methods return a tuple containing two tuples: the new dimensions, and the reference dimensions. The ref dimensions are no longer used in the new struct but are useful to give context to plots.</p><p>Called at the array level the returned tuple will also include the previous reference dims attached to the array.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: a function <code>getindex</code>, <code>view</code> or <code>dotview</code>. This will be used for slicing <code>getindex</code> is the default if <code>f</code> is not included.</p></li><li><p><code>x</code>: An <code>AbstractDimArray</code>, <code>Tuple</code> of <code>Dimension</code>, or <code>Dimension</code></p></li><li><p><code>I</code>: A tuple of <code>Integer</code>, <code>Colon</code> or <code>AbstractArray</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L389-L408" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.comparedims" href="#DimensionalData.Dimensions.comparedims"><span class="jlbinding">DimensionalData.Dimensions.comparedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Type{Bool}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Check that dimensions or tuples of dimensions passed as each argument are the same, and return the first valid dimension. If <code>AbstractDimArray</code>s are passed as arguments their dimensions are compared.</p><p>Empty tuples and <code>nothing</code> dimension values are ignored, returning the <code>Dimension</code> value if it exists.</p><p>Passing <code>Bool</code> as the first argument means <code>true</code>/<code>false</code> will be returned, rather than throwing an error.</p><p><strong>Keywords</strong></p><p>These are all <code>Bool</code> flags:</p><ul><li><p><code>type</code>: compare dimension type, <code>true</code> by default.</p></li><li><p><code>valtype</code>: compare wrapped value type, <code>false</code> by default.</p></li><li><p><code>val</code>: compare wrapped values, <code>false</code> by default.</p></li><li><p><code>order</code>: compare order, <code>false</code> by default.</p></li><li><p><code>length</code>: compare lengths, <code>true</code> by default.</p></li><li><p><code>ignore_length_one</code>: ignore length <code>1</code> in comparisons, and return whichever dimension is not length 1, if any. This is useful in e.g. broadcasting comparisons. <code>false</code> by default.</p></li><li><p><code>msg</code>: DimensionalData.Warn or DimensionalData.Throw. Both may contain string, which will be added to error or warning mesages.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L502-L532" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.combinedims" href="#DimensionalData.Dimensions.combinedims"><span class="jlbinding">DimensionalData.Dimensions.combinedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">combinedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs; check</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Combine the dimensions of each object in <code>xs</code>, in the order they are found.</p><p>Keywords are passed to <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.comparedims"><code>comparedims</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L697-L703" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.sortdims" href="#DimensionalData.Dimensions.sortdims"><span class="jlbinding">DimensionalData.Dimensions.sortdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sortdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], tosort, order) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Sort dimensions <code>tosort</code> by <code>order</code>. Dimensions in <code>order</code> but missing from <code>tosort</code> are replaced with <code>nothing</code>.</p><p><code>tosort</code> and <code>order</code> can be <code>Tuple</code>s or <code>Vector</code>s or Dimension or dimension type. Abstract supertypes like <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.TimeDim"><code>TimeDim</code></a> can be used in <code>order</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L62-L73" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.basetypeof" href="#DimensionalData.Dimensions.Lookups.basetypeof"><span class="jlbinding">DimensionalData.Dimensions.Lookups.basetypeof</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basetypeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Type</span></span></code></pre></div><p>Get the "base" type of an object - the minimum required to define the object without it's fields. By default this is the full <code>UnionAll</code> for the type. But custom <code>basetypeof</code> methods can be defined for types with free type parameters.</p><p>In DimensionalData this is primarily used for comparing <code>Dimension</code>s, where <code>Dim{:x}</code> is different from <code>Dim{:y}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/utils.jl#L62-L72" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.basedims" href="#DimensionalData.Dimensions.basedims"><span class="jlbinding">DimensionalData.Dimensions.basedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Symbol,Type}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Returns <code>basetypeof(d)()</code> or a <code>Tuple</code> of called on a <code>Tuple</code>.</p><p>See <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Lookups.basetypeof"><code>basetypeof</code></a></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L731-L738" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.setdims" href="#DimensionalData.Dimensions.setdims"><span class="jlbinding">DimensionalData.Dimensions.setdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(X, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Type{Bool}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Check that dimensions or tuples of dimensions passed as each argument are the same, and return the first valid dimension. If <code>AbstractDimArray</code>s are passed as arguments their dimensions are compared.</p><p>Empty tuples and <code>nothing</code> dimension values are ignored, returning the <code>Dimension</code> value if it exists.</p><p>Passing <code>Bool</code> as the first argument means <code>true</code>/<code>false</code> will be returned, rather than throwing an error.</p><p><strong>Keywords</strong></p><p>These are all <code>Bool</code> flags:</p><ul><li><p><code>type</code>: compare dimension type, <code>true</code> by default.</p></li><li><p><code>valtype</code>: compare wrapped value type, <code>false</code> by default.</p></li><li><p><code>val</code>: compare wrapped values, <code>false</code> by default.</p></li><li><p><code>order</code>: compare order, <code>false</code> by default.</p></li><li><p><code>length</code>: compare lengths, <code>true</code> by default.</p></li><li><p><code>ignore_length_one</code>: ignore length <code>1</code> in comparisons, and return whichever dimension is not length 1, if any. This is useful in e.g. broadcasting comparisons. <code>false</code> by default.</p></li><li><p><code>msg</code>: DimensionalData.Warn or DimensionalData.Throw. Both may contain string, which will be added to error or warning mesages.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L502-L532" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.combinedims" href="#DimensionalData.Dimensions.combinedims"><span class="jlbinding">DimensionalData.Dimensions.combinedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">combinedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs; check</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Combine the dimensions of each object in <code>xs</code>, in the order they are found.</p><p>Keywords are passed to <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.comparedims"><code>comparedims</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L697-L703" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.sortdims" href="#DimensionalData.Dimensions.sortdims"><span class="jlbinding">DimensionalData.Dimensions.sortdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sortdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], tosort, order) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Sort dimensions <code>tosort</code> by <code>order</code>. Dimensions in <code>order</code> but missing from <code>tosort</code> are replaced with <code>nothing</code>.</p><p><code>tosort</code> and <code>order</code> can be <code>Tuple</code>s or <code>Vector</code>s or Dimension or dimension type. Abstract supertypes like <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.TimeDim"><code>TimeDim</code></a> can be used in <code>order</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L62-L73" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.basetypeof" href="#DimensionalData.Dimensions.Lookups.basetypeof"><span class="jlbinding">DimensionalData.Dimensions.Lookups.basetypeof</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basetypeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Type</span></span></code></pre></div><p>Get the "base" type of an object - the minimum required to define the object without it's fields. By default this is the full <code>UnionAll</code> for the type. But custom <code>basetypeof</code> methods can be defined for types with free type parameters.</p><p>In DimensionalData this is primarily used for comparing <code>Dimension</code>s, where <code>Dim{:x}</code> is different from <code>Dim{:y}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/utils.jl#L62-L72" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.basedims" href="#DimensionalData.Dimensions.basedims"><span class="jlbinding">DimensionalData.Dimensions.basedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Symbol,Type}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Returns <code>basetypeof(d)()</code> or a <code>Tuple</code> of called on a <code>Tuple</code>.</p><p>See <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Lookups.basetypeof"><code>basetypeof</code></a></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L731-L738" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.setdims" href="#DimensionalData.Dimensions.setdims"><span class="jlbinding">DimensionalData.Dimensions.setdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(X, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractArray</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Replaces the first dim matching <code><: basetypeof(newdim)</code> with newdim, and returns a new object or tuple with the dimension updated.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>newdim</code>: Tuple or single <code>Dimension</code>, <code>Type</code> or <code>Symbol</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">B </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())))</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(B, Y)</span></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Char} ForwardOrdered</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">wrapping</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L312-L333" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dimsmatch" href="#DimensionalData.Dimensions.dimsmatch"><span class="jlbinding">DimensionalData.Dimensions.dimsmatch</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dim, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Compare 2 dimensions or <code>Tuple</code> of <code>Dimension</code> are of the same base type, or are at least rotations/transformations of the same type.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L4-L12" target="_blank" rel="noreferrer">source</a></p></details></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/api/dimensions.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/api/reference" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>API Reference</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>LookupArrays Reference</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">wrapping</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L312-L333" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dimsmatch" href="#DimensionalData.Dimensions.dimsmatch"><span class="jlbinding">DimensionalData.Dimensions.dimsmatch</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dim, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Compare 2 dimensions or <code>Tuple</code> of <code>Dimension</code> are of the same base type, or are at least rotations/transformations of the same type.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L4-L12" target="_blank" rel="noreferrer">source</a></p></details></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/api/dimensions.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/api/reference" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>API Reference</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>LookupArrays Reference</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/api/lookuparrays.html b/dev/api/lookuparrays.html index 26dd847a7..f1d0ff3e8 100644 --- a/dev/api/lookuparrays.html +++ b/dev/api/lookuparrays.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Lookups | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/api_lookuparrays.md.CMGRbv3b.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/api_lookuparrays.md.4gWyIReH.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,8 +20,8 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_api_lookuparrays" data-v-83890dd9><div><h1 id="lookups" tabindex="-1">Lookups <a class="header-anchor" href="#lookups" aria-label="Permalink to "Lookups""></a></h1><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups" href="#DimensionalData.Dimensions.Lookups"><span class="jlbinding">DimensionalData.Dimensions.Lookups</span></a> <span class="VPBadge info jlObjectType jlModule"><!--[-->Module<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p>Module for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s used in DimensionalData.jl</p><p><code>Lookup</code> defines traits and <code>AbstractArray</code> wrappers that give specific behaviours for a lookup index when indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>.</p><p>For example, these allow tracking over array order so fast indexing works even when the array is reversed.</p><p>To load <code>Lookup</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/Lookups.jl#L1-L18" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Lookup" href="#DimensionalData.Dimensions.Lookups.Lookup"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Lookup</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookup</span></span></code></pre></div><p>Types defining the behaviour of a lookup index, how it is plotted and how <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a> work.</p><p>A <code>Lookup</code> may be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a> indicating that there are no lookup values, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> for ordered or unordered categories, or a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> index for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Aligned" href="#DimensionalData.Dimensions.Lookups.Aligned"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Aligned</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Aligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array axes.</p><p>This is by far the most common supertype for <code>Lookup</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L99-L106" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AbstractSampled" href="#DimensionalData.Dimensions.Lookups.AbstractSampled"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AbstractSampled</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractSampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array, and is independent of other dimensions. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> is provided by this package.</p><p><code>AbstractSampled</code> must have <code>order</code>, <code>span</code> and <code>sampling</code> fields, or a <code>rebuild</code> method that accepts them as keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L169-L178" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Sampled" href="#DimensionalData.Dimensions.Lookups.Sampled"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Sampled</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_api_lookuparrays" data-v-83890dd9><div><h1 id="lookups" tabindex="-1">Lookups <a class="header-anchor" href="#lookups" aria-label="Permalink to "Lookups""></a></h1><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups" href="#DimensionalData.Dimensions.Lookups"><span class="jlbinding">DimensionalData.Dimensions.Lookups</span></a> <span class="VPBadge info jlObjectType jlModule"><!--[-->Module<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p>Module for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s used in DimensionalData.jl</p><p><code>Lookup</code> defines traits and <code>AbstractArray</code> wrappers that give specific behaviours for a lookup index when indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>.</p><p>For example, these allow tracking over array order so fast indexing works even when the array is reversed.</p><p>To load <code>Lookup</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/Lookups.jl#L1-L18" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Lookup" href="#DimensionalData.Dimensions.Lookups.Lookup"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Lookup</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookup</span></span></code></pre></div><p>Types defining the behaviour of a lookup index, how it is plotted and how <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a> work.</p><p>A <code>Lookup</code> may be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a> indicating that there are no lookup values, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> for ordered or unordered categories, or a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> index for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Aligned" href="#DimensionalData.Dimensions.Lookups.Aligned"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Aligned</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Aligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array axes.</p><p>This is by far the most common supertype for <code>Lookup</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L99-L106" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AbstractSampled" href="#DimensionalData.Dimensions.Lookups.AbstractSampled"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AbstractSampled</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractSampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array, and is independent of other dimensions. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> is provided by this package.</p><p><code>AbstractSampled</code> must have <code>order</code>, <code>span</code> and <code>sampling</code> fields, or a <code>rebuild</code> method that accepts them as keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L169-L178" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Sampled" href="#DimensionalData.Dimensions.Lookups.Sampled"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Sampled</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractVector</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>A concrete implementation of the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AbstractSampled"><code>AbstractSampled</code></a>. It can be used to represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><code>Sampled</code> is capable of representing gridded data from a wide range of sources, allowing correct <code>bounds</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s for points or intervals of regular, irregular, forward and reverse lookups.</p><p>On <code>AbstractDimArray</code> construction, <code>Sampled</code> lookup is assigned for all lookups of <code>AbstractRange</code> not assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a>.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li></ul><p><strong>Example</strong></p><p>Create an array with <code>Interval</code> sampling, and <code>Regular</code> span for a vector with known spacing.</p><p>We set the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of the <code>Intervals</code> to <code>Start</code> specifying that the lookup values are for the locus at the start of each interval.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> @@ -42,9 +42,9 @@ <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 80</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 40</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L254-L303" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AbstractCyclic" href="#DimensionalData.Dimensions.Lookups.AbstractCyclic"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AbstractCyclic</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span></code></pre></div><p>An abstract supertype for cyclic lookups.</p><p>These are <code>AbstractSampled</code> lookups that are cyclic for <code>Selectors</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L333-L339" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Cyclic" href="#DimensionalData.Dimensions.Lookups.Cyclic"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Cyclic</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Cyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCyclic</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L254-L303" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AbstractCyclic" href="#DimensionalData.Dimensions.Lookups.AbstractCyclic"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AbstractCyclic</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span></code></pre></div><p>An abstract supertype for cyclic lookups.</p><p>These are <code>AbstractSampled</code> lookups that are cyclic for <code>Selectors</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L333-L339" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Cyclic" href="#DimensionalData.Dimensions.Lookups.Cyclic"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Cyclic</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Cyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCyclic</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Cyclic</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), cycle)</span></span></code></pre></div><p>A <code>Cyclic</code> lookup is similar to <code>Sampled</code> but out of range <code>Selectors</code> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a> will cycle the values to <code>typemin</code> or <code>typemax</code> over the length of <code>cycle</code>. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a> and <code>..</code> work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>.</p><p>This is useful when we are using mean annual datasets over a real time-span, or for wrapping longitudes so that <code>-360</code> and <code>360</code> are the same.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li><li><p><code>cycle</code>: the length of the cycle. This does not have to exactly match the data, the <code>step</code> size is <code>Week(1)</code> the cycle can be <code>Years(1)</code>.</p></li></ul><p><strong>Notes</strong></p><ol><li><p>If you use dates and e.g. cycle over a <code>Year</code>, every year will have the number and spacing of <code>Week</code>s and <code>Day</code>s as the cycle year. Using <code>At</code> may not be reliable in terms of exact dates, as it will be applied to the specified date plus or minus <code>n</code> years.</p></li><li><p>Indexing into a <code>Cycled</code> with any <code>AbstractArray</code> or <code>AbstractRange</code> will return a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as the full cycle is likely no longer available.</p></li><li><p><code>..</code> or <code>Between</code> selectors do not work in a cycled way: they work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>. This may change in future to return cycled values, but there are problems with this, such as leap years breaking correct date cycling of a single year. If you actually need this behaviour, please make a GitHub issue.</p></li></ol><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L386-L415" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AbstractCategorical" href="#DimensionalData.Dimensions.Lookups.AbstractCategorical"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AbstractCategorical</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCategorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the values are categories.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> is the provided concrete implementation. But this can easily be extended, all methods are defined for <code>AbstractCategorical</code>.</p><p>All <code>AbstractCategorical</code> must provide a <code>rebuild</code> method with <code>data</code>, <code>order</code> and <code>metadata</code> keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L451-L461" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Categorical" href="#DimensionalData.Dimensions.Lookups.Categorical"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Categorical</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCategorical</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Cyclic</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), cycle)</span></span></code></pre></div><p>A <code>Cyclic</code> lookup is similar to <code>Sampled</code> but out of range <code>Selectors</code> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a> will cycle the values to <code>typemin</code> or <code>typemax</code> over the length of <code>cycle</code>. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a> and <code>..</code> work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>.</p><p>This is useful when we are using mean annual datasets over a real time-span, or for wrapping longitudes so that <code>-360</code> and <code>360</code> are the same.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li><li><p><code>cycle</code>: the length of the cycle. This does not have to exactly match the data, the <code>step</code> size is <code>Week(1)</code> the cycle can be <code>Years(1)</code>.</p></li></ul><p><strong>Notes</strong></p><ol><li><p>If you use dates and e.g. cycle over a <code>Year</code>, every year will have the number and spacing of <code>Week</code>s and <code>Day</code>s as the cycle year. Using <code>At</code> may not be reliable in terms of exact dates, as it will be applied to the specified date plus or minus <code>n</code> years.</p></li><li><p>Indexing into a <code>Cycled</code> with any <code>AbstractArray</code> or <code>AbstractRange</code> will return a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as the full cycle is likely no longer available.</p></li><li><p><code>..</code> or <code>Between</code> selectors do not work in a cycled way: they work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>. This may change in future to return cycled values, but there are problems with this, such as leap years breaking correct date cycling of a single year. If you actually need this behaviour, please make a GitHub issue.</p></li></ol><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L386-L415" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AbstractCategorical" href="#DimensionalData.Dimensions.Lookups.AbstractCategorical"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AbstractCategorical</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCategorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the values are categories.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> is the provided concrete implementation. But this can easily be extended, all methods are defined for <code>AbstractCategorical</code>.</p><p>All <code>AbstractCategorical</code> must provide a <code>rebuild</code> method with <code>data</code>, <code>order</code> and <code>metadata</code> keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L451-L461" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Categorical" href="#DimensionalData.Dimensions.Lookups.Categorical"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Categorical</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCategorical</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(o</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the values are categories.</p><p>This will be automatically assigned if the lookup contains <code>AbstractString</code>, <code>Symbol</code> or <code>Char</code>. Otherwise it can be assigned manually.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> will be determined automatically where possible.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> matching the length of the corresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <code>ForwardOrdered</code>, <code>ReverseOrdered</code> or <code>Unordered</code>. Can be provided if this is known and performance is important.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li></ul><p><strong>Example</strong></p><p>Create an array with [<code>Interval</code>] sampling.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -56,7 +56,7 @@ <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{String} [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"one"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"two"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"three"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] Unordered,</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Symbol} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L474-L515" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Unaligned" href="#DimensionalData.Dimensions.Lookups.Unaligned"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Unaligned</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unaligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the lookup is not aligned to the grid.</p><p>Indexing an <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s must provide all other <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L536-L543" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Transformed" href="#DimensionalData.Dimensions.Lookups.Transformed"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Transformed</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Transformed </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Unaligned</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Symbol} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L474-L515" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Unaligned" href="#DimensionalData.Dimensions.Lookups.Unaligned"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Unaligned</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unaligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the lookup is not aligned to the grid.</p><p>Indexing an <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s must provide all other <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L536-L543" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Transformed" href="#DimensionalData.Dimensions.Lookups.Transformed"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Transformed</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Transformed </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Unaligned</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Transformed</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that uses an affine transformation to convert dimensions from <code>dims(lookup)</code> to <code>dims(array)</code>. This can be useful when the dimensions are e.g. rotated from a more commonly used axis.</p><p>Any function can be used to do the transformation, but transformations from CoordinateTransformations.jl may be useful.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: transformation function</p></li><li><p><code>dim</code>: a dimension to transform to.</p></li></ul><p><strong>Keyword Arguments</strong></p><ul><li><code>metadata</code>:</li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups, CoordinateTransformations</span></span> <span class="line"></span> @@ -69,9 +69,9 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">9</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L546-L583" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.MergedLookup" href="#DimensionalData.Dimensions.MergedLookup"><span class="jlbinding">DimensionalData.Dimensions.MergedLookup</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">MergedLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">9</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L546-L583" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.MergedLookup" href="#DimensionalData.Dimensions.MergedLookup"><span class="jlbinding">DimensionalData.Dimensions.MergedLookup</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">MergedLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">MergedLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims; [metadata])</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that holds multiple combined dimensions.</p><p><code>MergedLookup</code> can be indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <code>At</code>, <code>Between</code>, and <code>Where</code> although <code>Near</code> has undefined meaning.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: A <code>Vector</code> of <code>Tuple</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> indicating the dimensions in the tuples in <code>data</code>.</p></li></ul><p><strong>Keywords</strong></p><ul><li><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> object to attach dimension metadata.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/merged.jl#L1-L20" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.NoLookup" href="#DimensionalData.Dimensions.Lookups.NoLookup"><span class="jlbinding">DimensionalData.Dimensions.Lookups.NoLookup</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">MergedLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims; [metadata])</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that holds multiple combined dimensions.</p><p><code>MergedLookup</code> can be indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <code>At</code>, <code>Between</code>, and <code>Where</code> although <code>Near</code> has undefined meaning.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: A <code>Vector</code> of <code>Tuple</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> indicating the dimensions in the tuples in <code>data</code>.</p></li></ul><p><strong>Keywords</strong></p><ul><li><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> object to attach dimension metadata.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/merged.jl#L1-L20" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.NoLookup" href="#DimensionalData.Dimensions.Lookups.NoLookup"><span class="jlbinding">DimensionalData.Dimensions.Lookups.NoLookup</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that is identical to the array axis. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s can't be used on this lookup.</p><p><strong>Example</strong></p><p>Defining a <code>DimArray</code> without passing lookup values to the dimensions, it will be assigned <code>NoLookup</code>:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -86,26 +86,26 @@ <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup, NoLookup</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L119-L154" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoLookup" href="#DimensionalData.Dimensions.Lookups.AutoLookup"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoLookup</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup, NoLookup</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L119-L154" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoLookup" href="#DimensionalData.Dimensions.Lookups.AutoLookup"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoLookup</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(values</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Automatic <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, the default lookup. It will be converted automatically to another <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> when it is possible to detect it from the lookup values.</p><p>Keywords will be used in the detected <code>Lookup</code> constructor.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L66-L76" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoValues" href="#DimensionalData.Dimensions.Lookups.AutoValues"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoValues</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoValues</span></span></code></pre></div><p>Detect <code>Lookup</code> values from the context. This is used in <code>NoLookup</code> to simply use the array axis as the index when the array is constructed, and in <code>set</code> to change the <code>Lookup</code> type without changing the index values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L278-L284" target="_blank" rel="noreferrer">source</a></p></details><p>The generic value getter <code>val</code></p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.val" href="#DimensionalData.Dimensions.Lookups.val"><span class="jlbinding">DimensionalData.Dimensions.Lookups.val</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Return the contained value of a wrapper object.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>Objects that don't define a <code>val</code> method are returned unaltered.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L79-L88" target="_blank" rel="noreferrer">source</a></p></details><p>Lookup methods:</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.bounds" href="#DimensionalData.Dimensions.Lookups.bounds"><span class="jlbinding">DimensionalData.Dimensions.Lookups.bounds</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(values</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Automatic <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, the default lookup. It will be converted automatically to another <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> when it is possible to detect it from the lookup values.</p><p>Keywords will be used in the detected <code>Lookup</code> constructor.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L66-L76" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoValues" href="#DimensionalData.Dimensions.Lookups.AutoValues"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoValues</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoValues</span></span></code></pre></div><p>Detect <code>Lookup</code> values from the context. This is used in <code>NoLookup</code> to simply use the array axis as the index when the array is constructed, and in <code>set</code> to change the <code>Lookup</code> type without changing the index values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L278-L284" target="_blank" rel="noreferrer">source</a></p></details><p>The generic value getter <code>val</code></p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.val" href="#DimensionalData.Dimensions.Lookups.val"><span class="jlbinding">DimensionalData.Dimensions.Lookups.val</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Return the contained value of a wrapper object.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>Objects that don't define a <code>val</code> method are returned unaltered.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L79-L88" target="_blank" rel="noreferrer">source</a></p></details><p>Lookup methods:</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.bounds" href="#DimensionalData.Dimensions.Lookups.bounds"><span class="jlbinding">DimensionalData.Dimensions.Lookups.bounds</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span></code></pre></div><p>Return the bounds of all dimensions of an object, of a specific dimension, or of a tuple of dimensions.</p><p>If bounds are not known, one or both values may be <code>nothing</code>.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L173-L185" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.hasselection" href="#DimensionalData.Dimensions.Lookups.hasselection"><span class="jlbinding">DimensionalData.Dimensions.Lookups.hasselection</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selector) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if indexing into x with <code>selectors</code> can be performed, where x is some object with a <code>dims</code> method, and <code>selectors</code> is a <code>Selector</code> or <code>Dimension</code> or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L240-L247" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.sampling" href="#DimensionalData.Dimensions.Lookups.sampling"><span class="jlbinding">DimensionalData.Dimensions.Lookups.sampling</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span></code></pre></div><p>Return the bounds of all dimensions of an object, of a specific dimension, or of a tuple of dimensions.</p><p>If bounds are not known, one or both values may be <code>nothing</code>.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L173-L185" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.hasselection" href="#DimensionalData.Dimensions.Lookups.hasselection"><span class="jlbinding">DimensionalData.Dimensions.Lookups.hasselection</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selector) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if indexing into x with <code>selectors</code> can be performed, where x is some object with a <code>dims</code> method, and <code>selectors</code> is a <code>Selector</code> or <code>Dimension</code> or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L240-L247" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.sampling" href="#DimensionalData.Dimensions.Lookups.sampling"><span class="jlbinding">DimensionalData.Dimensions.Lookups.sampling</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Sampling}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Union{Dimension,Lookup}) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L201-L211" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.span" href="#DimensionalData.Dimensions.Lookups.span"><span class="jlbinding">DimensionalData.Dimensions.Lookups.span</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Union{Dimension,Lookup}) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L201-L211" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.span" href="#DimensionalData.Dimensions.Lookups.span"><span class="jlbinding">DimensionalData.Dimensions.Lookups.span</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Span,N}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Span"><code>Span</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L214-L224" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.order" href="#DimensionalData.Dimensions.Lookups.order"><span class="jlbinding">DimensionalData.Dimensions.Lookups.order</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Span"><code>Span</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L214-L224" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.order" href="#DimensionalData.Dimensions.Lookups.order"><span class="jlbinding">DimensionalData.Dimensions.Lookups.order</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Order</span></span></code></pre></div><p>Return the <code>Ordering</code> of the dimension lookup for each dimension: <code>ForwardOrdered</code>, <code>ReverseOrdered</code>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a></p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L188-L198" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.locus" href="#DimensionalData.Dimensions.Lookups.locus"><span class="jlbinding">DimensionalData.Dimensions.Lookups.locus</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Order</span></span></code></pre></div><p>Return the <code>Ordering</code> of the dimension lookup for each dimension: <code>ForwardOrdered</code>, <code>ReverseOrdered</code>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a></p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L188-L198" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.locus" href="#DimensionalData.Dimensions.Lookups.locus"><span class="jlbinding">DimensionalData.Dimensions.Lookups.locus</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Locus,N}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Position"><code>Position</code></a> of lookup values for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L227-L237" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.shiftlocus" href="#DimensionalData.Dimensions.Lookups.shiftlocus"><span class="jlbinding">DimensionalData.Dimensions.Lookups.shiftlocus</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">shiftlocus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x)</span></span></code></pre></div><p>Shift the values of <code>x</code> from the current locus to the new locus.</p><p>We only shift <code>Sampled</code>, <code>Regular</code> or <code>Explicit</code>, <code>Intervals</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/utils.jl#L1-L7" target="_blank" rel="noreferrer">source</a></p></details><h2 id="selectors" tabindex="-1">Selectors <a class="header-anchor" href="#selectors" aria-label="Permalink to "Selectors""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Selector" href="#DimensionalData.Dimensions.Lookups.Selector"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Selector</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Selector</span></span></code></pre></div><p>Abstract supertype for all selectors.</p><p>Selectors are wrappers that indicate that passed values are not the array indices, but values to be selected from the dimension lookup, such as <code>DateTime</code> objects for a <code>Ti</code> dimension.</p><p>Selectors provided in DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li></ul><p>Note: Selectors can be modified using:</p><ul><li><code>Not</code>: as in <code>Not(At(x))</code></li></ul><p>And IntervalSets.jl <code>Interval</code> can be used instead of <code>Between</code></p><ul><li><p><code>..</code></p></li><li><p><code>Interval</code></p></li><li><p><code>OpenInterval</code></p></li><li><p><code>ClosedInterval</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L16-L41" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.IntSelector" href="#DimensionalData.Dimensions.Lookups.IntSelector"><span class="jlbinding">DimensionalData.Dimensions.Lookups.IntSelector</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IntSelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return a single <code>Int</code> index.</p><p>IntSelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L52-L62" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.ArraySelector" href="#DimensionalData.Dimensions.Lookups.ArraySelector"><span class="jlbinding">DimensionalData.Dimensions.Lookups.ArraySelector</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ArraySelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return an <code>AbstractArray</code>.</p><p>ArraySelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L65-L75" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.At" href="#DimensionalData.Dimensions.Lookups.At"><span class="jlbinding">DimensionalData.Dimensions.Lookups.At</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">At </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Position"><code>Position</code></a> of lookup values for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L227-L237" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.shiftlocus" href="#DimensionalData.Dimensions.Lookups.shiftlocus"><span class="jlbinding">DimensionalData.Dimensions.Lookups.shiftlocus</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">shiftlocus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x)</span></span></code></pre></div><p>Shift the values of <code>x</code> from the current locus to the new locus.</p><p>We only shift <code>Sampled</code>, <code>Regular</code> or <code>Explicit</code>, <code>Intervals</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/utils.jl#L1-L7" target="_blank" rel="noreferrer">source</a></p></details><h2 id="selectors" tabindex="-1">Selectors <a class="header-anchor" href="#selectors" aria-label="Permalink to "Selectors""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Selector" href="#DimensionalData.Dimensions.Lookups.Selector"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Selector</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Selector</span></span></code></pre></div><p>Abstract supertype for all selectors.</p><p>Selectors are wrappers that indicate that passed values are not the array indices, but values to be selected from the dimension lookup, such as <code>DateTime</code> objects for a <code>Ti</code> dimension.</p><p>Selectors provided in DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li></ul><p>Note: Selectors can be modified using:</p><ul><li><code>Not</code>: as in <code>Not(At(x))</code></li></ul><p>And IntervalSets.jl <code>Interval</code> can be used instead of <code>Between</code></p><ul><li><p><code>..</code></p></li><li><p><code>Interval</code></p></li><li><p><code>OpenInterval</code></p></li><li><p><code>ClosedInterval</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L16-L41" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.IntSelector" href="#DimensionalData.Dimensions.Lookups.IntSelector"><span class="jlbinding">DimensionalData.Dimensions.Lookups.IntSelector</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IntSelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return a single <code>Int</code> index.</p><p>IntSelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L52-L62" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.ArraySelector" href="#DimensionalData.Dimensions.Lookups.ArraySelector"><span class="jlbinding">DimensionalData.Dimensions.Lookups.ArraySelector</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ArraySelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return an <code>AbstractArray</code>.</p><p>ArraySelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L65-L75" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.At" href="#DimensionalData.Dimensions.Lookups.At"><span class="jlbinding">DimensionalData.Dimensions.Lookups.At</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">At </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, rtol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that exactly matches the value on the passed-in dimensions, or throws an error. For ranges and arrays, every intermediate value must match an existing value - not just the end points.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between them will be selected.</p><p>Keyword <code>atol</code> is passed to <code>isapprox</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -115,7 +115,7 @@ <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L92-L119" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Near" href="#DimensionalData.Dimensions.Lookups.Near"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Near</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Near </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L92-L119" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Near" href="#DimensionalData.Dimensions.Lookups.Near"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Near</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Near </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that selects the nearest index to <code>x</code>.</p><p>With <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> this is simply the lookup values nearest to the <code>x</code>, however with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> it is the interval <em>center</em> nearest to <code>x</code>. This will be offset from the index value for <code>Start</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> locus.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between the nearsest value to each of them will be selected.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -124,7 +124,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">23</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L255-L282" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Between" href="#DimensionalData.Dimensions.Lookups.Between"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Between</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Between </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L255-L282" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Between" href="#DimensionalData.Dimensions.Lookups.Between"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Between</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Between </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Between</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Depreciated: use <code>a..b</code> instead of <code>Between(a, b)</code>. Other <code>Interval</code> objects from IntervalSets.jl, like `OpenInterval(a, b) will also work, giving the correct open/closed boundaries.</p><p><code>Between</code> will e removed in future to avoid clashes with <code>DataFrames.Between</code>.</p><p>Selector that retrieve all indices located between 2 values, evaluated with <code>>=</code> for the lower value, and <code><</code> for the upper value. This means the same value will not be counted twice in 2 adjacent <code>Between</code> selections.</p><p>For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> the whole interval must be lie between the values. For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> the points must fall between the values. Different <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> types may give different results with the same input - this is the intended behaviour.</p><p><code>Between</code> for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> intervals is a little complicated. The interval is the distance between a value and the next (for <code>Start</code> locus) or previous (for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> locus) value.</p><p>For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, we take the mid point between two index values as the start and end of each interval. This may or may not make sense for the values in your index, so use <code>Between</code> with <code>Irregular</code> <code>Intervals(Center())</code> with caution.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -140,7 +140,7 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L545-L595" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Touches" href="#DimensionalData.Dimensions.Lookups.Touches"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Touches</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Touches </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L545-L595" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Touches" href="#DimensionalData.Dimensions.Lookups.Touches"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Touches</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Touches </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Touches</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that retrieves all indices touching the closed interval 2 values, for the maximum possible area that could interact with the supplied range.</p><p>This can be better than <code>..</code> when e.g. subsetting an area to rasterize, as you may wish to include pixels that just touch the area, rather than those that fall within it.</p><p>Touches is different to using closed intervals when the lookups also contain intervals - if any of the intervals touch, they are included. With <code>..</code> they are discarded unless the whole cell interval falls inside the selector interval.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -155,7 +155,7 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L820-L855" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Contains" href="#DimensionalData.Dimensions.Lookups.Contains"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Contains</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Contains </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L820-L855" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Contains" href="#DimensionalData.Dimensions.Lookups.Contains"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Contains</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Contains </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that selects the interval the value is contained by. If the interval is not present in the lookup, an error will be thrown.</p><p>Can only be used for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a>. For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> it falls back to using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>. <code>Contains</code> should not be confused with <code>Base.contains</code> - use <code>Where(contains(x))</code> to check for if values are contain in categorical values like strings.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between them will be selected.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData; </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DD </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -165,7 +165,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6.8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L357-L386" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Where" href="#DimensionalData.Dimensions.Lookups.Where"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Where</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Where </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L357-L386" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Where" href="#DimensionalData.Dimensions.Lookups.Where"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Where</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Where </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Where</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Function</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that filters a dimension lookup by any function that accepts a single value and returns a <code>Bool</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -181,7 +181,7 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">19</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">21</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered Irregular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└─────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 19</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 21</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1004-L1031" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.All" href="#DimensionalData.Dimensions.Lookups.All"><span class="jlbinding">DimensionalData.Dimensions.Lookups.All</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">All </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1004-L1031" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.All" href="#DimensionalData.Dimensions.Lookups.All"><span class="jlbinding">DimensionalData.Dimensions.Lookups.All</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">All </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">All</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Selector...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that combines the results of other selectors. The indices used will be the union of all result sorted in ascending order.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Unitful</span></span> <span class="line"></span> @@ -199,46 +199,46 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">91</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">96</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 19</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 57</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1045-L1074" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Lookup-traits" tabindex="-1">Lookup traits <a class="header-anchor" href="#Lookup-traits" aria-label="Permalink to "Lookup traits {#Lookup-traits}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.LookupTrait" href="#DimensionalData.Dimensions.Lookups.LookupTrait"><span class="jlbinding">DimensionalData.Dimensions.Lookups.LookupTrait</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">LookupTrait</span></span></code></pre></div><p>Abstract supertype of all traits of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>.</p><p>These modify the behaviour of the lookup index.</p><p>The term "Trait" is used loosely - these may be fields of an object of traits hard-coded to specific types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p></details><h3 id="order" tabindex="-1">Order <a class="header-anchor" href="#order" aria-label="Permalink to "Order""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Order" href="#DimensionalData.Dimensions.Lookups.Order"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Order</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Order </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Traits for the order of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>. These determine how <code>searchsorted</code> finds values in the index, and how objects are plotted.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L14-L19" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Ordered" href="#DimensionalData.Dimensions.Lookups.Ordered"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Ordered</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span></code></pre></div><p>Supertype for the order of an ordered <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, including <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L22-L27" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.ForwardOrdered" href="#DimensionalData.Dimensions.Lookups.ForwardOrdered"><span class="jlbinding">DimensionalData.Dimensions.Lookups.ForwardOrdered</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ForwardOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 57</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1045-L1074" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Lookup-traits" tabindex="-1">Lookup traits <a class="header-anchor" href="#Lookup-traits" aria-label="Permalink to "Lookup traits {#Lookup-traits}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.LookupTrait" href="#DimensionalData.Dimensions.Lookups.LookupTrait"><span class="jlbinding">DimensionalData.Dimensions.Lookups.LookupTrait</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">LookupTrait</span></span></code></pre></div><p>Abstract supertype of all traits of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>.</p><p>These modify the behaviour of the lookup index.</p><p>The term "Trait" is used loosely - these may be fields of an object of traits hard-coded to specific types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p></details><h3 id="order" tabindex="-1">Order <a class="header-anchor" href="#order" aria-label="Permalink to "Order""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Order" href="#DimensionalData.Dimensions.Lookups.Order"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Order</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Order </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Traits for the order of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>. These determine how <code>searchsorted</code> finds values in the index, and how objects are plotted.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L14-L19" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Ordered" href="#DimensionalData.Dimensions.Lookups.Ordered"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Ordered</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span></code></pre></div><p>Supertype for the order of an ordered <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, including <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L22-L27" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.ForwardOrdered" href="#DimensionalData.Dimensions.Lookups.ForwardOrdered"><span class="jlbinding">DimensionalData.Dimensions.Lookups.ForwardOrdered</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ForwardOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the normal forward order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L40-L46" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.ReverseOrdered" href="#DimensionalData.Dimensions.Lookups.ReverseOrdered"><span class="jlbinding">DimensionalData.Dimensions.Lookups.ReverseOrdered</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ReverseOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the normal forward order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L40-L46" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.ReverseOrdered" href="#DimensionalData.Dimensions.Lookups.ReverseOrdered"><span class="jlbinding">DimensionalData.Dimensions.Lookups.ReverseOrdered</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ReverseOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ReverseOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the reverse order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L49-L55" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Unordered" href="#DimensionalData.Dimensions.Lookups.Unordered"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Unordered</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ReverseOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the reverse order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L49-L55" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Unordered" href="#DimensionalData.Dimensions.Lookups.Unordered"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Unordered</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that <code>Lookup</code> is unordered.</p><p>This means the index cannot be searched with <code>searchsortedfirst</code> or similar optimised methods - instead it will use <code>findfirst</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L58-L67" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoOrder" href="#DimensionalData.Dimensions.Lookups.AutoOrder"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoOrder</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoOrder </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that <code>Lookup</code> is unordered.</p><p>This means the index cannot be searched with <code>searchsortedfirst</code> or similar optimised methods - instead it will use <code>findfirst</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L58-L67" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoOrder" href="#DimensionalData.Dimensions.Lookups.AutoOrder"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoOrder</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoOrder </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Specifies that the <code>Order</code> of a <code>Lookup</code> will be found automatically where possible.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L30-L37" target="_blank" rel="noreferrer">source</a></p></details><h3 id="span" tabindex="-1">Span <a class="header-anchor" href="#span" aria-label="Permalink to "Span""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Span" href="#DimensionalData.Dimensions.Lookups.Span"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Span</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Span </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Defines the type of span used in a <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> index. These are <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L194-L199" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Regular" href="#DimensionalData.Dimensions.Lookups.Regular"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Regular</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Regular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Specifies that the <code>Order</code> of a <code>Lookup</code> will be found automatically where possible.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L30-L37" target="_blank" rel="noreferrer">source</a></p></details><h3 id="span" tabindex="-1">Span <a class="header-anchor" href="#span" aria-label="Permalink to "Span""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Span" href="#DimensionalData.Dimensions.Lookups.Span"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Span</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Span </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Defines the type of span used in a <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> index. These are <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L194-L199" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Regular" href="#DimensionalData.Dimensions.Lookups.Regular"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Regular</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Regular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Regular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoStep</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have a fixed, regular step.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L221-L227" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Irregular" href="#DimensionalData.Dimensions.Lookups.Irregular"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Irregular</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Irregular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Regular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoStep</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have a fixed, regular step.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L221-L227" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Irregular" href="#DimensionalData.Dimensions.Lookups.Irregular"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Irregular</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Irregular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lowerbound, upperbound)</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have an <code>Irregular</code> step size. To enable bounds tracking and accurate selectors, the starting bounds are provided as a 2 tuple, or 2 arguments. <code>(nothing, nothing)</code> is acceptable input, the bounds will be guessed from the index, but may be inaccurate.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L238-L248" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Explicit" href="#DimensionalData.Dimensions.Lookups.Explicit"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Explicit</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Explicit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractMatrix</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Intervals where the span is explicitly listed for every interval.</p><p>This uses a matrix where with length 2 columns for each index value, holding the lower and upper bounds for that specific index.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L260-L267" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoSpan" href="#DimensionalData.Dimensions.Lookups.AutoSpan"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoSpan</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoSpan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lowerbound, upperbound)</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have an <code>Irregular</code> step size. To enable bounds tracking and accurate selectors, the starting bounds are provided as a 2 tuple, or 2 arguments. <code>(nothing, nothing)</code> is acceptable input, the bounds will be guessed from the index, but may be inaccurate.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L238-L248" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Explicit" href="#DimensionalData.Dimensions.Lookups.Explicit"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Explicit</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Explicit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractMatrix</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Intervals where the span is explicitly listed for every interval.</p><p>This uses a matrix where with length 2 columns for each index value, holding the lower and upper bounds for that specific index.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L260-L267" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoSpan" href="#DimensionalData.Dimensions.Lookups.AutoSpan"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoSpan</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoSpan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>The span will be guessed and replaced in <code>format</code> or <code>set</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L206-L212" target="_blank" rel="noreferrer">source</a></p></details><h3 id="sampling" tabindex="-1">Sampling <a class="header-anchor" href="#sampling" aria-label="Permalink to "Sampling""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Sampling" href="#DimensionalData.Dimensions.Lookups.Sampling"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Sampling</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampling </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Indicates the sampling method used by the index: <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L148-L153" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Points" href="#DimensionalData.Dimensions.Lookups.Points"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Points</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Points </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>The span will be guessed and replaced in <code>format</code> or <code>set</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L206-L212" target="_blank" rel="noreferrer">source</a></p></details><h3 id="sampling" tabindex="-1">Sampling <a class="header-anchor" href="#sampling" aria-label="Permalink to "Sampling""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Sampling" href="#DimensionalData.Dimensions.Lookups.Sampling"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Sampling</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampling </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Indicates the sampling method used by the index: <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L148-L153" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Points" href="#DimensionalData.Dimensions.Lookups.Points"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Points</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Points </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> lookup where single samples at exact points.</p><p>These are always plotted at the center of array cells.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L162-L170" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Intervals" href="#DimensionalData.Dimensions.Lookups.Intervals"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Intervals</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Intervals </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> lookup where single samples at exact points.</p><p>These are always plotted at the center of array cells.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L162-L170" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Intervals" href="#DimensionalData.Dimensions.Lookups.Intervals"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Intervals</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Intervals </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Position</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> specifying that sampled values are the mean (or similar) value over an <em>interval</em>, rather than at one specific point.</p><p>Intervals require a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> to define the location in the interval that the index values refer to.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L175-L185" target="_blank" rel="noreferrer">source</a></p></details><h3 id="positions" tabindex="-1">Positions <a class="header-anchor" href="#positions" aria-label="Permalink to "Positions""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Position" href="#DimensionalData.Dimensions.Lookups.Position"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Position</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Position </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Abstract supertype of types that indicate the locus of index values where they represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p>These allow for values array cells to align with the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> of values in the lookup index.</p><p>This means they can be plotted with correct axis markers, and allows automatic conversions to between formats with different standards (such as NetCDF and GeoTiff).</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L74-L85" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Center" href="#DimensionalData.Dimensions.Lookups.Center"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Center</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Center </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Position</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> specifying that sampled values are the mean (or similar) value over an <em>interval</em>, rather than at one specific point.</p><p>Intervals require a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> to define the location in the interval that the index values refer to.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L175-L185" target="_blank" rel="noreferrer">source</a></p></details><h3 id="positions" tabindex="-1">Positions <a class="header-anchor" href="#positions" aria-label="Permalink to "Positions""></a></h3><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Position" href="#DimensionalData.Dimensions.Lookups.Position"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Position</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Position </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Abstract supertype of types that indicate the locus of index values where they represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p>These allow for values array cells to align with the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> of values in the lookup index.</p><p>This means they can be plotted with correct axis markers, and allows automatic conversions to between formats with different standards (such as NetCDF and GeoTiff).</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L74-L85" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Center" href="#DimensionalData.Dimensions.Lookups.Center"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Center</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Center </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Center</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the center locus in an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L88-L94" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Start" href="#DimensionalData.Dimensions.Lookups.Start"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Start</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Start </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Center</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the center locus in an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L88-L94" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Start" href="#DimensionalData.Dimensions.Lookups.Start"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Start</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Start </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the start locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L97-L103" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Begin" href="#DimensionalData.Dimensions.Lookups.Begin"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Begin</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Begin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the start locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L97-L103" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Begin" href="#DimensionalData.Dimensions.Lookups.Begin"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Begin</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Begin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Begin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>begin</code> index of a <code>Dimension</code> axis, as regular <code>begin</code> will not work with named dimensions.</p><p>Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L106-L116" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.End" href="#DimensionalData.Dimensions.Lookups.End"><span class="jlbinding">DimensionalData.Dimensions.Lookups.End</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">End </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Begin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>begin</code> index of a <code>Dimension</code> axis, as regular <code>begin</code> will not work with named dimensions.</p><p>Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L106-L116" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.End" href="#DimensionalData.Dimensions.Lookups.End"><span class="jlbinding">DimensionalData.Dimensions.Lookups.End</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">End </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">End</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>end</code> index of a <code>Dimension</code> axis, as regular <code>end</code> will not work with named dimensions. Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p>Also used to specify lookup values correspond to the end locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L119-L131" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoPosition" href="#DimensionalData.Dimensions.Lookups.AutoPosition"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoPosition</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoPosition </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">End</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>end</code> index of a <code>Dimension</code> axis, as regular <code>end</code> will not work with named dimensions. Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p>Also used to specify lookup values correspond to the end locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L119-L131" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AutoPosition" href="#DimensionalData.Dimensions.Lookups.AutoPosition"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AutoPosition</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoPosition </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoPosition</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates a interval where the index locus is not yet known. This will be filled with a default value on object construction.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L134-L141" target="_blank" rel="noreferrer">source</a></p></details><h2 id="metadata" tabindex="-1">Metadata <a class="header-anchor" href="#metadata" aria-label="Permalink to "Metadata""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AbstractMetadata" href="#DimensionalData.Dimensions.Lookups.AbstractMetadata"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AbstractMetadata</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractMetadata{X,T}</span></span></code></pre></div><p>Abstract supertype for all metadata wrappers.</p><p>Metadata wrappers allow tracking the contents and origin of metadata. This can facilitate conversion between metadata types (for saving a file to a different format) or simply saving data back to the same file type with identical metadata.</p><p>Using a wrapper instead of <code>Dict</code> or <code>NamedTuple</code> also lets us pass metadata objects to <a href="/DimensionalData.jl/dev/object_modification#set"><code>set</code></a> without ambiguity about where to put them.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L2-L13" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Metadata" href="#DimensionalData.Dimensions.Lookups.Metadata"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Metadata</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Metadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoPosition</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates a interval where the index locus is not yet known. This will be filled with a default value on object construction.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L134-L141" target="_blank" rel="noreferrer">source</a></p></details><h2 id="metadata" tabindex="-1">Metadata <a class="header-anchor" href="#metadata" aria-label="Permalink to "Metadata""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.AbstractMetadata" href="#DimensionalData.Dimensions.Lookups.AbstractMetadata"><span class="jlbinding">DimensionalData.Dimensions.Lookups.AbstractMetadata</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractMetadata{X,T}</span></span></code></pre></div><p>Abstract supertype for all metadata wrappers.</p><p>Metadata wrappers allow tracking the contents and origin of metadata. This can facilitate conversion between metadata types (for saving a file to a different format) or simply saving data back to the same file type with identical metadata.</p><p>Using a wrapper instead of <code>Dict</code> or <code>NamedTuple</code> also lets us pass metadata objects to <a href="/DimensionalData.jl/dev/object_modification#set"><code>set</code></a> without ambiguity about where to put them.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L2-L13" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.Metadata" href="#DimensionalData.Dimensions.Lookups.Metadata"><span class="jlbinding">DimensionalData.Dimensions.Lookups.Metadata</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Metadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dict,NamedTuple}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{Dict}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{NamedTuple}</span></span></code></pre></div><p>General <a href="/DimensionalData.jl/dev/api/lookuparrays#Metadata"><code>Metadata</code></a> object. The <code>X</code> type parameter categorises the metadata for method dispatch, if required.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L31-L40" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.NoMetadata" href="#DimensionalData.Dimensions.Lookups.NoMetadata"><span class="jlbinding">DimensionalData.Dimensions.Lookups.NoMetadata</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoMetadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{NamedTuple}</span></span></code></pre></div><p>General <a href="/DimensionalData.jl/dev/api/lookuparrays#Metadata"><code>Metadata</code></a> object. The <code>X</code> type parameter categorises the metadata for method dispatch, if required.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L31-L40" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.NoMetadata" href="#DimensionalData.Dimensions.Lookups.NoMetadata"><span class="jlbinding">DimensionalData.Dimensions.Lookups.NoMetadata</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoMetadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates an object has no metadata. But unlike using <code>nothing</code>, <code>get</code>, <code>keys</code> and <code>haskey</code> will still work on it, <code>get</code> always returning the fallback argument. <code>keys</code> returns <code>()</code> while <code>haskey</code> always returns <code>false</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L67-L76" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.units" href="#DimensionalData.Dimensions.Lookups.units"><span class="jlbinding">DimensionalData.Dimensions.Lookups.units</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates an object has no metadata. But unlike using <code>nothing</code>, <code>get</code>, <code>keys</code> and <code>haskey</code> will still work on it, <code>get</code> always returning the fallback argument. <code>keys</code> returns <code>()</code> while <code>haskey</code> always returns <code>false</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L67-L76" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.units" href="#DimensionalData.Dimensions.Lookups.units"><span class="jlbinding">DimensionalData.Dimensions.Lookups.units</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Tuple) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span></code></pre></div><p>Get the units of an array or <code>Dimension</code>, or a tuple of of either.</p><p>Units do not have a set field, and may or may not be included in <code>metadata</code>. This method is to facilitate use in labels and plots when units are available, not a guarantee that they will be. If not available, <code>nothing</code> is returned.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L142-L156" target="_blank" rel="noreferrer">source</a></p></details></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/api/lookuparrays.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/api/dimensions" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Dimensions Reference</span><!--]--></a></div><div class="pager" data-v-4f9813fa><!----></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span></code></pre></div><p>Get the units of an array or <code>Dimension</code>, or a tuple of of either.</p><p>Units do not have a set field, and may or may not be included in <code>metadata</code>. This method is to facilitate use in labels and plots when units are available, not a guarantee that they will be. If not available, <code>nothing</code> is returned.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L142-L156" target="_blank" rel="noreferrer">source</a></p></details></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/api/lookuparrays.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/api/dimensions" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Dimensions Reference</span><!--]--></a></div><div class="pager" data-v-4f9813fa><!----></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/api/reference.html b/dev/api/reference.html index acc858b58..e4cf799e6 100644 --- a/dev/api/reference.html +++ b/dev/api/reference.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>API Reference | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/api_reference.md.Brz0Wk34.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/api_reference.md.Cbzd03zL.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_api_reference" data-v-83890dd9><div><h1 id="API-Reference" tabindex="-1">API Reference <a class="header-anchor" href="#API-Reference" aria-label="Permalink to "API Reference {#API-Reference}""></a></h1><h2 id="arrays" tabindex="-1">Arrays <a class="header-anchor" href="#arrays" aria-label="Permalink to "Arrays""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractBasicDimArray" href="#DimensionalData.AbstractBasicDimArray"><span class="jlbinding">DimensionalData.AbstractBasicDimArray</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractBasicDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span></code></pre></div><p>The abstract supertype for all arrays with a <code>dims</code> method that returns a <code>Tuple</code> of <code>Dimension</code></p><p>Only keyword <code>rebuild</code> is guaranteed to work with <code>AbstractBasicDimArray</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L3-L10" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractDimArray" href="#DimensionalData.AbstractDimArray"><span class="jlbinding">DimensionalData.AbstractDimArray</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractBasicArray</span></span></code></pre></div><p>Abstract supertype for all "dim" arrays.</p><p>These arrays return a <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> from a <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> method, and can be rebuilt using <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a>.</p><p><code>parent</code> must return the source array.</p><p>They should have <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.metadata"><code>metadata</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.refdims"><code>refdims</code></a> methods, although these are optional.</p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> method for <code>AbstractDimArray</code> must accept <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code> arguments.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L41-L59" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimArray" href="#DimensionalData.DimArray"><span class="jlbinding">DimensionalData.DimArray</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_api_reference" data-v-83890dd9><div><h1 id="API-Reference" tabindex="-1">API Reference <a class="header-anchor" href="#API-Reference" aria-label="Permalink to "API Reference {#API-Reference}""></a></h1><h2 id="arrays" tabindex="-1">Arrays <a class="header-anchor" href="#arrays" aria-label="Permalink to "Arrays""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractBasicDimArray" href="#DimensionalData.AbstractBasicDimArray"><span class="jlbinding">DimensionalData.AbstractBasicDimArray</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractBasicDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span></code></pre></div><p>The abstract supertype for all arrays with a <code>dims</code> method that returns a <code>Tuple</code> of <code>Dimension</code></p><p>Only keyword <code>rebuild</code> is guaranteed to work with <code>AbstractBasicDimArray</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L3-L10" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractDimArray" href="#DimensionalData.AbstractDimArray"><span class="jlbinding">DimensionalData.AbstractDimArray</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractBasicArray</span></span></code></pre></div><p>Abstract supertype for all "dim" arrays.</p><p>These arrays return a <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> from a <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> method, and can be rebuilt using <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a>.</p><p><code>parent</code> must return the source array.</p><p>They should have <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.metadata"><code>metadata</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.refdims"><code>refdims</code></a> methods, although these are optional.</p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> method for <code>AbstractDimArray</code> must accept <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code> arguments.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L41-L59" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimArray" href="#DimensionalData.DimArray"><span class="jlbinding">DimensionalData.DimArray</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims, refdims, name, metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; refdims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>The main concrete subtype of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a>.</p><p><code>DimArray</code> maintains and updates its <code>Dimension</code>s through transformations and moves dimensions to reference dimension <code>refdims</code> after reducing operations (like e.g. <code>mean</code>).</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractArray</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A string name for the array. Shows in plots and tables.</p></li><li><p><code>refdims</code>: refence dimensions. Usually set programmatically to track past slices and reductions of dimension for labelling and reconstruction.</p></li><li><p><code>metadata</code>: <code>Dict</code> or <code>Metadata</code> object, or <code>NoMetadata()</code></p></li></ul><p>Indexing can be done with all regular indices, or with <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s and/or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates, DimensionalData</span></span> @@ -49,7 +49,7 @@ <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.774092</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.823656</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 40</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.637077</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692235</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L333-L391" target="_blank" rel="noreferrer">source</a></p></details><p>Shorthand <code>AbstractDimArray</code> constructors:</p><details class="jldocstring custom-block" open><summary><a id="Base.fill" href="#Base.fill"><span class="jlbinding">Base.fill</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692235</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L333-L391" target="_blank" rel="noreferrer">source</a></p></details><p>Shorthand <code>AbstractDimArray</code> constructors:</p><details class="jldocstring custom-block" open><summary><a id="Base.fill" href="#Base.fill"><span class="jlbinding">Base.fill</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> with a fill value of <code>x</code>.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Random; Random</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seed!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">123</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -59,7 +59,7 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L476-L504" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.rand" href="#Base.rand"><span class="jlbinding">Base.rand</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L476-L504" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.rand" href="#Base.rand"><span class="jlbinding">Base.rand</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(r</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRNG</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(r</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRNG</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of random values.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -83,7 +83,7 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.443494</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.253849</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.867547</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.334152</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0802658</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.512083</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.427328</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.311448</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L507-L549" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.zeros" href="#Base.zeros"><span class="jlbinding">Base.zeros</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.512083</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.427328</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.311448</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L507-L549" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.zeros" href="#Base.zeros"><span class="jlbinding">Base.zeros</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of zeros.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -105,7 +105,7 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L552-L593" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.ones" href="#Base.ones"><span class="jlbinding">Base.ones</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L552-L593" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.ones" href="#Base.ones"><span class="jlbinding">Base.ones</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of ones.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -127,8 +127,8 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L596-L637" target="_blank" rel="noreferrer">source</a></p></details><p>Functions for getting information from objects:</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dims" href="#DimensionalData.Dimensions.dims"><span class="jlbinding">DimensionalData.Dimensions.dims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L596-L637" target="_blank" rel="noreferrer">source</a></p></details><p>Functions for getting information from objects:</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dims" href="#DimensionalData.Dimensions.dims"><span class="jlbinding">DimensionalData.Dimensions.dims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Get the dimension(s) matching the type(s) of the query dimension.</p><p>Lookup can be an Int or an Dimension, or a tuple containing any combination of either.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or a single <code>Dimension</code> or <code>Dimension</code> <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z))</span></span> @@ -142,13 +142,13 @@ <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.refdims" href="#DimensionalData.Dimensions.refdims"><span class="jlbinding">DimensionalData.Dimensions.refdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Reference dimensions for an array that is a slice or view of another array with more dimensions.</p><p><code>slicedims(a, dims)</code> returns a tuple containing the current new dimensions and the new reference dimensions. Refdims can be stored in a field or discarded, as it is mostly to give context to plots. Ignoring refdims will simply leave some captions empty.</p><p>The default is to return an empty <code>Tuple</code> <code>()</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L62-L75" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.metadata" href="#DimensionalData.Dimensions.Lookups.metadata"><span class="jlbinding">DimensionalData.Dimensions.Lookups.metadata</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (object metadata)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.refdims" href="#DimensionalData.Dimensions.refdims"><span class="jlbinding">DimensionalData.Dimensions.refdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Reference dimensions for an array that is a slice or view of another array with more dimensions.</p><p><code>slicedims(a, dims)</code> returns a tuple containing the current new dimensions and the new reference dimensions. Refdims can be stored in a field or discarded, as it is mostly to give context to plots. Ignoring refdims will simply leave some captions empty.</p><p>The default is to return an empty <code>Tuple</code> <code>()</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L62-L75" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.metadata" href="#DimensionalData.Dimensions.Lookups.metadata"><span class="jlbinding">DimensionalData.Dimensions.Lookups.metadata</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (object metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple (Dimension metadata)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Returns the metadata for an object or for the specified dimension(s)</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L117-L126" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.name" href="#DimensionalData.Dimensions.name"><span class="jlbinding">DimensionalData.Dimensions.name</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Returns the metadata for an object or for the specified dimension(s)</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L117-L126" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.name" href="#DimensionalData.Dimensions.name"><span class="jlbinding">DimensionalData.Dimensions.name</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Tuple) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,Symbol}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,Symbol}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span></code></pre></div><p>Get the name of an array or Dimension, or a tuple of of either as a Symbol.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L129-L139" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.otherdims" href="#DimensionalData.Dimensions.otherdims"><span class="jlbinding">DimensionalData.Dimensions.otherdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span></code></pre></div><p>Get the name of an array or Dimension, or a tuple of of either as a Symbol.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L129-L139" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.otherdims" href="#DimensionalData.Dimensions.otherdims"><span class="jlbinding">DimensionalData.Dimensions.otherdims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -156,7 +156,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Y, Z))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dimnum" href="#DimensionalData.Dimensions.dimnum"><span class="jlbinding">DimensionalData.Dimensions.dimnum</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.dimnum" href="#DimensionalData.Dimensions.dimnum"><span class="jlbinding">DimensionalData.Dimensions.dimnum</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Int</span></span></code></pre></div><p>Get the number(s) of <code>Dimension</code>(s) as ordered in the dimensions of an object.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple, Array or single <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p>The return type will be a Tuple of <code>Int</code> or a single <code>Int</code>, depending on whether <code>query</code> is a <code>Tuple</code> or single <code>Dimension</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> @@ -165,7 +165,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Y)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.hasdim" href="#DimensionalData.Dimensions.hasdim"><span class="jlbinding">DimensionalData.Dimensions.hasdim</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.hasdim" href="#DimensionalData.Dimensions.hasdim"><span class="jlbinding">DimensionalData.Dimensions.hasdim</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if an object <code>x</code> has dimensions that match or inherit from the <code>query</code> dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>Check if an object or tuple contains an <code>Dimension</code>, or a tuple of dimensions.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -178,7 +178,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Multi-array-datasets" tabindex="-1">Multi-array datasets <a class="header-anchor" href="#Multi-array-datasets" aria-label="Permalink to "Multi-array datasets {#Multi-array-datasets}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractDimStack" href="#DimensionalData.AbstractDimStack"><span class="jlbinding">DimensionalData.AbstractDimStack</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimStack</span></span></code></pre></div><p>Abstract supertype for dimensional stacks.</p><p>These have multiple layers of data, but share dimensions.</p><p>Notably, their behaviour lies somewhere between a <code>DimArray</code> and a <code>NamedTuple</code>:</p><ul><li><p>indexing with a <code>Symbol</code> as in <code>dimstack[:symbol]</code> returns a <code>DimArray</code> layer.</p></li><li><p>iteration and <code>map</code> apply over array layers, as indexed with a <code>Symbol</code>.</p></li><li><p><code>getindex</code> and many base methods are applied as for <code>DimArray</code> - to avoid the need to always use <code>map</code>.</p></li></ul><p>This design gives very succinct code when working with many-layered, mixed-dimension objects. But it may be jarring initially - the most surprising outcome is that <code>dimstack[1]</code> will return a <code>NamedTuple</code> of values for the first index in all layers, while <code>first(dimstack)</code> will return the first value of the iterator - the <code>DimArray</code> for the first layer.</p><p>See <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimStack"><code>DimStack</code></a> for the concrete implementation. Most methods are defined on the abstract type.</p><p>To extend <code>AbstractDimStack</code>, implement argument and keyword version of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> and also <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.rebuild_from_arrays"><code>rebuild_from_arrays</code></a>.</p><p>The constructor of an <code>AbstractDimStack</code> must accept a <code>NamedTuple</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L1-L27" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimStack" href="#DimensionalData.DimStack"><span class="jlbinding">DimensionalData.DimStack</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimStack </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimStack</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Multi-array-datasets" tabindex="-1">Multi-array datasets <a class="header-anchor" href="#Multi-array-datasets" aria-label="Permalink to "Multi-array datasets {#Multi-array-datasets}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractDimStack" href="#DimensionalData.AbstractDimStack"><span class="jlbinding">DimensionalData.AbstractDimStack</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimStack</span></span></code></pre></div><p>Abstract supertype for dimensional stacks.</p><p>These have multiple layers of data, but share dimensions.</p><p>Notably, their behaviour lies somewhere between a <code>DimArray</code> and a <code>NamedTuple</code>:</p><ul><li><p>indexing with a <code>Symbol</code> as in <code>dimstack[:symbol]</code> returns a <code>DimArray</code> layer.</p></li><li><p>iteration and <code>map</code> apply over array layers, as indexed with a <code>Symbol</code>.</p></li><li><p><code>getindex</code> and many base methods are applied as for <code>DimArray</code> - to avoid the need to always use <code>map</code>.</p></li></ul><p>This design gives very succinct code when working with many-layered, mixed-dimension objects. But it may be jarring initially - the most surprising outcome is that <code>dimstack[1]</code> will return a <code>NamedTuple</code> of values for the first index in all layers, while <code>first(dimstack)</code> will return the first value of the iterator - the <code>DimArray</code> for the first layer.</p><p>See <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimStack"><code>DimStack</code></a> for the concrete implementation. Most methods are defined on the abstract type.</p><p>To extend <code>AbstractDimStack</code>, implement argument and keyword version of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> and also <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.rebuild_from_arrays"><code>rebuild_from_arrays</code></a>.</p><p>The constructor of an <code>AbstractDimStack</code> must accept a <code>NamedTuple</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L1-L27" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimStack" href="#DimensionalData.DimStack"><span class="jlbinding">DimensionalData.DimStack</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimStack </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimStack</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{AbstractDimArray}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -205,7 +205,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(one </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, two </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 8.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, three </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">isa</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStack</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L278-L358" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Dimension-generators" tabindex="-1">Dimension generators <a class="header-anchor" href="#Dimension-generators" aria-label="Permalink to "Dimension generators {#Dimension-generators}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimIndices" href="#DimensionalData.DimIndices"><span class="jlbinding">DimensionalData.DimIndices</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimIndices </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L278-L358" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Dimension-generators" tabindex="-1">Dimension generators <a class="header-anchor" href="#Dimension-generators" aria-label="Permalink to "Dimension generators {#Dimension-generators}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimIndices" href="#DimensionalData.DimIndices"><span class="jlbinding">DimensionalData.DimIndices</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimIndices </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimIndices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimIndices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -242,7 +242,7 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└─────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'c'</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.9063</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0991336</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692209</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L53-L113" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimSelectors" href="#DimensionalData.DimSelectors"><span class="jlbinding">DimensionalData.DimSelectors</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimSelectors </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692209</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L53-L113" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimSelectors" href="#DimensionalData.DimSelectors"><span class="jlbinding">DimensionalData.DimSelectors</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimSelectors </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimSelectors</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; selectors, atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimSelectors</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; selectors, atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -260,11 +260,11 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 11.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 21.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.691162</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.218579</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.539076</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0303789</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.420756</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.485687</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 22.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0967863</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.864856</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.870485</span></span></code></pre></div><p>Using <code>At</code> would make sure we only use exact interpolation, while <code>Contains</code> with sampling of <code>Intervals</code> would make sure that each values is taken only from an Interval that is present in the lookups.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L200-L246" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimPoints" href="#DimensionalData.DimPoints"><span class="jlbinding">DimensionalData.DimPoints</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimPoints </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 22.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0967863</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.864856</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.870485</span></span></code></pre></div><p>Using <code>At</code> would make sure we only use exact interpolation, while <code>Contains</code> with sampling of <code>Intervals</code> would make sure that each values is taken only from an Interval that is present in the lookups.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L200-L246" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimPoints" href="#DimensionalData.DimPoints"><span class="jlbinding">DimensionalData.DimPoints</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimPoints </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; order)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span></code></pre></div><p>Like <code>CartesianIndices</code>, but for the point values of the dimension index. Behaves as an <code>Array</code> of <code>Tuple</code> lookup values (whatever they are) for all combinations of the lookup values of <code>dims</code>.</p><p>Either a <code>Dimension</code>, a <code>Tuple</code> of <code>Dimension</code> or an object <code>x</code> that defines a <code>dims</code> method can be passed in.</p><p><strong>Keywords</strong></p><ul><li><code>order</code>: determines the order of the points, the same as the order of <code>dims</code> by default.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L153-L170" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Tables.jl/TableTraits.jl-interface" tabindex="-1">Tables.jl/TableTraits.jl interface <a class="header-anchor" href="#Tables.jl/TableTraits.jl-interface" aria-label="Permalink to "Tables.jl/TableTraits.jl interface {#Tables.jl/TableTraits.jl-interface}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractDimTable" href="#DimensionalData.AbstractDimTable"><span class="jlbinding">DimensionalData.AbstractDimTable</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Tables.AbstractColumns</span></span></code></pre></div><p>Abstract supertype for dim tables</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/tables.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimTable" href="#DimensionalData.DimTable"><span class="jlbinding">DimensionalData.DimTable</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimTable</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span></code></pre></div><p>Like <code>CartesianIndices</code>, but for the point values of the dimension index. Behaves as an <code>Array</code> of <code>Tuple</code> lookup values (whatever they are) for all combinations of the lookup values of <code>dims</code>.</p><p>Either a <code>Dimension</code>, a <code>Tuple</code> of <code>Dimension</code> or an object <code>x</code> that defines a <code>dims</code> method can be passed in.</p><p><strong>Keywords</strong></p><ul><li><code>order</code>: determines the order of the points, the same as the order of <code>dims</code> by default.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L153-L170" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Tables.jl/TableTraits.jl-interface" tabindex="-1">Tables.jl/TableTraits.jl interface <a class="header-anchor" href="#Tables.jl/TableTraits.jl-interface" aria-label="Permalink to "Tables.jl/TableTraits.jl interface {#Tables.jl/TableTraits.jl-interface}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractDimTable" href="#DimensionalData.AbstractDimTable"><span class="jlbinding">DimensionalData.AbstractDimTable</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Tables.AbstractColumns</span></span></code></pre></div><p>Abstract supertype for dim tables</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/tables.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimTable" href="#DimensionalData.DimTable"><span class="jlbinding">DimensionalData.DimTable</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimTable</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimTable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; mergedims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimTable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; layersfrom</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mergedims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -294,7 +294,7 @@ <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> …</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/tables.jl#L38-L94" target="_blank" rel="noreferrer">source</a></p></details><h1 id="Group-by-methods" tabindex="-1">Group by methods <a class="header-anchor" href="#Group-by-methods" aria-label="Permalink to "Group by methods {#Group-by-methods}""></a></h1><p>For transforming DimensionalData objects:</p><details class="jldocstring custom-block" open><summary><a id="DataAPI.groupby" href="#DataAPI.groupby"><span class="jlbinding">DataAPI.groupby</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/tables.jl#L38-L94" target="_blank" rel="noreferrer">source</a></p></details><h1 id="Group-by-methods" tabindex="-1">Group by methods <a class="header-anchor" href="#Group-by-methods" aria-label="Permalink to "Group by methods {#Group-by-methods}""></a></h1><p>For transforming DimensionalData objects:</p><details class="jldocstring custom-block" open><summary><a id="DataAPI.groupby" href="#DataAPI.groupby"><span class="jlbinding">DataAPI.groupby</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension{<:Callable}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">...)</span></span></code></pre></div><p>Group <code>A</code> by grouping functions or <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Bins"><code>Bins</code></a> over multiple dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>A</code>: any <code>AbstractDimArray</code> or <code>AbstractDimStack</code>.</p></li><li><p><code>dims</code>: <code>Pair</code>s such as <code>groups = groupby(A, :dimname => groupingfunction)</code> or wrapped <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s like <code>groups = groupby(A, DimType(groupingfunction))</code>. Instead of a grouping function <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Bins"><code>Bins</code></a> can be used to specify group bins.</p></li></ul><p><strong>Return value</strong></p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimGroupByArray"><code>DimGroupByArray</code></a> is returned, which is basically a regular <code>AbstractDimArray</code> but holding the grouped <code>AbstractDimArray</code> or <code>AbstractDimStack</code>. Its <code>dims</code> hold the sorted values returned by the grouping function/s.</p><p>Base julia and package methods work on <code>DimGroupByArray</code> as for any other <code>AbstractArray</code> of <code>AbstractArray</code>.</p><p>It is common to broadcast or <code>map</code> a reducing function over groups, such as <code>mean</code> or <code>sum</code>, like <code>mean.(groups)</code> or <code>map(mean, groups)</code>. This will return a regular <code>DimArray</code>, or <code>DimGroupByArray</code> if <code>dims</code> keyword is used in the reducing function or it otherwise returns an <code>AbstractDimArray</code> or <code>AbstractDimStack</code>.</p><p><strong>Example</strong></p><p>Group some data along the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Day</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2003</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)));</span></span> @@ -347,8 +347,8 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ⋮</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501105</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.500644</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 11</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.498606</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.498801</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501643</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.499298</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L218-L325" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimGroupByArray" href="#DimensionalData.DimGroupByArray"><span class="jlbinding">DimensionalData.DimGroupByArray</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimGroupByArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span></code></pre></div><p><code>DimGroupByArray</code> is essentially a <code>DimArray</code> but holding the results of a <code>groupby</code> operation.</p><p>Its dimensions are the sorted results of the grouping functions used in <code>groupby</code>.</p><p>This wrapper allows for specialisations on later broadcast or reducing operations, e.g. for chunk reading with DiskArrays.jl, because we know the data originates from a single array.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Bins" href="#DimensionalData.Bins"><span class="jlbinding">DimensionalData.Bins</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, bins; labels, pad)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bins; labels, pad)</span></span></code></pre></div><p>Specify bins to reduce groups after applying function <code>f</code>.</p><ul><li><p><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</p></li><li><p><code>bins</code>:</p><ul><li><p>an <code>Integer</code> will divide the group values into equally spaced sections.</p></li><li><p>an <code>AbstractArray</code> of values will be treated as exact matches for the return value of <code>f</code>. For example, <code>1:3</code> will create 3 bins - 1, 2, 3.</p></li><li><p>an <code>AbstractArray</code> of <code>IntervalSets.Interval</code> can be used to explicitly define the intervals. Overlapping intervals have undefined behaviour.</p></li></ul></li></ul><p><strong>Keywords</strong></p><ul><li><p><code>pad</code>: fraction of the total interval to pad at each end when <code>Bins</code> contains an <code>Integer</code>. This avoids losing the edge values. Note this is a messy solution - it will often be prefereble to manually specify a <code>Vector</code> of chosen <code>Interval</code>s rather than relying on passing an <code>Integer</code> and <code>pad</code>.</p></li><li><p><code>labels</code>: a list of descriptive labels for the bins. The labels need to have the same length as <code>bins</code>.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L103-L126" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.ranges" href="#DimensionalData.ranges"><span class="jlbinding">DimensionalData.ranges</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ranges</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange{<:Integer}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L455-L459" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.intervals" href="#DimensionalData.intervals"><span class="jlbinding">DimensionalData.intervals</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L448-L452" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.CyclicBins" href="#DimensionalData.CyclicBins"><span class="jlbinding">DimensionalData.CyclicBins</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">CyclicBins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f; cycle, start, step, labels)</span></span></code></pre></div><p>Cyclic bins to reduce groups after applying function <code>f</code>. Groups can wrap around the cycle. This is used for grouping in <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.seasons"><code>seasons</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.months"><code>months</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.hours"><code>hours</code></a> but can also be used for custom cycles.</p><ul><li><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>cycle</code>: the length of the cycle, in return values of <code>f</code>.</p></li><li><p><code>start</code>: the start of the cycle: a return value of <code>f</code>.</p></li><li><p><code>step</code> the number of sequential values to group.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected bins.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L141-L159" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.seasons" href="#DimensionalData.seasons"><span class="jlbinding">DimensionalData.seasons</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seasons</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">December, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for three month periods.</p><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start in December, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected quarters.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L174-L183" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.months" href="#DimensionalData.months"><span class="jlbinding">DimensionalData.months</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">months</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">January, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary month periods. These can wrap around the end of a year.</p><ul><li><code>step</code> the number of months to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default months start in January, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected months.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L186-L199" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.hours" href="#DimensionalData.hours"><span class="jlbinding">DimensionalData.hours</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hours</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary hour periods. These can wrap around the end of the day.</p><ul><li><code>steps</code> the number of hours to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start at <code>0</code>, but any integer <code>1:24</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected hours of the day.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L202-L215" target="_blank" rel="noreferrer">source</a></p></details><h1 id="Utility-methods" tabindex="-1">Utility methods <a class="header-anchor" href="#Utility-methods" aria-label="Permalink to "Utility methods {#Utility-methods}""></a></h1><p>For transforming DimensionalData objects:</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.set" href="#DimensionalData.Dimensions.Lookups.set"><span class="jlbinding">DimensionalData.Dimensions.Lookups.set</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, val)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501643</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.499298</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L218-L325" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimGroupByArray" href="#DimensionalData.DimGroupByArray"><span class="jlbinding">DimensionalData.DimGroupByArray</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimGroupByArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span></code></pre></div><p><code>DimGroupByArray</code> is essentially a <code>DimArray</code> but holding the results of a <code>groupby</code> operation.</p><p>Its dimensions are the sorted results of the grouping functions used in <code>groupby</code>.</p><p>This wrapper allows for specialisations on later broadcast or reducing operations, e.g. for chunk reading with DiskArrays.jl, because we know the data originates from a single array.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Bins" href="#DimensionalData.Bins"><span class="jlbinding">DimensionalData.Bins</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, bins; labels, pad)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bins; labels, pad)</span></span></code></pre></div><p>Specify bins to reduce groups after applying function <code>f</code>.</p><ul><li><p><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</p></li><li><p><code>bins</code>:</p><ul><li><p>an <code>Integer</code> will divide the group values into equally spaced sections.</p></li><li><p>an <code>AbstractArray</code> of values will be treated as exact matches for the return value of <code>f</code>. For example, <code>1:3</code> will create 3 bins - 1, 2, 3.</p></li><li><p>an <code>AbstractArray</code> of <code>IntervalSets.Interval</code> can be used to explicitly define the intervals. Overlapping intervals have undefined behaviour.</p></li></ul></li></ul><p><strong>Keywords</strong></p><ul><li><p><code>pad</code>: fraction of the total interval to pad at each end when <code>Bins</code> contains an <code>Integer</code>. This avoids losing the edge values. Note this is a messy solution - it will often be prefereble to manually specify a <code>Vector</code> of chosen <code>Interval</code>s rather than relying on passing an <code>Integer</code> and <code>pad</code>.</p></li><li><p><code>labels</code>: a list of descriptive labels for the bins. The labels need to have the same length as <code>bins</code>.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L103-L126" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.ranges" href="#DimensionalData.ranges"><span class="jlbinding">DimensionalData.ranges</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ranges</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange{<:Integer}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L455-L459" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.intervals" href="#DimensionalData.intervals"><span class="jlbinding">DimensionalData.intervals</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L448-L452" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.CyclicBins" href="#DimensionalData.CyclicBins"><span class="jlbinding">DimensionalData.CyclicBins</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">CyclicBins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f; cycle, start, step, labels)</span></span></code></pre></div><p>Cyclic bins to reduce groups after applying function <code>f</code>. Groups can wrap around the cycle. This is used for grouping in <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.seasons"><code>seasons</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.months"><code>months</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.hours"><code>hours</code></a> but can also be used for custom cycles.</p><ul><li><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>cycle</code>: the length of the cycle, in return values of <code>f</code>.</p></li><li><p><code>start</code>: the start of the cycle: a return value of <code>f</code>.</p></li><li><p><code>step</code> the number of sequential values to group.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected bins.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L141-L159" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.seasons" href="#DimensionalData.seasons"><span class="jlbinding">DimensionalData.seasons</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seasons</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">December, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for three month periods.</p><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start in December, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected quarters.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L174-L183" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.months" href="#DimensionalData.months"><span class="jlbinding">DimensionalData.months</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">months</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">January, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary month periods. These can wrap around the end of a year.</p><ul><li><code>step</code> the number of months to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default months start in January, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected months.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L186-L199" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.hours" href="#DimensionalData.hours"><span class="jlbinding">DimensionalData.hours</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hours</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary hour periods. These can wrap around the end of the day.</p><ul><li><code>steps</code> the number of hours to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start at <code>0</code>, but any integer <code>1:24</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected hours of the day.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L202-L215" target="_blank" rel="noreferrer">source</a></p></details><h1 id="Utility-methods" tabindex="-1">Utility methods <a class="header-anchor" href="#Utility-methods" aria-label="Permalink to "Utility methods {#Utility-methods}""></a></h1><p>For transforming DimensionalData objects:</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.set" href="#DimensionalData.Dimensions.Lookups.set"><span class="jlbinding">DimensionalData.Dimensions.Lookups.set</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, val)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pairs...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> @@ -409,11 +409,11 @@ <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> -</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> -</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/set.jl#L3-L118" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.rebuild" href="#DimensionalData.Dimensions.Lookups.rebuild"><span class="jlbinding">DimensionalData.Dimensions.Lookups.rebuild</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an object struct with updated field values.</p><p><code>x</code> can be a <code>AbstractDimArray</code>, a <code>Dimension</code>, <code>Lookup</code> or other custom types.</p><p>This is an abstraction that allows inbuilt and custom types to be rebuilt to update their fields, as most objects in DimensionalData.jl are immutable.</p><p>Rebuild is mostly automated using <code>ConstructionBase.setproperties</code>. It should only be defined if your object has fields with with different names to DimensionalData objects. Try not to do that!</p><p>The arguments required are defined for the abstract type that has a <code>rebuild</code> method.</p><p><strong><code>AbstractBasicDimArray</code>:</strong></p><ul><li><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></li></ul><p><strong><code>AbstractDimArray</code>:</strong></p><ul><li><p><code>data</code>: the parent object - an <code>AbstractArray</code></p></li><li><p><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>refdims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A Symbol, or <code>NoName</code> and <code>Name</code> on GPU.</p></li><li><p><code>metadata</code>: A <code>Dict</code>-like object</p></li></ul><p><strong><code>AbstractDimStack</code>:</strong></p><ul><li><p><code>data</code>: the parent object, often a <code>NamedTuple</code></p></li><li><p><code>dims</code>, <code>refdims</code>, <code>metadata</code></p></li></ul><p><strong><code>Dimension</code>:</strong></p><ul><li><code>val</code>: anything.</li></ul><p><strong><code>Lookup</code>:</strong></p><ul><li><p><code>data</code>: the parent object, an <code>AbstractArray</code></p></li><li><p>Note: argument <code>rebuild</code> is deprecated on <code>AbstractDimArray</code> and</p></li></ul><p><code>AbstractDimStack</code> in favour of always using the keyword version. In future the argument version will only be used on <code>Dimension</code>, which only have one argument.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L3-L46" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.modify" href="#DimensionalData.modify"><span class="jlbinding">DimensionalData.modify</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/set.jl#L3-L118" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Dimensions.Lookups.rebuild" href="#DimensionalData.Dimensions.Lookups.rebuild"><span class="jlbinding">DimensionalData.Dimensions.Lookups.rebuild</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an object struct with updated field values.</p><p><code>x</code> can be a <code>AbstractDimArray</code>, a <code>Dimension</code>, <code>Lookup</code> or other custom types.</p><p>This is an abstraction that allows inbuilt and custom types to be rebuilt to update their fields, as most objects in DimensionalData.jl are immutable.</p><p>Rebuild is mostly automated using <code>ConstructionBase.setproperties</code>. It should only be defined if your object has fields with with different names to DimensionalData objects. Try not to do that!</p><p>The arguments required are defined for the abstract type that has a <code>rebuild</code> method.</p><p><strong><code>AbstractBasicDimArray</code>:</strong></p><ul><li><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></li></ul><p><strong><code>AbstractDimArray</code>:</strong></p><ul><li><p><code>data</code>: the parent object - an <code>AbstractArray</code></p></li><li><p><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>refdims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A Symbol, or <code>NoName</code> and <code>Name</code> on GPU.</p></li><li><p><code>metadata</code>: A <code>Dict</code>-like object</p></li></ul><p><strong><code>AbstractDimStack</code>:</strong></p><ul><li><p><code>data</code>: the parent object, often a <code>NamedTuple</code></p></li><li><p><code>dims</code>, <code>refdims</code>, <code>metadata</code></p></li></ul><p><strong><code>Dimension</code>:</strong></p><ul><li><code>val</code>: anything.</li></ul><p><strong><code>Lookup</code>:</strong></p><ul><li><p><code>data</code>: the parent object, an <code>AbstractArray</code></p></li><li><p>Note: argument <code>rebuild</code> is deprecated on <code>AbstractDimArray</code> and</p></li></ul><p><code>AbstractDimStack</code> in favour of always using the keyword version. In future the argument version will only be used on <code>Dimension</code>, which only have one argument.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L3-L46" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.modify" href="#DimensionalData.modify"><span class="jlbinding">DimensionalData.modify</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, lookupdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> typeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span></code></pre></div><p>Modify the parent data, rebuilding the object wrapper without change. <code>f</code> must return a <code>AbstractArray</code> of the same size as the original.</p><p>This method is mostly useful as a way of swapping the parent array type of an object.</p><p><strong>Example</strong></p><p>If we have a previously-defined <code>DimArray</code>, we can copy it to an Nvidia GPU with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(CuArray, A)</span></span></code></pre></div><p>This also works for all the data layers in a <code>DimStack</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L64-L86" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.@d" href="#DimensionalData.@d"><span class="jlbinding">DimensionalData.@d</span></a> <span class="VPBadge info jlObjectType jlMacro"><!--[-->Macro<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> broadcast_expression options</span></span></code></pre></div><p>Dimensional broadcast macro extending Base Julia broadcasting to work with missing and permuted dimensions.</p><p>Will permute and resshape singleton dimensions so that all <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> in a broadcast will broadcast over matching dimensions.</p><p>It is possible to pass options as the second argument of the macro to control the behaviour, as a single assignment or as a NamedTuple. Options names must be written explicitly, not passed in namedtuple variable.</p><p><strong>Options</strong></p><ul><li><p><code>dims</code>: Pass a Tuple of <code>Dimension</code>s, <code>Dimension</code> types or <code>Symbol</code>s to fix the dimension order of the output array. Otherwise dimensions will be in order of appearance. If dims with lookups are passed, these will be applied to the returned array with <code>set</code>.</p></li><li><p><code>strict</code>: <code>true</code> or <code>false</code>. Check that all lookup values match explicitly.</p></li></ul><p>All other keywords are passed to <code>DimensionalData.rebuild</code>. This means <code>name</code>, <code>metadata</code>, etc for the returned array can be set here, or for example <code>missingval</code> in Rasters.jl.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(CuArray, A)</span></span></code></pre></div><p>This also works for all the data layers in a <code>DimStack</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L64-L86" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.@d" href="#DimensionalData.@d"><span class="jlbinding">DimensionalData.@d</span></a> <span class="VPBadge info jlObjectType jlMacro"><!--[-->Macro<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> broadcast_expression options</span></span></code></pre></div><p>Dimensional broadcast macro extending Base Julia broadcasting to work with missing and permuted dimensions.</p><p>Will permute and resshape singleton dimensions so that all <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> in a broadcast will broadcast over matching dimensions.</p><p>It is possible to pass options as the second argument of the macro to control the behaviour, as a single assignment or as a NamedTuple. Options names must be written explicitly, not passed in namedtuple variable.</p><p><strong>Options</strong></p><ul><li><p><code>dims</code>: Pass a Tuple of <code>Dimension</code>s, <code>Dimension</code> types or <code>Symbol</code>s to fix the dimension order of the output array. Otherwise dimensions will be in order of appearance. If dims with lookups are passed, these will be applied to the returned array with <code>set</code>.</p></li><li><p><code>strict</code>: <code>true</code> or <code>false</code>. Check that all lookup values match explicitly.</p></li></ul><p>All other keywords are passed to <code>DimensionalData.rebuild</code>. This means <code>name</code>, <code>metadata</code>, etc for the returned array can be set here, or for example <code>missingval</code> in Rasters.jl.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"></span> @@ -425,7 +425,7 @@ <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2</span></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Use parentheses areound `@.` if you need to pass options</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.+</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Y, X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L103-L157" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.broadcast_dims" href="#DimensionalData.broadcast_dims"><span class="jlbinding">DimensionalData.broadcast_dims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, permuting and reshaping dimensions to match where required. The result will contain all the dimensions in all passed in arrays in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</li></ul><p>This is like broadcasting over every slice of <code>A</code> if it is sliced by the dimensions of <code>B</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L110-L123" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.broadcast_dims!" href="#DimensionalData.broadcast_dims!"><span class="jlbinding">DimensionalData.broadcast_dims!</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dest</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dest</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, writing to <code>dest</code>. <code>sources</code> are permuting and reshaping dimensions to match where required.</p><p>The result will contain all the dimensions in all passed in arrays, in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><p><code>dest</code>: <code>AbstractDimArray</code> to update.</p></li><li><p><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L139-L152" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.mergedims" href="#DimensionalData.mergedims"><span class="jlbinding">DimensionalData.mergedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a dimension <code>new_dim</code> whose indices are a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the indices of <code>old_dims</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L719-L724" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim, others</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dims_new</span></span></code></pre></div><p>If dimensions <code>old_dims</code>, <code>new_dim</code>, etc. are found in <code>dims</code>, then return new <code>dims_new</code> where all dims in <code>old_dims</code> have been combined into a single dim <code>new_dim</code>. The returned dimension will keep only the name of <code>new_dim</code>. Its coords will be a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the coords of the dims in <code>old_dims</code>. New dimensions are always placed at the end of <code>dims_new</code>. <code>others</code> contains other dimension pairs to be merged.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.+</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Y, X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L103-L157" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.broadcast_dims" href="#DimensionalData.broadcast_dims"><span class="jlbinding">DimensionalData.broadcast_dims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, permuting and reshaping dimensions to match where required. The result will contain all the dimensions in all passed in arrays in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</li></ul><p>This is like broadcasting over every slice of <code>A</code> if it is sliced by the dimensions of <code>B</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L110-L123" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.broadcast_dims!" href="#DimensionalData.broadcast_dims!"><span class="jlbinding">DimensionalData.broadcast_dims!</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dest</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dest</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, writing to <code>dest</code>. <code>sources</code> are permuting and reshaping dimensions to match where required.</p><p>The result will contain all the dimensions in all passed in arrays, in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><p><code>dest</code>: <code>AbstractDimArray</code> to update.</p></li><li><p><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L139-L152" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.mergedims" href="#DimensionalData.mergedims"><span class="jlbinding">DimensionalData.mergedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a dimension <code>new_dim</code> whose indices are a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the indices of <code>old_dims</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L719-L724" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim, others</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dims_new</span></span></code></pre></div><p>If dimensions <code>old_dims</code>, <code>new_dim</code>, etc. are found in <code>dims</code>, then return new <code>dims_new</code> where all dims in <code>old_dims</code> have been combined into a single dim <code>new_dim</code>. The returned dimension will keep only the name of <code>new_dim</code>. Its coords will be a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the coords of the dims in <code>old_dims</code>. New dimensions are always placed at the end of <code>dims_new</code>. <code>others</code> contains other dimension pairs to be merged.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span> @@ -434,9 +434,9 @@ <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds, (X, Y) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :space</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Ti [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">],</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> space MergedLookup{Tuple{Float64, Int64}} [(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">…</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)] (</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L730-L753" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are the result of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(dims(A), dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L783-L788" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.unmergedims" href="#DimensionalData.unmergedims"><span class="jlbinding">DimensionalData.unmergedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(merged_dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Return the unmerged dimensions from a tuple of merged dimensions. However, the order of the original dimensions are not necessarily preserved.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L800-L804" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are restored to their original prior to calling <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(A, dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L811-L816" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.reorder" href="#DimensionalData.reorder"><span class="jlbinding">DimensionalData.reorder</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> space MergedLookup{Tuple{Float64, Int64}} [(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">…</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)] (</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L730-L753" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are the result of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(dims(A), dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L783-L788" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.unmergedims" href="#DimensionalData.unmergedims"><span class="jlbinding">DimensionalData.unmergedims</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(merged_dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Return the unmerged dimensions from a tuple of merged dimensions. However, the order of the original dimensions are not necessarily preserved.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L800-L804" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are restored to their original prior to calling <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(A, dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L811-L816" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.reorder" href="#DimensionalData.reorder"><span class="jlbinding">DimensionalData.reorder</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Reorder every dims index/array to <code>order</code>, or reorder index for the given dimension(s) in <code>order</code>.</p><p><code>order</code> can be an <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>, <code>Dimension => Order</code> pairs. A Tuple of Dimensions or any object that defines <code>dims</code> can be used in which case the dimensions of this object are used for reordering.</p><p>If no axis reversal is required the same objects will be returned, without allocation.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -450,7 +450,7 @@ <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(rev, da) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">==</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L2-L33" target="_blank" rel="noreferrer">source</a></p></details><h1 id="Global-lookup-strictness-settings" tabindex="-1">Global lookup strictness settings <a class="header-anchor" href="#Global-lookup-strictness-settings" aria-label="Permalink to "Global lookup strictness settings {#Global-lookup-strictness-settings}""></a></h1><p>Control how strict DimensionalData when comparing <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s before doing broadcasts and matrix multipications.</p><p>In some cases (especially <code>DimVector</code> and small <code>DimArray</code>) checking lookup values match may be too costly compared to the operations. You can turn check the current setting and turn them on or off with these methods.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.strict_broadcast" href="#DimensionalData.strict_broadcast"><span class="jlbinding">DimensionalData.strict_broadcast</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strict broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L16-L22" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.strict_broadcast!" href="#DimensionalData.strict_broadcast!"><span class="jlbinding">DimensionalData.strict_broadcast!</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global broadcasting checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L25-L31" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.strict_matmul" href="#DimensionalData.strict_matmul"><span class="jlbinding">DimensionalData.strict_matmul</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strickt broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/matmul.jl#L13-L19" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.strict_matmul!" href="#DimensionalData.strict_matmul!"><span class="jlbinding">DimensionalData.strict_matmul!</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global matrix multiplication checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/matmul.jl#L22-L28" target="_blank" rel="noreferrer">source</a></p></details><p>Base methods</p><details class="jldocstring custom-block" open><summary><a id="Base.cat" href="#Base.cat"><span class="jlbinding">Base.cat</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])], dims)</span></span></code></pre></div><p>Concatenate all or a subset of layers for all passed in stacks.</p><p><strong>Keywords</strong></p><ul><li><p><code>keys</code>: <code>Tuple</code> of <code>Symbol</code> for the stack keys to concatenate.</p></li><li><p><code>dims</code>: Dimension of child array to concatenate on.</p></li></ul><p><strong>Example</strong></p><p>Concatenate the :sea_surface_temp and :humidity layers in the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L99-L116" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.copy!" href="#Base.copy!"><span class="jlbinding">Base.copy!</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, key</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Key</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Copy the stack layer <code>key</code> to <code>dst</code>, which can be any <code>AbstractArray</code>.</p><p><strong>Example</strong></p><p>Copy the <code>:humidity</code> layer from <code>stack</code> to <code>array</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(array, stack, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L3-L15" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst)])</span></span></code></pre></div><p>Copy all or a subset of layers from one stack to another.</p><p><strong>Example</strong></p><p>Copy just the <code>:sea_surface_temp</code> and <code>:humidity</code> layers from <code>src</code> to <code>dst</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L18-L30" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.eachslice" href="#Base.eachslice"><span class="jlbinding">Base.eachslice</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims,drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>A</code>, returning arrays that select all the data from the other dimensions in <code>A</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code> if <code>drop=true</code>. Otherwise it will have the same dimensionality as the underlying array with inner dimensions having size 1.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/methods.jl#L112-L120" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stack</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims, drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>stack</code>, returning stacks that select all the data from the other dimensions in <code>stack</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code>.</p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L2-L33" target="_blank" rel="noreferrer">source</a></p></details><h1 id="Global-lookup-strictness-settings" tabindex="-1">Global lookup strictness settings <a class="header-anchor" href="#Global-lookup-strictness-settings" aria-label="Permalink to "Global lookup strictness settings {#Global-lookup-strictness-settings}""></a></h1><p>Control how strict DimensionalData when comparing <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s before doing broadcasts and matrix multipications.</p><p>In some cases (especially <code>DimVector</code> and small <code>DimArray</code>) checking lookup values match may be too costly compared to the operations. You can turn check the current setting and turn them on or off with these methods.</p><details class="jldocstring custom-block" open><summary><a id="DimensionalData.strict_broadcast" href="#DimensionalData.strict_broadcast"><span class="jlbinding">DimensionalData.strict_broadcast</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strict broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L16-L22" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.strict_broadcast!" href="#DimensionalData.strict_broadcast!"><span class="jlbinding">DimensionalData.strict_broadcast!</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global broadcasting checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L25-L31" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.strict_matmul" href="#DimensionalData.strict_matmul"><span class="jlbinding">DimensionalData.strict_matmul</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strickt broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/matmul.jl#L13-L19" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.strict_matmul!" href="#DimensionalData.strict_matmul!"><span class="jlbinding">DimensionalData.strict_matmul!</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global matrix multiplication checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/matmul.jl#L22-L28" target="_blank" rel="noreferrer">source</a></p></details><p>Base methods</p><details class="jldocstring custom-block" open><summary><a id="Base.cat" href="#Base.cat"><span class="jlbinding">Base.cat</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])], dims)</span></span></code></pre></div><p>Concatenate all or a subset of layers for all passed in stacks.</p><p><strong>Keywords</strong></p><ul><li><p><code>keys</code>: <code>Tuple</code> of <code>Symbol</code> for the stack keys to concatenate.</p></li><li><p><code>dims</code>: Dimension of child array to concatenate on.</p></li></ul><p><strong>Example</strong></p><p>Concatenate the :sea_surface_temp and :humidity layers in the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L99-L116" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.copy!" href="#Base.copy!"><span class="jlbinding">Base.copy!</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, key</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Key</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Copy the stack layer <code>key</code> to <code>dst</code>, which can be any <code>AbstractArray</code>.</p><p><strong>Example</strong></p><p>Copy the <code>:humidity</code> layer from <code>stack</code> to <code>array</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(array, stack, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L3-L15" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst)])</span></span></code></pre></div><p>Copy all or a subset of layers from one stack to another.</p><p><strong>Example</strong></p><p>Copy just the <code>:sea_surface_temp</code> and <code>:humidity</code> layers from <code>src</code> to <code>dst</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L18-L30" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="Base.eachslice" href="#Base.eachslice"><span class="jlbinding">Base.eachslice</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims,drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>A</code>, returning arrays that select all the data from the other dimensions in <code>A</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code> if <code>drop=true</code>. Otherwise it will have the same dimensionality as the underlying array with inner dimensions having size 1.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/methods.jl#L112-L120" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stack</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims, drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>stack</code>, returning stacks that select all the data from the other dimensions in <code>stack</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code>.</p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">randn</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), Z)),</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">randn</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), Ti))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ));</span></span> @@ -473,17 +473,17 @@ <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">├──────────────────────────────────────────────── layers ┤</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :x</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> eltype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Float64 dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y size</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> eltype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Float64 dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, Ti size</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">×</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────┘</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L49-L85" target="_blank" rel="noreferrer">source</a></p></details><p>Most base methods work as expected, using <code>Dimension</code> wherever a <code>dims</code> keyword is used. They are not all specifically documented here.</p><h2 id="name" tabindex="-1">Name <a class="header-anchor" href="#name" aria-label="Permalink to "Name""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractName" href="#DimensionalData.AbstractName"><span class="jlbinding">DimensionalData.AbstractName</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractName</span></span></code></pre></div><p>Abstract supertype for name wrappers.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Name" href="#DimensionalData.Name"><span class="jlbinding">DimensionalData.Name</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────┘</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L49-L85" target="_blank" rel="noreferrer">source</a></p></details><p>Most base methods work as expected, using <code>Dimension</code> wherever a <code>dims</code> keyword is used. They are not all specifically documented here.</p><h2 id="name" tabindex="-1">Name <a class="header-anchor" href="#name" aria-label="Permalink to "Name""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.AbstractName" href="#DimensionalData.AbstractName"><span class="jlbinding">DimensionalData.AbstractName</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractName</span></span></code></pre></div><p>Abstract supertype for name wrappers.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.Name" href="#DimensionalData.Name"><span class="jlbinding">DimensionalData.Name</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{Symbol,Name) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Name</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NoName</span></span></code></pre></div><p>Name wrapper. This lets arrays keep symbol names when the array wrapper needs to be <code>isbits</code>, like for use on GPUs. It makes the name a property of the type. It's not necessary to use in normal use, a symbol is probably easier.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L23-L32" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.NoName" href="#DimensionalData.NoName"><span class="jlbinding">DimensionalData.NoName</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoName </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NoName</span></span></code></pre></div><p>Name wrapper. This lets arrays keep symbol names when the array wrapper needs to be <code>isbits</code>, like for use on GPUs. It makes the name a property of the type. It's not necessary to use in normal use, a symbol is probably easier.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L23-L32" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.NoName" href="#DimensionalData.NoName"><span class="jlbinding">DimensionalData.NoName</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoName </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>NoName specifies an array is not named, and is the default <code>name</code> value for all <code>AbstractDimArray</code>s.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L10-L17" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Internal-interface" tabindex="-1">Internal interface <a class="header-anchor" href="#Internal-interface" aria-label="Permalink to "Internal interface {#Internal-interface}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimArrayInterface" href="#DimensionalData.DimArrayInterface"><span class="jlbinding">DimensionalData.DimArrayInterface</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArrayInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_parent_kw, :rebuild_dims_kw, :rebuild)</code> and optional components <code>(:refdims, :name, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches dimensions of array</p></li><li><p><code>size</code>: length of dims matches dimensions of array</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>name</code>:</p><ul><li><p>rebuild updates name in arg rebuild</p></li><li><p>rebuild updates name in kw rebuild</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimStackInterface" href="#DimensionalData.DimStackInterface"><span class="jlbinding">DimensionalData.DimStackInterface</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStackInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_layerdims, :rebuild_dims_kw, :rebuild_parent_kw, :rebuild_layerdims_kw, :rebuild)</code> and optional components <code>(:refdims, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches ndims of stack</p></li><li><p><code>size</code>: length of dims matches size of stack</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_layerdims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_layerdims_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.rebuild_from_arrays" href="#DimensionalData.rebuild_from_arrays"><span class="jlbinding">DimensionalData.rebuild_from_arrays</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild_from_arrays</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, das</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NamedTuple{<:Any,<:Tuple{Vararg{AbstractDimArray}}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an <code>AbstractDimStack</code> from a <code>Tuple</code> or <code>NamedTuple</code> of <code>AbstractDimArray</code> and an existing stack.</p><p><strong>Keywords</strong></p><p>Keywords are simply the fields of the stack object:</p><ul><li><p><code>data</code></p></li><li><p><code>dims</code></p></li><li><p><code>refdims</code></p></li><li><p><code>metadata</code></p></li><li><p><code>layerdims</code></p></li><li><p><code>layermetadata</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L79-L95" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.show_main" href="#DimensionalData.show_main"><span class="jlbinding">DimensionalData.show_main</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding the main part of <code>show</code></p><p>At the least, you likely want to call:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_top</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, mime, A)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/show.jl#L27-L40" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.show_after" href="#DimensionalData.show_after"><span class="jlbinding">DimensionalData.show_after</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding additional <code>show</code> text for AbstractDimArray/AbstractDimStack subtypes.</p><p><em>Always include <code>kw</code> to avoid future breaking changes</em></p><p>Additional keywords may be added at any time.</p><p><code>blockwidth</code> is passed in context</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">blockwidth </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> get</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:blockwidth</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Note - a ANSI box is left unclosed. This method needs to close it, or add more. <code>blockwidth</code> is the maximum length of the inner text.</p><p>Most likely you always want to at least close the show blocks with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_block_close</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, blockwidth)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/show.jl#L47-L75" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.refdims_title" href="#DimensionalData.refdims_title"><span class="jlbinding">DimensionalData.refdims_title</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>NoName specifies an array is not named, and is the default <code>name</code> value for all <code>AbstractDimArray</code>s.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L10-L17" target="_blank" rel="noreferrer">source</a></p></details><h2 id="Internal-interface" tabindex="-1">Internal interface <a class="header-anchor" href="#Internal-interface" aria-label="Permalink to "Internal interface {#Internal-interface}""></a></h2><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimArrayInterface" href="#DimensionalData.DimArrayInterface"><span class="jlbinding">DimensionalData.DimArrayInterface</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArrayInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_parent_kw, :rebuild_dims_kw, :rebuild)</code> and optional components <code>(:refdims, :name, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches dimensions of array</p></li><li><p><code>size</code>: length of dims matches dimensions of array</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>name</code>:</p><ul><li><p>rebuild updates name in arg rebuild</p></li><li><p>rebuild updates name in kw rebuild</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.DimStackInterface" href="#DimensionalData.DimStackInterface"><span class="jlbinding">DimensionalData.DimStackInterface</span></a> <span class="VPBadge info jlObjectType jlType"><!--[-->Type<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStackInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_layerdims, :rebuild_dims_kw, :rebuild_parent_kw, :rebuild_layerdims_kw, :rebuild)</code> and optional components <code>(:refdims, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches ndims of stack</p></li><li><p><code>size</code>: length of dims matches size of stack</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_layerdims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_layerdims_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.rebuild_from_arrays" href="#DimensionalData.rebuild_from_arrays"><span class="jlbinding">DimensionalData.rebuild_from_arrays</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild_from_arrays</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, das</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NamedTuple{<:Any,<:Tuple{Vararg{AbstractDimArray}}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an <code>AbstractDimStack</code> from a <code>Tuple</code> or <code>NamedTuple</code> of <code>AbstractDimArray</code> and an existing stack.</p><p><strong>Keywords</strong></p><p>Keywords are simply the fields of the stack object:</p><ul><li><p><code>data</code></p></li><li><p><code>dims</code></p></li><li><p><code>refdims</code></p></li><li><p><code>metadata</code></p></li><li><p><code>layerdims</code></p></li><li><p><code>layermetadata</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L79-L95" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.show_main" href="#DimensionalData.show_main"><span class="jlbinding">DimensionalData.show_main</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding the main part of <code>show</code></p><p>At the least, you likely want to call:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_top</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, mime, A)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/show.jl#L27-L40" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.show_after" href="#DimensionalData.show_after"><span class="jlbinding">DimensionalData.show_after</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding additional <code>show</code> text for AbstractDimArray/AbstractDimStack subtypes.</p><p><em>Always include <code>kw</code> to avoid future breaking changes</em></p><p>Additional keywords may be added at any time.</p><p><code>blockwidth</code> is passed in context</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">blockwidth </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> get</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:blockwidth</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Note - a ANSI box is left unclosed. This method needs to close it, or add more. <code>blockwidth</code> is the maximum length of the inner text.</p><p>Most likely you always want to at least close the show blocks with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_block_close</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, blockwidth)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/show.jl#L47-L75" target="_blank" rel="noreferrer">source</a></p></details><details class="jldocstring custom-block" open><summary><a id="DimensionalData.refdims_title" href="#DimensionalData.refdims_title"><span class="jlbinding">DimensionalData.refdims_title</span></a> <span class="VPBadge info jlObjectType jlFunction"><!--[-->Function<!--]--></span></summary><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a title string based on reference dimension values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/plotrecipes.jl#L159-L165" target="_blank" rel="noreferrer">source</a></p></details></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/api/reference.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/extending_dd" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Extending DimensionalData</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/api/dimensions" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Dimensions Reference</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a title string based on reference dimension values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/plotrecipes.jl#L159-L165" target="_blank" rel="noreferrer">source</a></p></details></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/api/reference.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/extending_dd" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Extending DimensionalData</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/api/dimensions" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Dimensions Reference</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/assets/api_dimensions.md.CnOMCJ83.js b/dev/assets/api_dimensions.md.SBrxkSyF.js similarity index 97% rename from dev/assets/api_dimensions.md.CnOMCJ83.js rename to dev/assets/api_dimensions.md.SBrxkSyF.js index f373b23d8..c54b7eba0 100644 --- a/dev/assets/api_dimensions.md.CnOMCJ83.js +++ b/dev/assets/api_dimensions.md.SBrxkSyF.js @@ -1,5 +1,5 @@ -import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framework.C6EFuEL4.js";const ss=JSON.parse('{"title":"Dimensions","description":"","frontmatter":{},"headers":[],"relativePath":"api/dimensions.md","filePath":"api/dimensions.md","lastUpdated":null}'),d={name:"api/dimensions.md"},o={class:"jldocstring custom-block",open:""},r={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""};function $(K,s,W,J,H,Q){const n=h("Badge");return k(),p("div",null,[s[108]||(s[108]=i("h1",{id:"dimensions",tabindex:"-1"},[a("Dimensions "),i("a",{class:"header-anchor",href:"#dimensions","aria-label":'Permalink to "Dimensions"'},"")],-1)),s[109]||(s[109]=i("p",null,[a("Dimensions are kept in the sub-module "),i("code",null,"Dimensions"),a(".")],-1)),i("details",o,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.Dimensions",href:"#DimensionalData.Dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions")],-1)),s[1]||(s[1]=a()),e(n,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[2]||(s[2]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p>Sub-module for <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s wrappers, and operations on them used in DimensionalData.jl.</p><p>To load <code>Dimensions</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/Dimensions.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[110]||(s[110]=i("p",null,"Dimensions have a type-hierarchy that organises plotting and dimension matching.",-1)),i("details",r,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.Dimensions.Dimension",href:"#DimensionalData.Dimensions.Dimension"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Dimension")],-1)),s[4]||(s[4]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension</span></span></code></pre></div><p>Abstract supertype of all dimension types.</p><p>Example concrete implementations are <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.X"><code>X</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Y"><code>Y</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Z"><code>Z</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Ti"><code>Ti</code></a> (Time), and the custom <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimension.</p><p><code>Dimension</code>s label the axes of an <code>AbstractDimArray</code>, or other dimensional objects, and are used to index into an array.</p><p>They may also wrap lookup values for each array axis. This may be any <code>AbstractVector</code> matching the array axis length, but will usually be converted to a <code>Lookup</code> when use in a constructed object.</p><p>A <code>Lookup</code> gives more details about the dimension, such as that it is <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> along some transect. DimensionalData will attempt to guess the lookup from the passed-in index value.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> +import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framework.B8l2DGq3.js";const ss=JSON.parse('{"title":"Dimensions","description":"","frontmatter":{},"headers":[],"relativePath":"api/dimensions.md","filePath":"api/dimensions.md","lastUpdated":null}'),d={name:"api/dimensions.md"},o={class:"jldocstring custom-block",open:""},r={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""};function $(K,s,W,J,H,Q){const n=h("Badge");return k(),p("div",null,[s[108]||(s[108]=i("h1",{id:"dimensions",tabindex:"-1"},[a("Dimensions "),i("a",{class:"header-anchor",href:"#dimensions","aria-label":'Permalink to "Dimensions"'},"")],-1)),s[109]||(s[109]=i("p",null,[a("Dimensions are kept in the sub-module "),i("code",null,"Dimensions"),a(".")],-1)),i("details",o,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.Dimensions",href:"#DimensionalData.Dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions")],-1)),s[1]||(s[1]=a()),e(n,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[2]||(s[2]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p>Sub-module for <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s wrappers, and operations on them used in DimensionalData.jl.</p><p>To load <code>Dimensions</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/Dimensions.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[110]||(s[110]=i("p",null,"Dimensions have a type-hierarchy that organises plotting and dimension matching.",-1)),i("details",r,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.Dimensions.Dimension",href:"#DimensionalData.Dimensions.Dimension"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Dimension")],-1)),s[4]||(s[4]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension</span></span></code></pre></div><p>Abstract supertype of all dimension types.</p><p>Example concrete implementations are <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.X"><code>X</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Y"><code>Y</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Z"><code>Z</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Ti"><code>Ti</code></a> (Time), and the custom <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimension.</p><p><code>Dimension</code>s label the axes of an <code>AbstractDimArray</code>, or other dimensional objects, and are used to index into an array.</p><p>They may also wrap lookup values for each array axis. This may be any <code>AbstractVector</code> matching the array axis length, but will usually be converted to a <code>Lookup</code> when use in a constructed object.</p><p>A <code>Lookup</code> gives more details about the dimension, such as that it is <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> along some transect. DimensionalData will attempt to guess the lookup from the passed-in index value.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> @@ -51,21 +51,21 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Ti Sampled{Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DateTime} Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"2021-01-01T00:00:00"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"2021-12-01T00:00:00"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">02</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> …</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L1-L92" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.Dimensions.DependentDim",href:"#DimensionalData.Dimensions.DependentDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.DependentDim")],-1)),s[7]||(s[7]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for dependent dimensions. These will plot on the Y axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L102-L106" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",E,[i("summary",null,[s[9]||(s[9]=i("a",{id:"DimensionalData.Dimensions.IndependentDim",href:"#DimensionalData.Dimensions.IndependentDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.IndependentDim")],-1)),s[10]||(s[10]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[11]||(s[11]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IndependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for independent dimensions. These will plot on the X axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L95-L99" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",y,[i("summary",null,[s[12]||(s[12]=i("a",{id:"DimensionalData.Dimensions.XDim",href:"#DimensionalData.Dimensions.XDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.XDim")],-1)),s[13]||(s[13]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[14]||(s[14]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">XDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all X dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L109-L113" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",c,[i("summary",null,[s[15]||(s[15]=i("a",{id:"DimensionalData.Dimensions.YDim",href:"#DimensionalData.Dimensions.YDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.YDim")],-1)),s[16]||(s[16]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[17]||(s[17]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">YDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Y dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L116-L120" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",m,[i("summary",null,[s[18]||(s[18]=i("a",{id:"DimensionalData.Dimensions.ZDim",href:"#DimensionalData.Dimensions.ZDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.ZDim")],-1)),s[19]||(s[19]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[20]||(s[20]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ZDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Z dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L123-L127" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",F,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.TimeDim",href:"#DimensionalData.Dimensions.TimeDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.TimeDim")],-1)),s[22]||(s[22]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[23]||(s[23]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">TimeDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all time dimensions.</p><p>In a <code>TimeDime</code> with <code>Interval</code> sampling the locus will automatically be set to <code>Start()</code>. Dates and times generally refer to the start of a month, hour, second etc., not the central point as is more common with spatial data. `</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L130-L138" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",D,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.X",href:"#DimensionalData.Dimensions.X"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.X")],-1)),s[25]||(s[25]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[26]||(s[26]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> XDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L1-L92" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.Dimensions.DependentDim",href:"#DimensionalData.Dimensions.DependentDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.DependentDim")],-1)),s[7]||(s[7]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for dependent dimensions. These will plot on the Y axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L102-L106" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",E,[i("summary",null,[s[9]||(s[9]=i("a",{id:"DimensionalData.Dimensions.IndependentDim",href:"#DimensionalData.Dimensions.IndependentDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.IndependentDim")],-1)),s[10]||(s[10]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[11]||(s[11]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IndependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for independent dimensions. These will plot on the X axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L95-L99" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",y,[i("summary",null,[s[12]||(s[12]=i("a",{id:"DimensionalData.Dimensions.XDim",href:"#DimensionalData.Dimensions.XDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.XDim")],-1)),s[13]||(s[13]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[14]||(s[14]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">XDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all X dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L109-L113" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",c,[i("summary",null,[s[15]||(s[15]=i("a",{id:"DimensionalData.Dimensions.YDim",href:"#DimensionalData.Dimensions.YDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.YDim")],-1)),s[16]||(s[16]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[17]||(s[17]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">YDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Y dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L116-L120" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",m,[i("summary",null,[s[18]||(s[18]=i("a",{id:"DimensionalData.Dimensions.ZDim",href:"#DimensionalData.Dimensions.ZDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.ZDim")],-1)),s[19]||(s[19]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[20]||(s[20]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ZDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Z dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L123-L127" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",F,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.TimeDim",href:"#DimensionalData.Dimensions.TimeDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.TimeDim")],-1)),s[22]||(s[22]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[23]||(s[23]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">TimeDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all time dimensions.</p><p>In a <code>TimeDime</code> with <code>Interval</code> sampling the locus will automatically be set to <code>Start()</code>. Dates and times generally refer to the start of a month, hour, second etc., not the central point as is more common with spatial data. `</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L130-L138" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",D,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.X",href:"#DimensionalData.Dimensions.X"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.X")],-1)),s[25]||(s[25]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[26]||(s[26]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> XDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>X <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>X <: XDim <: IndependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">xdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L465-L485" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",u,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Y",href:"#DimensionalData.Dimensions.Y"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Y")],-1)),s[28]||(s[28]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[29]||(s[29]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> YDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>X <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>X <: XDim <: IndependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">xdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L465-L485" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",u,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Y",href:"#DimensionalData.Dimensions.Y"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Y")],-1)),s[28]||(s[28]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[29]||(s[29]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> YDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Y <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Y <: YDim <: DependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ydim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L488-L508" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",C,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.Z",href:"#DimensionalData.Dimensions.Z"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Z")],-1)),s[31]||(s[31]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ZDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Y <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Y <: YDim <: DependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ydim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L488-L508" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",C,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.Z",href:"#DimensionalData.Dimensions.Z"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Z")],-1)),s[31]||(s[31]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ZDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Z <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Z <: ZDim <: Dimension</code></p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">zdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L511-L530" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.Ti",href:"#DimensionalData.Dimensions.Ti"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Ti")],-1)),s[34]||(s[34]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=t('<p>m Ti <: TimeDim</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>Ti(val=:)</span></span></code></pre></div><p>Time <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Ti <: TimeDim <: IndependentDim</code></p><p><code>Time</code> is already used by Dates, and <code>T</code> is a common type parameter, We use <code>Ti</code> to avoid clashes.</p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">timedim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L533-L556" target="_blank" rel="noreferrer">source</a></p>',9))]),i("details",f,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.Dim",href:"#DimensionalData.Dimensions.Dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Dim")],-1)),s[37]||(s[37]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[38]||(s[38]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{S}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>A generic dimension. For use when custom dims are required when loading data from a file. Can be used as keyword arguments for indexing.</p><p>Dimension types take precedence over same named <code>Dim</code> types when indexing with symbols, or e.g. creating Tables.jl keys.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:custom}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">custom [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L350-L363" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",j,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.AnonDim",href:"#DimensionalData.Dimensions.AnonDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.AnonDim")],-1)),s[40]||(s[40]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[41]||(s[41]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AnonDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Z <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Z <: ZDim <: Dimension</code></p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">zdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L511-L530" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.Ti",href:"#DimensionalData.Dimensions.Ti"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Ti")],-1)),s[34]||(s[34]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=t('<p>m Ti <: TimeDim</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>Ti(val=:)</span></span></code></pre></div><p>Time <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Ti <: TimeDim <: IndependentDim</code></p><p><code>Time</code> is already used by Dates, and <code>T</code> is a common type parameter, We use <code>Ti</code> to avoid clashes.</p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">timedim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L533-L556" target="_blank" rel="noreferrer">source</a></p>',9))]),i("details",f,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.Dim",href:"#DimensionalData.Dimensions.Dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Dim")],-1)),s[37]||(s[37]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[38]||(s[38]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{S}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>A generic dimension. For use when custom dims are required when loading data from a file. Can be used as keyword arguments for indexing.</p><p>Dimension types take precedence over same named <code>Dim</code> types when indexing with symbols, or e.g. creating Tables.jl keys.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:custom}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">custom [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L350-L363" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",j,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.AnonDim",href:"#DimensionalData.Dimensions.AnonDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.AnonDim")],-1)),s[40]||(s[40]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[41]||(s[41]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AnonDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AnonDim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Anonymous dimension. Used when extra dimensions are created, such as during transpose of a vector.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L388-L395" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",B,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.Dimensions.@dim",href:"#DimensionalData.Dimensions.@dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.@dim")],-1)),s[43]||(s[43]=a()),e(n,{type:"info",class:"jlObjectType jlMacro",text:"Macro"})]),s[44]||(s[44]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> typ [supertype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension] [label</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">String</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">string</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(typ)]</span></span></code></pre></div><p>Macro to easily define new dimensions.</p><p>The supertype will be inserted into the type of the dim. The default is simply <code>YourDim <: Dimension</code>.</p><p>Making a Dimension inherit from <code>XDim</code>, <code>YDim</code>, <code>ZDim</code> or <code>TimeDim</code> will affect automatic plot layout and other methods that dispatch on these types. <code><: YDim</code> are plotted on the Y axis, <code><: XDim</code> on the X axis, etc.</p><p><code>label</code> is used in plots and similar, if the dimension is short for a longer word.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AnonDim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Anonymous dimension. Used when extra dimensions are created, such as during transpose of a vector.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L388-L395" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",B,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.Dimensions.@dim",href:"#DimensionalData.Dimensions.@dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.@dim")],-1)),s[43]||(s[43]=a()),e(n,{type:"info",class:"jlObjectType jlMacro",text:"Macro"})]),s[44]||(s[44]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> typ [supertype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension] [label</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">String</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">string</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(typ)]</span></span></code></pre></div><p>Macro to easily define new dimensions.</p><p>The supertype will be inserted into the type of the dim. The default is simply <code>YourDim <: Dimension</code>.</p><p>Making a Dimension inherit from <code>XDim</code>, <code>YDim</code>, <code>ZDim</code> or <code>TimeDim</code> will affect automatic plot layout and other methods that dispatch on these types. <code><: YDim</code> are plotted on the Y axis, <code><: XDim</code> on the X axis, etc.</p><p><code>label</code> is used in plots and similar, if the dimension is short for a longer word.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, YDim, XDim</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lat YDim </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Latitude"</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lon XDim </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Longitude"</span></span> -<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L404-L428" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[111]||(s[111]=i("h3",{id:"Exported-methods",tabindex:"-1"},[a("Exported methods "),i("a",{class:"header-anchor",href:"#Exported-methods","aria-label":'Permalink to "Exported methods {#Exported-methods}"'},"")],-1)),s[112]||(s[112]=i("p",null,"These are widely useful methods for working with dimensions.",-1)),i("details",v,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.Dimensions.dims-api-dimensions",href:"#DimensionalData.Dimensions.dims-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims")],-1)),s[46]||(s[46]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[47]||(s[47]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L404-L428" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[111]||(s[111]=i("h3",{id:"Exported-methods",tabindex:"-1"},[a("Exported methods "),i("a",{class:"header-anchor",href:"#Exported-methods","aria-label":'Permalink to "Exported methods {#Exported-methods}"'},"")],-1)),s[112]||(s[112]=i("p",null,"These are widely useful methods for working with dimensions.",-1)),i("details",v,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.Dimensions.dims-api-dimensions",href:"#DimensionalData.Dimensions.dims-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims")],-1)),s[46]||(s[46]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[47]||(s[47]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Get the dimension(s) matching the type(s) of the query dimension.</p><p>Lookup can be an Int or an Dimension, or a tuple containing any combination of either.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or a single <code>Dimension</code> or <code>Dimension</code> <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z))</span></span> @@ -79,7 +79,7 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",A,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.Dimensions.otherdims-api-dimensions",href:"#DimensionalData.Dimensions.otherdims-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.otherdims")],-1)),s[49]||(s[49]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[50]||(s[50]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",A,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.Dimensions.otherdims-api-dimensions",href:"#DimensionalData.Dimensions.otherdims-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.otherdims")],-1)),s[49]||(s[49]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[50]||(s[50]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -87,7 +87,7 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Y, Z))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",T,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.Dimensions.dimnum-api-dimensions",href:"#DimensionalData.Dimensions.dimnum-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimnum")],-1)),s[52]||(s[52]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[53]||(s[53]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",T,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.Dimensions.dimnum-api-dimensions",href:"#DimensionalData.Dimensions.dimnum-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimnum")],-1)),s[52]||(s[52]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[53]||(s[53]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Int</span></span></code></pre></div><p>Get the number(s) of <code>Dimension</code>(s) as ordered in the dimensions of an object.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple, Array or single <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p>The return type will be a Tuple of <code>Int</code> or a single <code>Int</code>, depending on whether <code>query</code> is a <code>Tuple</code> or single <code>Dimension</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> @@ -96,7 +96,7 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Y)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.Dimensions.hasdim-api-dimensions",href:"#DimensionalData.Dimensions.hasdim-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.hasdim")],-1)),s[55]||(s[55]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[56]||(s[56]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.Dimensions.hasdim-api-dimensions",href:"#DimensionalData.Dimensions.hasdim-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.hasdim")],-1)),s[55]||(s[55]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[56]||(s[56]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if an object <code>x</code> has dimensions that match or inherit from the <code>query</code> dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>Check if an object or tuple contains an <code>Dimension</code>, or a tuple of dimensions.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -109,13 +109,13 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[113]||(s[113]=i("h3",{id:"Non-exported-methods",tabindex:"-1"},[a("Non-exported methods "),i("a",{class:"header-anchor",href:"#Non-exported-methods","aria-label":'Permalink to "Non-exported methods {#Non-exported-methods}"'},"")],-1)),i("details",w,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.Dimensions.lookup",href:"#DimensionalData.Dimensions.lookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.lookup")],-1)),s[58]||(s[58]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[59]||(s[59]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[113]||(s[113]=i("h3",{id:"Non-exported-methods",tabindex:"-1"},[a("Non-exported methods "),i("a",{class:"header-anchor",href:"#Non-exported-methods","aria-label":'Permalink to "Non-exported methods {#Non-exported-methods}"'},"")],-1)),i("details",w,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.Dimensions.lookup",href:"#DimensionalData.Dimensions.lookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.lookup")],-1)),s[58]||(s[58]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[59]||(s[59]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Lookup}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Lookup}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span></code></pre></div><p>Returns the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> of a dimension. This dictates properties of the dimension such as array axis and lookup order, and sampling properties.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p>This is separate from <code>val</code> in that it will only work when dimensions actually contain an <code>AbstractArray</code> lookup, and can be used on a <code>DimArray</code> or <code>DimStack</code> to retrieve all lookups, as there is no ambiguity of meaning as there is with <code>val</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L91-L107" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",L,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.Dimensions.label",href:"#DimensionalData.Dimensions.label"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.label")],-1)),s[61]||(s[61]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[62]||(s[62]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span></code></pre></div><p>Returns the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> of a dimension. This dictates properties of the dimension such as array axis and lookup order, and sampling properties.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p>This is separate from <code>val</code> in that it will only work when dimensions actually contain an <code>AbstractArray</code> lookup, and can be used on a <code>DimArray</code> or <code>DimStack</code> to retrieve all lookups, as there is no ambiguity of meaning as there is with <code>val</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L91-L107" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",L,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.Dimensions.label",href:"#DimensionalData.Dimensions.label"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.label")],-1)),s[61]||(s[61]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[62]||(s[62]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span></code></pre></div><p>Get a plot label for data or a dimension. This will include the name and units if they exist, and anything else that should be shown on a plot.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L159-L170" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",q,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DimensionalData.Dimensions.format",href:"#DimensionalData.Dimensions.format"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.format")],-1)),s[64]||(s[64]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Format the passed-in dimension(s) <code>dims</code> to match the object <code>x</code>.</p><p>Errors are thrown if dims don't match the array dims or size, and any fields holding <code>Auto-</code> objects are filled with guessed objects.</p><p>If a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> hasn't been specified, a lookup is chosen based on the type and element type of the values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/format.jl#L5-L15" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",X,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.Dimensions.dims2indices",href:"#DimensionalData.Dimensions.dims2indices"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims2indices")],-1)),s[67]||(s[67]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[68]||(s[68]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims2indices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Union{Colon,AbstractArray,Int}}</span></span></code></pre></div><p>Convert a <code>Dimension</code> or <code>Selector</code> <code>I</code> to indices of <code>Int</code>, <code>AbstractArray</code> or <code>Colon</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/indexing.jl#L26-L30" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",Y,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Dimensions.Lookups.selectindices",href:"#DimensionalData.Dimensions.Lookups.selectindices"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.selectindices")],-1)),s[70]||(s[70]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[71]||(s[71]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">selectindices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lookups, selectors)</span></span></code></pre></div><p>Converts <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a> to regular indices.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1091-L1095" target="_blank" rel="noreferrer">source</a></p>',3))]),s[114]||(s[114]=i("h3",{id:"Primitive-methods",tabindex:"-1"},[a("Primitive methods "),i("a",{class:"header-anchor",href:"#Primitive-methods","aria-label":'Permalink to "Primitive methods {#Primitive-methods}"'},"")],-1)),s[115]||(s[115]=i("p",null,"These low-level methods are really for internal use, but can be useful for writing dimensional algorithms.",-1)),s[116]||(s[116]=i("p",null,"They are not guaranteed to keep their interface, but usually will.",-1)),i("details",O,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.Dimensions.commondims",href:"#DimensionalData.Dimensions.commondims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.commondims")],-1)),s[73]||(s[73]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[74]||(s[74]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>This is basically <code>dims(x, query)</code> where the order of the original is kept, unlike <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> where the query tuple determines the order</p><p>Also unlike <code>dims</code>,<code>commondims</code> always returns a <code>Tuple</code>, no matter the input. No errors are thrown if dims are absent from either <code>x</code> or <code>query</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span></code></pre></div><p>Get a plot label for data or a dimension. This will include the name and units if they exist, and anything else that should be shown on a plot.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L159-L170" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",q,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DimensionalData.Dimensions.format",href:"#DimensionalData.Dimensions.format"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.format")],-1)),s[64]||(s[64]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Format the passed-in dimension(s) <code>dims</code> to match the object <code>x</code>.</p><p>Errors are thrown if dims don't match the array dims or size, and any fields holding <code>Auto-</code> objects are filled with guessed objects.</p><p>If a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> hasn't been specified, a lookup is chosen based on the type and element type of the values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/format.jl#L5-L15" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",X,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.Dimensions.dims2indices",href:"#DimensionalData.Dimensions.dims2indices"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims2indices")],-1)),s[67]||(s[67]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[68]||(s[68]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims2indices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Union{Colon,AbstractArray,Int}}</span></span></code></pre></div><p>Convert a <code>Dimension</code> or <code>Selector</code> <code>I</code> to indices of <code>Int</code>, <code>AbstractArray</code> or <code>Colon</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/indexing.jl#L26-L30" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",Y,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Dimensions.Lookups.selectindices",href:"#DimensionalData.Dimensions.Lookups.selectindices"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.selectindices")],-1)),s[70]||(s[70]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[71]||(s[71]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">selectindices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lookups, selectors)</span></span></code></pre></div><p>Converts <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a> to regular indices.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1091-L1095" target="_blank" rel="noreferrer">source</a></p>',3))]),s[114]||(s[114]=i("h3",{id:"Primitive-methods",tabindex:"-1"},[a("Primitive methods "),i("a",{class:"header-anchor",href:"#Primitive-methods","aria-label":'Permalink to "Primitive methods {#Primitive-methods}"'},"")],-1)),s[115]||(s[115]=i("p",null,"These low-level methods are really for internal use, but can be useful for writing dimensional algorithms.",-1)),s[116]||(s[116]=i("p",null,"They are not guaranteed to keep their interface, but usually will.",-1)),i("details",O,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.Dimensions.commondims",href:"#DimensionalData.Dimensions.commondims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.commondims")],-1)),s[73]||(s[73]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[74]||(s[74]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>This is basically <code>dims(x, query)</code> where the order of the original is kept, unlike <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> where the query tuple determines the order</p><p>Also unlike <code>dims</code>,<code>commondims</code> always returns a <code>Tuple</code>, no matter the input. No errors are thrown if dims are absent from either <code>x</code> or <code>query</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -126,9 +126,9 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L155-L181" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",z,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.Dimensions.name2dim",href:"#DimensionalData.Dimensions.name2dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.name2dim")],-1)),s[76]||(s[76]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[77]||(s[77]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Symbol</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L155-L181" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",z,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.Dimensions.name2dim",href:"#DimensionalData.Dimensions.name2dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.name2dim")],-1)),s[76]||(s[76]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[77]||(s[77]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Symbol</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span></code></pre></div><p>Convert a symbol to a dimension object. <code>:X</code>, <code>:Y</code>, <code>:Ti</code> etc will be converted to <code>X()</code>, <code>Y()</code>, <code>Ti()</code>, as with any other dims generated with the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.@dim"><code>@dim</code></a> macro.</p><p>All other <code>Symbol</code>s <code>S</code> will generate <code>Dim{S}()</code> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L40-L49" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",S,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.Dimensions.reducedims",href:"#DimensionalData.Dimensions.reducedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.reducedims")],-1)),s[79]||(s[79]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[80]||(s[80]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reducedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dimstoreduce) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Replace the specified dimensions with an index of length 1. This is usually to match a new array size where an axis has been reduced with a method like <code>mean</code> or <code>reduce</code> to a length of 1, but the number of dimensions has not changed.</p><p><code>Lookup</code> traits are also updated to correspond to the change in cell step, sampling type and order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L475-L485" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",Z,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.Dimensions.swapdims",href:"#DimensionalData.Dimensions.swapdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.swapdims")],-1)),s[82]||(s[82]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[83]||(s[83]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">T</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> T</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span></code></pre></div><p>Convert a symbol to a dimension object. <code>:X</code>, <code>:Y</code>, <code>:Ti</code> etc will be converted to <code>X()</code>, <code>Y()</code>, <code>Ti()</code>, as with any other dims generated with the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.@dim"><code>@dim</code></a> macro.</p><p>All other <code>Symbol</code>s <code>S</code> will generate <code>Dim{S}()</code> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L40-L49" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",S,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.Dimensions.reducedims",href:"#DimensionalData.Dimensions.reducedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.reducedims")],-1)),s[79]||(s[79]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[80]||(s[80]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reducedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dimstoreduce) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Replace the specified dimensions with an index of length 1. This is usually to match a new array size where an axis has been reduced with a method like <code>mean</code> or <code>reduce</code> to a length of 1, but the number of dimensions has not changed.</p><p><code>Lookup</code> traits are also updated to correspond to the change in cell step, sampling type and order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L475-L485" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",Z,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.Dimensions.swapdims",href:"#DimensionalData.Dimensions.swapdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.swapdims")],-1)),s[82]||(s[82]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[83]||(s[83]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">T</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> T</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Swap dimensions for the passed in dimensions, in the order passed.</p><p>Passing in the <code>Dimension</code> types rewraps the dimension index, keeping the index values and metadata, while constructed <code>Dimension</code> objects replace the original dimension. <code>nothing</code> leaves the original dimension as-is.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>newdim</code>: Tuple of <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}, Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}, Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}))</span></span> @@ -141,17 +141,17 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└───────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">[:, :, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L343-L376" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",I,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.Dimensions.slicedims",href:"#DimensionalData.Dimensions.slicedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.slicedims")],-1)),s[85]||(s[85]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[86]||(s[86]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span></code></pre></div><p>Slice the dimensions to match the axis values of the new array.</p><p>All methods return a tuple containing two tuples: the new dimensions, and the reference dimensions. The ref dimensions are no longer used in the new struct but are useful to give context to plots.</p><p>Called at the array level the returned tuple will also include the previous reference dims attached to the array.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: a function <code>getindex</code>, <code>view</code> or <code>dotview</code>. This will be used for slicing <code>getindex</code> is the default if <code>f</code> is not included.</p></li><li><p><code>x</code>: An <code>AbstractDimArray</code>, <code>Tuple</code> of <code>Dimension</code>, or <code>Dimension</code></p></li><li><p><code>I</code>: A tuple of <code>Integer</code>, <code>Colon</code> or <code>AbstractArray</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L389-L408" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.Dimensions.comparedims",href:"#DimensionalData.Dimensions.comparedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.comparedims")],-1)),s[88]||(s[88]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[89]||(s[89]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L343-L376" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",I,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.Dimensions.slicedims",href:"#DimensionalData.Dimensions.slicedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.slicedims")],-1)),s[85]||(s[85]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[86]||(s[86]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span></code></pre></div><p>Slice the dimensions to match the axis values of the new array.</p><p>All methods return a tuple containing two tuples: the new dimensions, and the reference dimensions. The ref dimensions are no longer used in the new struct but are useful to give context to plots.</p><p>Called at the array level the returned tuple will also include the previous reference dims attached to the array.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: a function <code>getindex</code>, <code>view</code> or <code>dotview</code>. This will be used for slicing <code>getindex</code> is the default if <code>f</code> is not included.</p></li><li><p><code>x</code>: An <code>AbstractDimArray</code>, <code>Tuple</code> of <code>Dimension</code>, or <code>Dimension</code></p></li><li><p><code>I</code>: A tuple of <code>Integer</code>, <code>Colon</code> or <code>AbstractArray</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L389-L408" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.Dimensions.comparedims",href:"#DimensionalData.Dimensions.comparedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.comparedims")],-1)),s[88]||(s[88]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[89]||(s[89]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Type{Bool}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Check that dimensions or tuples of dimensions passed as each argument are the same, and return the first valid dimension. If <code>AbstractDimArray</code>s are passed as arguments their dimensions are compared.</p><p>Empty tuples and <code>nothing</code> dimension values are ignored, returning the <code>Dimension</code> value if it exists.</p><p>Passing <code>Bool</code> as the first argument means <code>true</code>/<code>false</code> will be returned, rather than throwing an error.</p><p><strong>Keywords</strong></p><p>These are all <code>Bool</code> flags:</p><ul><li><p><code>type</code>: compare dimension type, <code>true</code> by default.</p></li><li><p><code>valtype</code>: compare wrapped value type, <code>false</code> by default.</p></li><li><p><code>val</code>: compare wrapped values, <code>false</code> by default.</p></li><li><p><code>order</code>: compare order, <code>false</code> by default.</p></li><li><p><code>length</code>: compare lengths, <code>true</code> by default.</p></li><li><p><code>ignore_length_one</code>: ignore length <code>1</code> in comparisons, and return whichever dimension is not length 1, if any. This is useful in e.g. broadcasting comparisons. <code>false</code> by default.</p></li><li><p><code>msg</code>: DimensionalData.Warn or DimensionalData.Throw. Both may contain string, which will be added to error or warning mesages.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L502-L532" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",P,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.combinedims",href:"#DimensionalData.Dimensions.combinedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.combinedims")],-1)),s[91]||(s[91]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[92]||(s[92]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">combinedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs; check</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Combine the dimensions of each object in <code>xs</code>, in the order they are found.</p><p>Keywords are passed to <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.comparedims"><code>comparedims</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L697-L703" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",V,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.sortdims",href:"#DimensionalData.Dimensions.sortdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.sortdims")],-1)),s[94]||(s[94]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[95]||(s[95]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sortdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], tosort, order) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Sort dimensions <code>tosort</code> by <code>order</code>. Dimensions in <code>order</code> but missing from <code>tosort</code> are replaced with <code>nothing</code>.</p><p><code>tosort</code> and <code>order</code> can be <code>Tuple</code>s or <code>Vector</code>s or Dimension or dimension type. Abstract supertypes like <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.TimeDim"><code>TimeDim</code></a> can be used in <code>order</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L62-L73" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",M,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.Dimensions.Lookups.basetypeof",href:"#DimensionalData.Dimensions.Lookups.basetypeof"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.basetypeof")],-1)),s[97]||(s[97]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[98]||(s[98]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basetypeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Type</span></span></code></pre></div><p>Get the "base" type of an object - the minimum required to define the object without it's fields. By default this is the full <code>UnionAll</code> for the type. But custom <code>basetypeof</code> methods can be defined for types with free type parameters.</p><p>In DimensionalData this is primarily used for comparing <code>Dimension</code>s, where <code>Dim{:x}</code> is different from <code>Dim{:y}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/utils.jl#L62-L72" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",R,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.Dimensions.basedims",href:"#DimensionalData.Dimensions.basedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.basedims")],-1)),s[100]||(s[100]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[101]||(s[101]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Symbol,Type}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Returns <code>basetypeof(d)()</code> or a <code>Tuple</code> of called on a <code>Tuple</code>.</p><p>See <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Lookups.basetypeof"><code>basetypeof</code></a></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L731-L738" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",G,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.Dimensions.setdims",href:"#DimensionalData.Dimensions.setdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.setdims")],-1)),s[103]||(s[103]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[104]||(s[104]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(X, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Type{Bool}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Check that dimensions or tuples of dimensions passed as each argument are the same, and return the first valid dimension. If <code>AbstractDimArray</code>s are passed as arguments their dimensions are compared.</p><p>Empty tuples and <code>nothing</code> dimension values are ignored, returning the <code>Dimension</code> value if it exists.</p><p>Passing <code>Bool</code> as the first argument means <code>true</code>/<code>false</code> will be returned, rather than throwing an error.</p><p><strong>Keywords</strong></p><p>These are all <code>Bool</code> flags:</p><ul><li><p><code>type</code>: compare dimension type, <code>true</code> by default.</p></li><li><p><code>valtype</code>: compare wrapped value type, <code>false</code> by default.</p></li><li><p><code>val</code>: compare wrapped values, <code>false</code> by default.</p></li><li><p><code>order</code>: compare order, <code>false</code> by default.</p></li><li><p><code>length</code>: compare lengths, <code>true</code> by default.</p></li><li><p><code>ignore_length_one</code>: ignore length <code>1</code> in comparisons, and return whichever dimension is not length 1, if any. This is useful in e.g. broadcasting comparisons. <code>false</code> by default.</p></li><li><p><code>msg</code>: DimensionalData.Warn or DimensionalData.Throw. Both may contain string, which will be added to error or warning mesages.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L502-L532" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",P,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.combinedims",href:"#DimensionalData.Dimensions.combinedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.combinedims")],-1)),s[91]||(s[91]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[92]||(s[92]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">combinedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs; check</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Combine the dimensions of each object in <code>xs</code>, in the order they are found.</p><p>Keywords are passed to <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.comparedims"><code>comparedims</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L697-L703" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",V,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.sortdims",href:"#DimensionalData.Dimensions.sortdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.sortdims")],-1)),s[94]||(s[94]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[95]||(s[95]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sortdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], tosort, order) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Sort dimensions <code>tosort</code> by <code>order</code>. Dimensions in <code>order</code> but missing from <code>tosort</code> are replaced with <code>nothing</code>.</p><p><code>tosort</code> and <code>order</code> can be <code>Tuple</code>s or <code>Vector</code>s or Dimension or dimension type. Abstract supertypes like <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.TimeDim"><code>TimeDim</code></a> can be used in <code>order</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L62-L73" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",M,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.Dimensions.Lookups.basetypeof",href:"#DimensionalData.Dimensions.Lookups.basetypeof"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.basetypeof")],-1)),s[97]||(s[97]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[98]||(s[98]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basetypeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Type</span></span></code></pre></div><p>Get the "base" type of an object - the minimum required to define the object without it's fields. By default this is the full <code>UnionAll</code> for the type. But custom <code>basetypeof</code> methods can be defined for types with free type parameters.</p><p>In DimensionalData this is primarily used for comparing <code>Dimension</code>s, where <code>Dim{:x}</code> is different from <code>Dim{:y}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/utils.jl#L62-L72" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",R,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.Dimensions.basedims",href:"#DimensionalData.Dimensions.basedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.basedims")],-1)),s[100]||(s[100]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[101]||(s[101]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Symbol,Type}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Returns <code>basetypeof(d)()</code> or a <code>Tuple</code> of called on a <code>Tuple</code>.</p><p>See <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Lookups.basetypeof"><code>basetypeof</code></a></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L731-L738" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",G,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.Dimensions.setdims",href:"#DimensionalData.Dimensions.setdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.setdims")],-1)),s[103]||(s[103]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[104]||(s[104]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(X, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractArray</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Replaces the first dim matching <code><: basetypeof(newdim)</code> with newdim, and returns a new object or tuple with the dimension updated.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>newdim</code>: Tuple or single <code>Dimension</code>, <code>Type</code> or <code>Symbol</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">B </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())))</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(B, Y)</span></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Char} ForwardOrdered</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">wrapping</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L312-L333" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",U,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.Dimensions.dimsmatch",href:"#DimensionalData.Dimensions.dimsmatch"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimsmatch")],-1)),s[106]||(s[106]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[107]||(s[107]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dim, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Compare 2 dimensions or <code>Tuple</code> of <code>Dimension</code> are of the same base type, or are at least rotations/transformations of the same type.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L4-L12" target="_blank" rel="noreferrer">source</a></p>`,4))])])}const is=l(d,[["render",$]]);export{ss as __pageData,is as default}; +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">wrapping</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L312-L333" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",U,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.Dimensions.dimsmatch",href:"#DimensionalData.Dimensions.dimsmatch"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimsmatch")],-1)),s[106]||(s[106]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[107]||(s[107]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dim, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Compare 2 dimensions or <code>Tuple</code> of <code>Dimension</code> are of the same base type, or are at least rotations/transformations of the same type.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L4-L12" target="_blank" rel="noreferrer">source</a></p>`,4))])])}const is=l(d,[["render",$]]);export{ss as __pageData,is as default}; diff --git a/dev/assets/api_dimensions.md.CnOMCJ83.lean.js b/dev/assets/api_dimensions.md.SBrxkSyF.lean.js similarity index 97% rename from dev/assets/api_dimensions.md.CnOMCJ83.lean.js rename to dev/assets/api_dimensions.md.SBrxkSyF.lean.js index f373b23d8..c54b7eba0 100644 --- a/dev/assets/api_dimensions.md.CnOMCJ83.lean.js +++ b/dev/assets/api_dimensions.md.SBrxkSyF.lean.js @@ -1,5 +1,5 @@ -import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framework.C6EFuEL4.js";const ss=JSON.parse('{"title":"Dimensions","description":"","frontmatter":{},"headers":[],"relativePath":"api/dimensions.md","filePath":"api/dimensions.md","lastUpdated":null}'),d={name:"api/dimensions.md"},o={class:"jldocstring custom-block",open:""},r={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""};function $(K,s,W,J,H,Q){const n=h("Badge");return k(),p("div",null,[s[108]||(s[108]=i("h1",{id:"dimensions",tabindex:"-1"},[a("Dimensions "),i("a",{class:"header-anchor",href:"#dimensions","aria-label":'Permalink to "Dimensions"'},"")],-1)),s[109]||(s[109]=i("p",null,[a("Dimensions are kept in the sub-module "),i("code",null,"Dimensions"),a(".")],-1)),i("details",o,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.Dimensions",href:"#DimensionalData.Dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions")],-1)),s[1]||(s[1]=a()),e(n,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[2]||(s[2]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p>Sub-module for <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s wrappers, and operations on them used in DimensionalData.jl.</p><p>To load <code>Dimensions</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/Dimensions.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[110]||(s[110]=i("p",null,"Dimensions have a type-hierarchy that organises plotting and dimension matching.",-1)),i("details",r,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.Dimensions.Dimension",href:"#DimensionalData.Dimensions.Dimension"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Dimension")],-1)),s[4]||(s[4]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension</span></span></code></pre></div><p>Abstract supertype of all dimension types.</p><p>Example concrete implementations are <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.X"><code>X</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Y"><code>Y</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Z"><code>Z</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Ti"><code>Ti</code></a> (Time), and the custom <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimension.</p><p><code>Dimension</code>s label the axes of an <code>AbstractDimArray</code>, or other dimensional objects, and are used to index into an array.</p><p>They may also wrap lookup values for each array axis. This may be any <code>AbstractVector</code> matching the array axis length, but will usually be converted to a <code>Lookup</code> when use in a constructed object.</p><p>A <code>Lookup</code> gives more details about the dimension, such as that it is <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> along some transect. DimensionalData will attempt to guess the lookup from the passed-in index value.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> +import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framework.B8l2DGq3.js";const ss=JSON.parse('{"title":"Dimensions","description":"","frontmatter":{},"headers":[],"relativePath":"api/dimensions.md","filePath":"api/dimensions.md","lastUpdated":null}'),d={name:"api/dimensions.md"},o={class:"jldocstring custom-block",open:""},r={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""};function $(K,s,W,J,H,Q){const n=h("Badge");return k(),p("div",null,[s[108]||(s[108]=i("h1",{id:"dimensions",tabindex:"-1"},[a("Dimensions "),i("a",{class:"header-anchor",href:"#dimensions","aria-label":'Permalink to "Dimensions"'},"")],-1)),s[109]||(s[109]=i("p",null,[a("Dimensions are kept in the sub-module "),i("code",null,"Dimensions"),a(".")],-1)),i("details",o,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.Dimensions",href:"#DimensionalData.Dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions")],-1)),s[1]||(s[1]=a()),e(n,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[2]||(s[2]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p>Sub-module for <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s wrappers, and operations on them used in DimensionalData.jl.</p><p>To load <code>Dimensions</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/Dimensions.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[110]||(s[110]=i("p",null,"Dimensions have a type-hierarchy that organises plotting and dimension matching.",-1)),i("details",r,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.Dimensions.Dimension",href:"#DimensionalData.Dimensions.Dimension"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Dimension")],-1)),s[4]||(s[4]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension</span></span></code></pre></div><p>Abstract supertype of all dimension types.</p><p>Example concrete implementations are <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.X"><code>X</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Y"><code>Y</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Z"><code>Z</code></a>, <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Ti"><code>Ti</code></a> (Time), and the custom <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimension.</p><p><code>Dimension</code>s label the axes of an <code>AbstractDimArray</code>, or other dimensional objects, and are used to index into an array.</p><p>They may also wrap lookup values for each array axis. This may be any <code>AbstractVector</code> matching the array axis length, but will usually be converted to a <code>Lookup</code> when use in a constructed object.</p><p>A <code>Lookup</code> gives more details about the dimension, such as that it is <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> along some transect. DimensionalData will attempt to guess the lookup from the passed-in index value.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> @@ -51,21 +51,21 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Ti Sampled{Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DateTime} Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"2021-01-01T00:00:00"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"2021-12-01T00:00:00"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">02</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> …</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2021</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">01</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">T00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">00</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L1-L92" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.Dimensions.DependentDim",href:"#DimensionalData.Dimensions.DependentDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.DependentDim")],-1)),s[7]||(s[7]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for dependent dimensions. These will plot on the Y axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L102-L106" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",E,[i("summary",null,[s[9]||(s[9]=i("a",{id:"DimensionalData.Dimensions.IndependentDim",href:"#DimensionalData.Dimensions.IndependentDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.IndependentDim")],-1)),s[10]||(s[10]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[11]||(s[11]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IndependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for independent dimensions. These will plot on the X axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L95-L99" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",y,[i("summary",null,[s[12]||(s[12]=i("a",{id:"DimensionalData.Dimensions.XDim",href:"#DimensionalData.Dimensions.XDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.XDim")],-1)),s[13]||(s[13]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[14]||(s[14]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">XDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all X dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L109-L113" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",c,[i("summary",null,[s[15]||(s[15]=i("a",{id:"DimensionalData.Dimensions.YDim",href:"#DimensionalData.Dimensions.YDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.YDim")],-1)),s[16]||(s[16]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[17]||(s[17]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">YDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Y dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L116-L120" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",m,[i("summary",null,[s[18]||(s[18]=i("a",{id:"DimensionalData.Dimensions.ZDim",href:"#DimensionalData.Dimensions.ZDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.ZDim")],-1)),s[19]||(s[19]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[20]||(s[20]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ZDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Z dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L123-L127" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",F,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.TimeDim",href:"#DimensionalData.Dimensions.TimeDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.TimeDim")],-1)),s[22]||(s[22]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[23]||(s[23]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">TimeDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all time dimensions.</p><p>In a <code>TimeDime</code> with <code>Interval</code> sampling the locus will automatically be set to <code>Start()</code>. Dates and times generally refer to the start of a month, hour, second etc., not the central point as is more common with spatial data. `</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L130-L138" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",D,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.X",href:"#DimensionalData.Dimensions.X"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.X")],-1)),s[25]||(s[25]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[26]||(s[26]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> XDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L1-L92" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.Dimensions.DependentDim",href:"#DimensionalData.Dimensions.DependentDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.DependentDim")],-1)),s[7]||(s[7]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for dependent dimensions. These will plot on the Y axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L102-L106" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",E,[i("summary",null,[s[9]||(s[9]=i("a",{id:"DimensionalData.Dimensions.IndependentDim",href:"#DimensionalData.Dimensions.IndependentDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.IndependentDim")],-1)),s[10]||(s[10]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[11]||(s[11]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IndependentDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span></code></pre></div><p>Abstract supertype for independent dimensions. These will plot on the X axis.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L95-L99" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",y,[i("summary",null,[s[12]||(s[12]=i("a",{id:"DimensionalData.Dimensions.XDim",href:"#DimensionalData.Dimensions.XDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.XDim")],-1)),s[13]||(s[13]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[14]||(s[14]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">XDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all X dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L109-L113" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",c,[i("summary",null,[s[15]||(s[15]=i("a",{id:"DimensionalData.Dimensions.YDim",href:"#DimensionalData.Dimensions.YDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.YDim")],-1)),s[16]||(s[16]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[17]||(s[17]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">YDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Y dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L116-L120" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",m,[i("summary",null,[s[18]||(s[18]=i("a",{id:"DimensionalData.Dimensions.ZDim",href:"#DimensionalData.Dimensions.ZDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.ZDim")],-1)),s[19]||(s[19]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[20]||(s[20]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ZDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DependentDim</span></span></code></pre></div><p>Abstract supertype for all Z dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L123-L127" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",F,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.TimeDim",href:"#DimensionalData.Dimensions.TimeDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.TimeDim")],-1)),s[22]||(s[22]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[23]||(s[23]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">TimeDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IndependentDim</span></span></code></pre></div><p>Abstract supertype for all time dimensions.</p><p>In a <code>TimeDime</code> with <code>Interval</code> sampling the locus will automatically be set to <code>Start()</code>. Dates and times generally refer to the start of a month, hour, second etc., not the central point as is more common with spatial data. `</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L130-L138" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",D,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.X",href:"#DimensionalData.Dimensions.X"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.X")],-1)),s[25]||(s[25]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[26]||(s[26]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> XDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>X <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>X <: XDim <: IndependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">xdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L465-L485" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",u,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Y",href:"#DimensionalData.Dimensions.Y"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Y")],-1)),s[28]||(s[28]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[29]||(s[29]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> YDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>X <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>X <: XDim <: IndependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">xdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L465-L485" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",u,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Y",href:"#DimensionalData.Dimensions.Y"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Y")],-1)),s[28]||(s[28]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[29]||(s[29]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> YDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Y <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Y <: YDim <: DependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ydim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L488-L508" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",C,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.Z",href:"#DimensionalData.Dimensions.Z"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Z")],-1)),s[31]||(s[31]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ZDim</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Y <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Y <: YDim <: DependentDim</code></p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ydim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L488-L508" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",C,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.Z",href:"#DimensionalData.Dimensions.Z"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Z")],-1)),s[31]||(s[31]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ZDim</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Z <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Z <: ZDim <: Dimension</code></p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">zdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L511-L530" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.Ti",href:"#DimensionalData.Dimensions.Ti"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Ti")],-1)),s[34]||(s[34]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=t('<p>m Ti <: TimeDim</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>Ti(val=:)</span></span></code></pre></div><p>Time <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Ti <: TimeDim <: IndependentDim</code></p><p><code>Time</code> is already used by Dates, and <code>T</code> is a common type parameter, We use <code>Ti</code> to avoid clashes.</p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">timedim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L533-L556" target="_blank" rel="noreferrer">source</a></p>',9))]),i("details",f,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.Dim",href:"#DimensionalData.Dimensions.Dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Dim")],-1)),s[37]||(s[37]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[38]||(s[38]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{S}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>A generic dimension. For use when custom dims are required when loading data from a file. Can be used as keyword arguments for indexing.</p><p>Dimension types take precedence over same named <code>Dim</code> types when indexing with symbols, or e.g. creating Tables.jl keys.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:custom}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">custom [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L350-L363" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",j,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.AnonDim",href:"#DimensionalData.Dimensions.AnonDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.AnonDim")],-1)),s[40]||(s[40]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[41]||(s[41]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AnonDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>Z <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Z <: ZDim <: Dimension</code></p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">zdim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Z)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L511-L530" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.Ti",href:"#DimensionalData.Dimensions.Ti"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Ti")],-1)),s[34]||(s[34]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=t('<p>m Ti <: TimeDim</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>Ti(val=:)</span></span></code></pre></div><p>Time <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>. <code>Ti <: TimeDim <: IndependentDim</code></p><p><code>Time</code> is already used by Dates, and <code>T</code> is a common type parameter, We use <code>Ti</code> to avoid clashes.</p><p><strong>Example:</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">timedim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2021</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">val </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mean</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L533-L556" target="_blank" rel="noreferrer">source</a></p>',9))]),i("details",f,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.Dim",href:"#DimensionalData.Dimensions.Dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Dim")],-1)),s[37]||(s[37]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[38]||(s[38]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{S}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:)</span></span></code></pre></div><p>A generic dimension. For use when custom dims are required when loading data from a file. Can be used as keyword arguments for indexing.</p><p>Dimension types take precedence over same named <code>Dim</code> types when indexing with symbols, or e.g. creating Tables.jl keys.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:custom}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">custom [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'b'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'c'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L350-L363" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",j,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.AnonDim",href:"#DimensionalData.Dimensions.AnonDim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.AnonDim")],-1)),s[40]||(s[40]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[41]||(s[41]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AnonDim </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dimension</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AnonDim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Anonymous dimension. Used when extra dimensions are created, such as during transpose of a vector.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L388-L395" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",B,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.Dimensions.@dim",href:"#DimensionalData.Dimensions.@dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.@dim")],-1)),s[43]||(s[43]=a()),e(n,{type:"info",class:"jlObjectType jlMacro",text:"Macro"})]),s[44]||(s[44]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> typ [supertype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension] [label</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">String</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">string</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(typ)]</span></span></code></pre></div><p>Macro to easily define new dimensions.</p><p>The supertype will be inserted into the type of the dim. The default is simply <code>YourDim <: Dimension</code>.</p><p>Making a Dimension inherit from <code>XDim</code>, <code>YDim</code>, <code>ZDim</code> or <code>TimeDim</code> will affect automatic plot layout and other methods that dispatch on these types. <code><: YDim</code> are plotted on the Y axis, <code><: XDim</code> on the X axis, etc.</p><p><code>label</code> is used in plots and similar, if the dimension is short for a longer word.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AnonDim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Anonymous dimension. Used when extra dimensions are created, such as during transpose of a vector.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L388-L395" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",B,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.Dimensions.@dim",href:"#DimensionalData.Dimensions.@dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.@dim")],-1)),s[43]||(s[43]=a()),e(n,{type:"info",class:"jlObjectType jlMacro",text:"Macro"})]),s[44]||(s[44]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> typ [supertype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimension] [label</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">String</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">string</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(typ)]</span></span></code></pre></div><p>Macro to easily define new dimensions.</p><p>The supertype will be inserted into the type of the dim. The default is simply <code>YourDim <: Dimension</code>.</p><p>Making a Dimension inherit from <code>XDim</code>, <code>YDim</code>, <code>ZDim</code> or <code>TimeDim</code> will affect automatic plot layout and other methods that dispatch on these types. <code><: YDim</code> are plotted on the Y axis, <code><: XDim</code> on the X axis, etc.</p><p><code>label</code> is used in plots and similar, if the dimension is short for a longer word.</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, YDim, XDim</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lat YDim </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Latitude"</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lon XDim </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Longitude"</span></span> -<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/dimension.jl#L404-L428" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[111]||(s[111]=i("h3",{id:"Exported-methods",tabindex:"-1"},[a("Exported methods "),i("a",{class:"header-anchor",href:"#Exported-methods","aria-label":'Permalink to "Exported methods {#Exported-methods}"'},"")],-1)),s[112]||(s[112]=i("p",null,"These are widely useful methods for working with dimensions.",-1)),i("details",v,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.Dimensions.dims-api-dimensions",href:"#DimensionalData.Dimensions.dims-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims")],-1)),s[46]||(s[46]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[47]||(s[47]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/dimension.jl#L404-L428" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[111]||(s[111]=i("h3",{id:"Exported-methods",tabindex:"-1"},[a("Exported methods "),i("a",{class:"header-anchor",href:"#Exported-methods","aria-label":'Permalink to "Exported methods {#Exported-methods}"'},"")],-1)),s[112]||(s[112]=i("p",null,"These are widely useful methods for working with dimensions.",-1)),i("details",v,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.Dimensions.dims-api-dimensions",href:"#DimensionalData.Dimensions.dims-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims")],-1)),s[46]||(s[46]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[47]||(s[47]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Get the dimension(s) matching the type(s) of the query dimension.</p><p>Lookup can be an Int or an Dimension, or a tuple containing any combination of either.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or a single <code>Dimension</code> or <code>Dimension</code> <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z))</span></span> @@ -79,7 +79,7 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",A,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.Dimensions.otherdims-api-dimensions",href:"#DimensionalData.Dimensions.otherdims-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.otherdims")],-1)),s[49]||(s[49]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[50]||(s[50]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",A,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.Dimensions.otherdims-api-dimensions",href:"#DimensionalData.Dimensions.otherdims-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.otherdims")],-1)),s[49]||(s[49]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[50]||(s[50]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -87,7 +87,7 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Y, Z))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",T,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.Dimensions.dimnum-api-dimensions",href:"#DimensionalData.Dimensions.dimnum-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimnum")],-1)),s[52]||(s[52]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[53]||(s[53]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",T,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.Dimensions.dimnum-api-dimensions",href:"#DimensionalData.Dimensions.dimnum-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimnum")],-1)),s[52]||(s[52]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[53]||(s[53]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Int</span></span></code></pre></div><p>Get the number(s) of <code>Dimension</code>(s) as ordered in the dimensions of an object.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple, Array or single <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p>The return type will be a Tuple of <code>Int</code> or a single <code>Int</code>, depending on whether <code>query</code> is a <code>Tuple</code> or single <code>Dimension</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> @@ -96,7 +96,7 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Y)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.Dimensions.hasdim-api-dimensions",href:"#DimensionalData.Dimensions.hasdim-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.hasdim")],-1)),s[55]||(s[55]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[56]||(s[56]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.Dimensions.hasdim-api-dimensions",href:"#DimensionalData.Dimensions.hasdim-api-dimensions"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.hasdim")],-1)),s[55]||(s[55]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[56]||(s[56]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if an object <code>x</code> has dimensions that match or inherit from the <code>query</code> dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>Check if an object or tuple contains an <code>Dimension</code>, or a tuple of dimensions.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -109,13 +109,13 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[113]||(s[113]=i("h3",{id:"Non-exported-methods",tabindex:"-1"},[a("Non-exported methods "),i("a",{class:"header-anchor",href:"#Non-exported-methods","aria-label":'Permalink to "Non-exported methods {#Non-exported-methods}"'},"")],-1)),i("details",w,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.Dimensions.lookup",href:"#DimensionalData.Dimensions.lookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.lookup")],-1)),s[58]||(s[58]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[59]||(s[59]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[113]||(s[113]=i("h3",{id:"Non-exported-methods",tabindex:"-1"},[a("Non-exported methods "),i("a",{class:"header-anchor",href:"#Non-exported-methods","aria-label":'Permalink to "Non-exported methods {#Non-exported-methods}"'},"")],-1)),i("details",w,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.Dimensions.lookup",href:"#DimensionalData.Dimensions.lookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.lookup")],-1)),s[58]||(s[58]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[59]||(s[59]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Lookup}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Lookup}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span></code></pre></div><p>Returns the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> of a dimension. This dictates properties of the dimension such as array axis and lookup order, and sampling properties.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p>This is separate from <code>val</code> in that it will only work when dimensions actually contain an <code>AbstractArray</code> lookup, and can be used on a <code>DimArray</code> or <code>DimStack</code> to retrieve all lookups, as there is no ambiguity of meaning as there is with <code>val</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L91-L107" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",L,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.Dimensions.label",href:"#DimensionalData.Dimensions.label"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.label")],-1)),s[61]||(s[61]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[62]||(s[62]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Lookup</span></span></code></pre></div><p>Returns the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> of a dimension. This dictates properties of the dimension such as array axis and lookup order, and sampling properties.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p>This is separate from <code>val</code> in that it will only work when dimensions actually contain an <code>AbstractArray</code> lookup, and can be used on a <code>DimArray</code> or <code>DimStack</code> to retrieve all lookups, as there is no ambiguity of meaning as there is with <code>val</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L91-L107" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",L,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.Dimensions.label",href:"#DimensionalData.Dimensions.label"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.label")],-1)),s[61]||(s[61]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[62]||(s[62]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> String</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span></code></pre></div><p>Get a plot label for data or a dimension. This will include the name and units if they exist, and anything else that should be shown on a plot.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L159-L170" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",q,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DimensionalData.Dimensions.format",href:"#DimensionalData.Dimensions.format"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.format")],-1)),s[64]||(s[64]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Format the passed-in dimension(s) <code>dims</code> to match the object <code>x</code>.</p><p>Errors are thrown if dims don't match the array dims or size, and any fields holding <code>Auto-</code> objects are filled with guessed objects.</p><p>If a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> hasn't been specified, a lookup is chosen based on the type and element type of the values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/format.jl#L5-L15" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",X,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.Dimensions.dims2indices",href:"#DimensionalData.Dimensions.dims2indices"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims2indices")],-1)),s[67]||(s[67]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[68]||(s[68]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims2indices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Union{Colon,AbstractArray,Int}}</span></span></code></pre></div><p>Convert a <code>Dimension</code> or <code>Selector</code> <code>I</code> to indices of <code>Int</code>, <code>AbstractArray</code> or <code>Colon</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/indexing.jl#L26-L30" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",Y,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Dimensions.Lookups.selectindices",href:"#DimensionalData.Dimensions.Lookups.selectindices"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.selectindices")],-1)),s[70]||(s[70]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[71]||(s[71]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">selectindices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lookups, selectors)</span></span></code></pre></div><p>Converts <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a> to regular indices.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1091-L1095" target="_blank" rel="noreferrer">source</a></p>',3))]),s[114]||(s[114]=i("h3",{id:"Primitive-methods",tabindex:"-1"},[a("Primitive methods "),i("a",{class:"header-anchor",href:"#Primitive-methods","aria-label":'Permalink to "Primitive methods {#Primitive-methods}"'},"")],-1)),s[115]||(s[115]=i("p",null,"These low-level methods are really for internal use, but can be useful for writing dimensional algorithms.",-1)),s[116]||(s[116]=i("p",null,"They are not guaranteed to keep their interface, but usually will.",-1)),i("details",O,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.Dimensions.commondims",href:"#DimensionalData.Dimensions.commondims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.commondims")],-1)),s[73]||(s[73]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[74]||(s[74]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>This is basically <code>dims(x, query)</code> where the order of the original is kept, unlike <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> where the query tuple determines the order</p><p>Also unlike <code>dims</code>,<code>commondims</code> always returns a <code>Tuple</code>, no matter the input. No errors are thrown if dims are absent from either <code>x</code> or <code>query</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">label</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,String}</span></span></code></pre></div><p>Get a plot label for data or a dimension. This will include the name and units if they exist, and anything else that should be shown on a plot.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L159-L170" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",q,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DimensionalData.Dimensions.format",href:"#DimensionalData.Dimensions.format"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.format")],-1)),s[64]||(s[64]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Format the passed-in dimension(s) <code>dims</code> to match the object <code>x</code>.</p><p>Errors are thrown if dims don't match the array dims or size, and any fields holding <code>Auto-</code> objects are filled with guessed objects.</p><p>If a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> hasn't been specified, a lookup is chosen based on the type and element type of the values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/format.jl#L5-L15" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",X,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.Dimensions.dims2indices",href:"#DimensionalData.Dimensions.dims2indices"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims2indices")],-1)),s[67]||(s[67]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[68]||(s[68]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims2indices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Union{Colon,AbstractArray,Int}}</span></span></code></pre></div><p>Convert a <code>Dimension</code> or <code>Selector</code> <code>I</code> to indices of <code>Int</code>, <code>AbstractArray</code> or <code>Colon</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/indexing.jl#L26-L30" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",Y,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Dimensions.Lookups.selectindices",href:"#DimensionalData.Dimensions.Lookups.selectindices"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.selectindices")],-1)),s[70]||(s[70]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[71]||(s[71]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">selectindices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lookups, selectors)</span></span></code></pre></div><p>Converts <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a> to regular indices.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1091-L1095" target="_blank" rel="noreferrer">source</a></p>',3))]),s[114]||(s[114]=i("h3",{id:"Primitive-methods",tabindex:"-1"},[a("Primitive methods "),i("a",{class:"header-anchor",href:"#Primitive-methods","aria-label":'Permalink to "Primitive methods {#Primitive-methods}"'},"")],-1)),s[115]||(s[115]=i("p",null,"These low-level methods are really for internal use, but can be useful for writing dimensional algorithms.",-1)),s[116]||(s[116]=i("p",null,"They are not guaranteed to keep their interface, but usually will.",-1)),i("details",O,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.Dimensions.commondims",href:"#DimensionalData.Dimensions.commondims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.commondims")],-1)),s[73]||(s[73]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[74]||(s[74]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>This is basically <code>dims(x, query)</code> where the order of the original is kept, unlike <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> where the query tuple determines the order</p><p>Also unlike <code>dims</code>,<code>commondims</code> always returns a <code>Tuple</code>, no matter the input. No errors are thrown if dims are absent from either <code>x</code> or <code>query</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -126,9 +126,9 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> commondims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L155-L181" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",z,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.Dimensions.name2dim",href:"#DimensionalData.Dimensions.name2dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.name2dim")],-1)),s[76]||(s[76]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[77]||(s[77]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Symbol</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L155-L181" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",z,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.Dimensions.name2dim",href:"#DimensionalData.Dimensions.name2dim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.name2dim")],-1)),s[76]||(s[76]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[77]||(s[77]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Symbol</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span></code></pre></div><p>Convert a symbol to a dimension object. <code>:X</code>, <code>:Y</code>, <code>:Ti</code> etc will be converted to <code>X()</code>, <code>Y()</code>, <code>Ti()</code>, as with any other dims generated with the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.@dim"><code>@dim</code></a> macro.</p><p>All other <code>Symbol</code>s <code>S</code> will generate <code>Dim{S}()</code> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L40-L49" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",S,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.Dimensions.reducedims",href:"#DimensionalData.Dimensions.reducedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.reducedims")],-1)),s[79]||(s[79]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[80]||(s[80]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reducedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dimstoreduce) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Replace the specified dimensions with an index of length 1. This is usually to match a new array size where an axis has been reduced with a method like <code>mean</code> or <code>reduce</code> to a length of 1, but the number of dimensions has not changed.</p><p><code>Lookup</code> traits are also updated to correspond to the change in cell step, sampling type and order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L475-L485" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",Z,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.Dimensions.swapdims",href:"#DimensionalData.Dimensions.swapdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.swapdims")],-1)),s[82]||(s[82]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[83]||(s[83]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">T</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> T</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name2dim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Dimension,Vararg}</span></span></code></pre></div><p>Convert a symbol to a dimension object. <code>:X</code>, <code>:Y</code>, <code>:Ti</code> etc will be converted to <code>X()</code>, <code>Y()</code>, <code>Ti()</code>, as with any other dims generated with the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.@dim"><code>@dim</code></a> macro.</p><p>All other <code>Symbol</code>s <code>S</code> will generate <code>Dim{S}()</code> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L40-L49" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",S,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.Dimensions.reducedims",href:"#DimensionalData.Dimensions.reducedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.reducedims")],-1)),s[79]||(s[79]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[80]||(s[80]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reducedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dimstoreduce) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Replace the specified dimensions with an index of length 1. This is usually to match a new array size where an axis has been reduced with a method like <code>mean</code> or <code>reduce</code> to a length of 1, but the number of dimensions has not changed.</p><p><code>Lookup</code> traits are also updated to correspond to the change in cell step, sampling type and order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L475-L485" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",Z,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.Dimensions.swapdims",href:"#DimensionalData.Dimensions.swapdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.swapdims")],-1)),s[82]||(s[82]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[83]||(s[83]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">T</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> T</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Swap dimensions for the passed in dimensions, in the order passed.</p><p>Passing in the <code>Dimension</code> types rewraps the dimension index, keeping the index values and metadata, while constructed <code>Dimension</code> objects replace the original dimension. <code>nothing</code> leaves the original dimension as-is.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>newdim</code>: Tuple of <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">swapdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}, Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}, Dim{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}))</span></span> @@ -141,17 +141,17 @@ import{_ as l,c as p,j as i,a,G as e,a4 as t,B as h,o as k}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└───────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">[:, :, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L343-L376" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",I,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.Dimensions.slicedims",href:"#DimensionalData.Dimensions.slicedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.slicedims")],-1)),s[85]||(s[85]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[86]||(s[86]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span></code></pre></div><p>Slice the dimensions to match the axis values of the new array.</p><p>All methods return a tuple containing two tuples: the new dimensions, and the reference dimensions. The ref dimensions are no longer used in the new struct but are useful to give context to plots.</p><p>Called at the array level the returned tuple will also include the previous reference dims attached to the array.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: a function <code>getindex</code>, <code>view</code> or <code>dotview</code>. This will be used for slicing <code>getindex</code> is the default if <code>f</code> is not included.</p></li><li><p><code>x</code>: An <code>AbstractDimArray</code>, <code>Tuple</code> of <code>Dimension</code>, or <code>Dimension</code></p></li><li><p><code>I</code>: A tuple of <code>Integer</code>, <code>Colon</code> or <code>AbstractArray</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L389-L408" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.Dimensions.comparedims",href:"#DimensionalData.Dimensions.comparedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.comparedims")],-1)),s[88]||(s[88]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[89]||(s[89]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L343-L376" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",I,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.Dimensions.slicedims",href:"#DimensionalData.Dimensions.slicedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.slicedims")],-1)),s[85]||(s[85]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[86]||(s[86]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">slicedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, I) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Tuple,Tuple}</span></span></code></pre></div><p>Slice the dimensions to match the axis values of the new array.</p><p>All methods return a tuple containing two tuples: the new dimensions, and the reference dimensions. The ref dimensions are no longer used in the new struct but are useful to give context to plots.</p><p>Called at the array level the returned tuple will also include the previous reference dims attached to the array.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: a function <code>getindex</code>, <code>view</code> or <code>dotview</code>. This will be used for slicing <code>getindex</code> is the default if <code>f</code> is not included.</p></li><li><p><code>x</code>: An <code>AbstractDimArray</code>, <code>Tuple</code> of <code>Dimension</code>, or <code>Dimension</code></p></li><li><p><code>I</code>: A tuple of <code>Integer</code>, <code>Colon</code> or <code>AbstractArray</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L389-L408" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.Dimensions.comparedims",href:"#DimensionalData.Dimensions.comparedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.comparedims")],-1)),s[88]||(s[88]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[89]||(s[89]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Type{Bool}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Check that dimensions or tuples of dimensions passed as each argument are the same, and return the first valid dimension. If <code>AbstractDimArray</code>s are passed as arguments their dimensions are compared.</p><p>Empty tuples and <code>nothing</code> dimension values are ignored, returning the <code>Dimension</code> value if it exists.</p><p>Passing <code>Bool</code> as the first argument means <code>true</code>/<code>false</code> will be returned, rather than throwing an error.</p><p><strong>Keywords</strong></p><p>These are all <code>Bool</code> flags:</p><ul><li><p><code>type</code>: compare dimension type, <code>true</code> by default.</p></li><li><p><code>valtype</code>: compare wrapped value type, <code>false</code> by default.</p></li><li><p><code>val</code>: compare wrapped values, <code>false</code> by default.</p></li><li><p><code>order</code>: compare order, <code>false</code> by default.</p></li><li><p><code>length</code>: compare lengths, <code>true</code> by default.</p></li><li><p><code>ignore_length_one</code>: ignore length <code>1</code> in comparisons, and return whichever dimension is not length 1, if any. This is useful in e.g. broadcasting comparisons. <code>false</code> by default.</p></li><li><p><code>msg</code>: DimensionalData.Warn or DimensionalData.Throw. Both may contain string, which will be added to error or warning mesages.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L502-L532" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",P,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.combinedims",href:"#DimensionalData.Dimensions.combinedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.combinedims")],-1)),s[91]||(s[91]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[92]||(s[92]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">combinedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs; check</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Combine the dimensions of each object in <code>xs</code>, in the order they are found.</p><p>Keywords are passed to <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.comparedims"><code>comparedims</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L697-L703" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",V,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.sortdims",href:"#DimensionalData.Dimensions.sortdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.sortdims")],-1)),s[94]||(s[94]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[95]||(s[95]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sortdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], tosort, order) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Sort dimensions <code>tosort</code> by <code>order</code>. Dimensions in <code>order</code> but missing from <code>tosort</code> are replaced with <code>nothing</code>.</p><p><code>tosort</code> and <code>order</code> can be <code>Tuple</code>s or <code>Vector</code>s or Dimension or dimension type. Abstract supertypes like <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.TimeDim"><code>TimeDim</code></a> can be used in <code>order</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L62-L73" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",M,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.Dimensions.Lookups.basetypeof",href:"#DimensionalData.Dimensions.Lookups.basetypeof"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.basetypeof")],-1)),s[97]||(s[97]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[98]||(s[98]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basetypeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Type</span></span></code></pre></div><p>Get the "base" type of an object - the minimum required to define the object without it's fields. By default this is the full <code>UnionAll</code> for the type. But custom <code>basetypeof</code> methods can be defined for types with free type parameters.</p><p>In DimensionalData this is primarily used for comparing <code>Dimension</code>s, where <code>Dim{:x}</code> is different from <code>Dim{:y}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/utils.jl#L62-L72" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",R,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.Dimensions.basedims",href:"#DimensionalData.Dimensions.basedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.basedims")],-1)),s[100]||(s[100]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[101]||(s[101]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Symbol,Type}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Returns <code>basetypeof(d)()</code> or a <code>Tuple</code> of called on a <code>Tuple</code>.</p><p>See <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Lookups.basetypeof"><code>basetypeof</code></a></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L731-L738" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",G,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.Dimensions.setdims",href:"#DimensionalData.Dimensions.setdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.setdims")],-1)),s[103]||(s[103]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[104]||(s[104]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(X, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">comparedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Type{Bool}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Check that dimensions or tuples of dimensions passed as each argument are the same, and return the first valid dimension. If <code>AbstractDimArray</code>s are passed as arguments their dimensions are compared.</p><p>Empty tuples and <code>nothing</code> dimension values are ignored, returning the <code>Dimension</code> value if it exists.</p><p>Passing <code>Bool</code> as the first argument means <code>true</code>/<code>false</code> will be returned, rather than throwing an error.</p><p><strong>Keywords</strong></p><p>These are all <code>Bool</code> flags:</p><ul><li><p><code>type</code>: compare dimension type, <code>true</code> by default.</p></li><li><p><code>valtype</code>: compare wrapped value type, <code>false</code> by default.</p></li><li><p><code>val</code>: compare wrapped values, <code>false</code> by default.</p></li><li><p><code>order</code>: compare order, <code>false</code> by default.</p></li><li><p><code>length</code>: compare lengths, <code>true</code> by default.</p></li><li><p><code>ignore_length_one</code>: ignore length <code>1</code> in comparisons, and return whichever dimension is not length 1, if any. This is useful in e.g. broadcasting comparisons. <code>false</code> by default.</p></li><li><p><code>msg</code>: DimensionalData.Warn or DimensionalData.Throw. Both may contain string, which will be added to error or warning mesages.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L502-L532" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",P,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.combinedims",href:"#DimensionalData.Dimensions.combinedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.combinedims")],-1)),s[91]||(s[91]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[92]||(s[92]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">combinedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs; check</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Combine the dimensions of each object in <code>xs</code>, in the order they are found.</p><p>Keywords are passed to <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.comparedims"><code>comparedims</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L697-L703" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",V,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.sortdims",href:"#DimensionalData.Dimensions.sortdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.sortdims")],-1)),s[94]||(s[94]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[95]||(s[95]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sortdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], tosort, order) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Sort dimensions <code>tosort</code> by <code>order</code>. Dimensions in <code>order</code> but missing from <code>tosort</code> are replaced with <code>nothing</code>.</p><p><code>tosort</code> and <code>order</code> can be <code>Tuple</code>s or <code>Vector</code>s or Dimension or dimension type. Abstract supertypes like <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.TimeDim"><code>TimeDim</code></a> can be used in <code>order</code>.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to sort abstract types by concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L62-L73" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",M,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.Dimensions.Lookups.basetypeof",href:"#DimensionalData.Dimensions.Lookups.basetypeof"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.basetypeof")],-1)),s[97]||(s[97]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[98]||(s[98]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basetypeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Type</span></span></code></pre></div><p>Get the "base" type of an object - the minimum required to define the object without it's fields. By default this is the full <code>UnionAll</code> for the type. But custom <code>basetypeof</code> methods can be defined for types with free type parameters.</p><p>In DimensionalData this is primarily used for comparing <code>Dimension</code>s, where <code>Dim{:x}</code> is different from <code>Dim{:y}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/utils.jl#L62-L72" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",R,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.Dimensions.basedims",href:"#DimensionalData.Dimensions.basedims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.basedims")],-1)),s[100]||(s[100]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[101]||(s[101]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">basedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Symbol,Type}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Returns <code>basetypeof(d)()</code> or a <code>Tuple</code> of called on a <code>Tuple</code>.</p><p>See <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Lookups.basetypeof"><code>basetypeof</code></a></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L731-L738" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",G,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.Dimensions.setdims",href:"#DimensionalData.Dimensions.setdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.setdims")],-1)),s[103]||(s[103]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[104]||(s[104]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(X, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractArray</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, newdims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Replaces the first dim matching <code><: basetypeof(newdim)</code> with newdim, and returns a new object or tuple with the dimension updated.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>newdim</code>: Tuple or single <code>Dimension</code>, <code>Type</code> or <code>Symbol</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">B </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> setdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())))</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(B, Y)</span></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Char} ForwardOrdered</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">wrapping</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L312-L333" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",U,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.Dimensions.dimsmatch",href:"#DimensionalData.Dimensions.dimsmatch"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimsmatch")],-1)),s[106]||(s[106]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[107]||(s[107]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dim, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Compare 2 dimensions or <code>Tuple</code> of <code>Dimension</code> are of the same base type, or are at least rotations/transformations of the same type.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L4-L12" target="_blank" rel="noreferrer">source</a></p>`,4))])])}const is=l(d,[["render",$]]);export{ss as __pageData,is as default}; +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">wrapping</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'j'</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L312-L333" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",U,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.Dimensions.dimsmatch",href:"#DimensionalData.Dimensions.dimsmatch"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimsmatch")],-1)),s[106]||(s[106]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[107]||(s[107]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dim, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimsmatch</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Compare 2 dimensions or <code>Tuple</code> of <code>Dimension</code> are of the same base type, or are at least rotations/transformations of the same type.</p><p><code>f</code> is <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L4-L12" target="_blank" rel="noreferrer">source</a></p>`,4))])])}const is=l(d,[["render",$]]);export{ss as __pageData,is as default}; diff --git a/dev/assets/api_lookuparrays.md.CMGRbv3b.js b/dev/assets/api_lookuparrays.md.4gWyIReH.js similarity index 94% rename from dev/assets/api_lookuparrays.md.CMGRbv3b.js rename to dev/assets/api_lookuparrays.md.4gWyIReH.js index 8bc2d3c87..3453e5208 100644 --- a/dev/assets/api_lookuparrays.md.CMGRbv3b.js +++ b/dev/assets/api_lookuparrays.md.4gWyIReH.js @@ -1,5 +1,5 @@ -import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framework.C6EFuEL4.js";const bs=JSON.parse('{"title":"Lookups","description":"","frontmatter":{},"headers":[],"relativePath":"api/lookuparrays.md","filePath":"api/lookuparrays.md","lastUpdated":null}'),k={name:"api/lookuparrays.md"},r={class:"jldocstring custom-block",open:""},d={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},ns={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""},ps={class:"jldocstring custom-block",open:""},os={class:"jldocstring custom-block",open:""},hs={class:"jldocstring custom-block",open:""},ks={class:"jldocstring custom-block",open:""},rs={class:"jldocstring custom-block",open:""},ds={class:"jldocstring custom-block",open:""},gs={class:"jldocstring custom-block",open:""},cs={class:"jldocstring custom-block",open:""};function us(ys,s,Es,ms,Ds,Fs){const e=o("Badge");return h(),p("div",null,[s[174]||(s[174]=i("h1",{id:"lookups",tabindex:"-1"},[a("Lookups "),i("a",{class:"header-anchor",href:"#lookups","aria-label":'Permalink to "Lookups"'},"")],-1)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.Dimensions.Lookups",href:"#DimensionalData.Dimensions.Lookups"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups")],-1)),s[1]||(s[1]=a()),n(e,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[2]||(s[2]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p>Module for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s used in DimensionalData.jl</p><p><code>Lookup</code> defines traits and <code>AbstractArray</code> wrappers that give specific behaviours for a lookup index when indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>.</p><p>For example, these allow tracking over array order so fast indexing works even when the array is reversed.</p><p>To load <code>Lookup</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/Lookups.jl#L1-L18" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",d,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.Dimensions.Lookups.Lookup",href:"#DimensionalData.Dimensions.Lookups.Lookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Lookup")],-1)),s[4]||(s[4]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookup</span></span></code></pre></div><p>Types defining the behaviour of a lookup index, how it is plotted and how <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a> work.</p><p>A <code>Lookup</code> may be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a> indicating that there are no lookup values, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> for ordered or unordered categories, or a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> index for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.Dimensions.Lookups.Aligned",href:"#DimensionalData.Dimensions.Lookups.Aligned"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Aligned")],-1)),s[7]||(s[7]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Aligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array axes.</p><p>This is by far the most common supertype for <code>Lookup</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L99-L106" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",c,[i("summary",null,[s[9]||(s[9]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractSampled",href:"#DimensionalData.Dimensions.Lookups.AbstractSampled"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractSampled")],-1)),s[10]||(s[10]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[11]||(s[11]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractSampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array, and is independent of other dimensions. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> is provided by this package.</p><p><code>AbstractSampled</code> must have <code>order</code>, <code>span</code> and <code>sampling</code> fields, or a <code>rebuild</code> method that accepts them as keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L169-L178" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",u,[i("summary",null,[s[12]||(s[12]=i("a",{id:"DimensionalData.Dimensions.Lookups.Sampled",href:"#DimensionalData.Dimensions.Lookups.Sampled"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Sampled")],-1)),s[13]||(s[13]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[14]||(s[14]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span> +import{_ as l,c as p,j as i,a,G as e,a4 as t,B as o,o as h}from"./chunks/framework.B8l2DGq3.js";const bs=JSON.parse('{"title":"Lookups","description":"","frontmatter":{},"headers":[],"relativePath":"api/lookuparrays.md","filePath":"api/lookuparrays.md","lastUpdated":null}'),k={name:"api/lookuparrays.md"},r={class:"jldocstring custom-block",open:""},d={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ns={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""},ps={class:"jldocstring custom-block",open:""},os={class:"jldocstring custom-block",open:""},hs={class:"jldocstring custom-block",open:""},ks={class:"jldocstring custom-block",open:""},rs={class:"jldocstring custom-block",open:""},ds={class:"jldocstring custom-block",open:""},gs={class:"jldocstring custom-block",open:""},cs={class:"jldocstring custom-block",open:""};function us(ys,s,Es,ms,Ds,Fs){const n=o("Badge");return h(),p("div",null,[s[174]||(s[174]=i("h1",{id:"lookups",tabindex:"-1"},[a("Lookups "),i("a",{class:"header-anchor",href:"#lookups","aria-label":'Permalink to "Lookups"'},"")],-1)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.Dimensions.Lookups",href:"#DimensionalData.Dimensions.Lookups"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups")],-1)),s[1]||(s[1]=a()),e(n,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[2]||(s[2]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p>Module for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s used in DimensionalData.jl</p><p><code>Lookup</code> defines traits and <code>AbstractArray</code> wrappers that give specific behaviours for a lookup index when indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>.</p><p>For example, these allow tracking over array order so fast indexing works even when the array is reversed.</p><p>To load <code>Lookup</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/Lookups.jl#L1-L18" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",d,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.Dimensions.Lookups.Lookup",href:"#DimensionalData.Dimensions.Lookups.Lookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Lookup")],-1)),s[4]||(s[4]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookup</span></span></code></pre></div><p>Types defining the behaviour of a lookup index, how it is plotted and how <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a> work.</p><p>A <code>Lookup</code> may be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a> indicating that there are no lookup values, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> for ordered or unordered categories, or a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> index for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.Dimensions.Lookups.Aligned",href:"#DimensionalData.Dimensions.Lookups.Aligned"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Aligned")],-1)),s[7]||(s[7]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Aligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array axes.</p><p>This is by far the most common supertype for <code>Lookup</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L99-L106" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",c,[i("summary",null,[s[9]||(s[9]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractSampled",href:"#DimensionalData.Dimensions.Lookups.AbstractSampled"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractSampled")],-1)),s[10]||(s[10]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[11]||(s[11]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractSampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array, and is independent of other dimensions. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> is provided by this package.</p><p><code>AbstractSampled</code> must have <code>order</code>, <code>span</code> and <code>sampling</code> fields, or a <code>rebuild</code> method that accepts them as keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L169-L178" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",u,[i("summary",null,[s[12]||(s[12]=i("a",{id:"DimensionalData.Dimensions.Lookups.Sampled",href:"#DimensionalData.Dimensions.Lookups.Sampled"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Sampled")],-1)),s[13]||(s[13]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[14]||(s[14]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractVector</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>A concrete implementation of the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AbstractSampled"><code>AbstractSampled</code></a>. It can be used to represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><code>Sampled</code> is capable of representing gridded data from a wide range of sources, allowing correct <code>bounds</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s for points or intervals of regular, irregular, forward and reverse lookups.</p><p>On <code>AbstractDimArray</code> construction, <code>Sampled</code> lookup is assigned for all lookups of <code>AbstractRange</code> not assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a>.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li></ul><p><strong>Example</strong></p><p>Create an array with <code>Interval</code> sampling, and <code>Regular</code> span for a vector with known spacing.</p><p>We set the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of the <code>Intervals</code> to <code>Start</code> specifying that the lookup values are for the locus at the start of each interval.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> @@ -20,9 +20,9 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 80</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 40</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L254-L303" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",y,[i("summary",null,[s[15]||(s[15]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractCyclic",href:"#DimensionalData.Dimensions.Lookups.AbstractCyclic"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractCyclic")],-1)),s[16]||(s[16]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[17]||(s[17]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span></code></pre></div><p>An abstract supertype for cyclic lookups.</p><p>These are <code>AbstractSampled</code> lookups that are cyclic for <code>Selectors</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L333-L339" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",E,[i("summary",null,[s[18]||(s[18]=i("a",{id:"DimensionalData.Dimensions.Lookups.Cyclic",href:"#DimensionalData.Dimensions.Lookups.Cyclic"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Cyclic")],-1)),s[19]||(s[19]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[20]||(s[20]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Cyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCyclic</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L254-L303" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",y,[i("summary",null,[s[15]||(s[15]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractCyclic",href:"#DimensionalData.Dimensions.Lookups.AbstractCyclic"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractCyclic")],-1)),s[16]||(s[16]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[17]||(s[17]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span></code></pre></div><p>An abstract supertype for cyclic lookups.</p><p>These are <code>AbstractSampled</code> lookups that are cyclic for <code>Selectors</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L333-L339" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",E,[i("summary",null,[s[18]||(s[18]=i("a",{id:"DimensionalData.Dimensions.Lookups.Cyclic",href:"#DimensionalData.Dimensions.Lookups.Cyclic"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Cyclic")],-1)),s[19]||(s[19]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[20]||(s[20]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Cyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCyclic</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Cyclic</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), cycle)</span></span></code></pre></div><p>A <code>Cyclic</code> lookup is similar to <code>Sampled</code> but out of range <code>Selectors</code> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a> will cycle the values to <code>typemin</code> or <code>typemax</code> over the length of <code>cycle</code>. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a> and <code>..</code> work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>.</p><p>This is useful when we are using mean annual datasets over a real time-span, or for wrapping longitudes so that <code>-360</code> and <code>360</code> are the same.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li><li><p><code>cycle</code>: the length of the cycle. This does not have to exactly match the data, the <code>step</code> size is <code>Week(1)</code> the cycle can be <code>Years(1)</code>.</p></li></ul><p><strong>Notes</strong></p><ol><li><p>If you use dates and e.g. cycle over a <code>Year</code>, every year will have the number and spacing of <code>Week</code>s and <code>Day</code>s as the cycle year. Using <code>At</code> may not be reliable in terms of exact dates, as it will be applied to the specified date plus or minus <code>n</code> years.</p></li><li><p>Indexing into a <code>Cycled</code> with any <code>AbstractArray</code> or <code>AbstractRange</code> will return a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as the full cycle is likely no longer available.</p></li><li><p><code>..</code> or <code>Between</code> selectors do not work in a cycled way: they work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>. This may change in future to return cycled values, but there are problems with this, such as leap years breaking correct date cycling of a single year. If you actually need this behaviour, please make a GitHub issue.</p></li></ol><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L386-L415" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",m,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractCategorical",href:"#DimensionalData.Dimensions.Lookups.AbstractCategorical"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractCategorical")],-1)),s[22]||(s[22]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[23]||(s[23]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCategorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the values are categories.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> is the provided concrete implementation. But this can easily be extended, all methods are defined for <code>AbstractCategorical</code>.</p><p>All <code>AbstractCategorical</code> must provide a <code>rebuild</code> method with <code>data</code>, <code>order</code> and <code>metadata</code> keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L451-L461" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",D,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.Lookups.Categorical",href:"#DimensionalData.Dimensions.Lookups.Categorical"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Categorical")],-1)),s[25]||(s[25]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[26]||(s[26]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCategorical</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Cyclic</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), cycle)</span></span></code></pre></div><p>A <code>Cyclic</code> lookup is similar to <code>Sampled</code> but out of range <code>Selectors</code> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a> will cycle the values to <code>typemin</code> or <code>typemax</code> over the length of <code>cycle</code>. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a> and <code>..</code> work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>.</p><p>This is useful when we are using mean annual datasets over a real time-span, or for wrapping longitudes so that <code>-360</code> and <code>360</code> are the same.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li><li><p><code>cycle</code>: the length of the cycle. This does not have to exactly match the data, the <code>step</code> size is <code>Week(1)</code> the cycle can be <code>Years(1)</code>.</p></li></ul><p><strong>Notes</strong></p><ol><li><p>If you use dates and e.g. cycle over a <code>Year</code>, every year will have the number and spacing of <code>Week</code>s and <code>Day</code>s as the cycle year. Using <code>At</code> may not be reliable in terms of exact dates, as it will be applied to the specified date plus or minus <code>n</code> years.</p></li><li><p>Indexing into a <code>Cycled</code> with any <code>AbstractArray</code> or <code>AbstractRange</code> will return a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as the full cycle is likely no longer available.</p></li><li><p><code>..</code> or <code>Between</code> selectors do not work in a cycled way: they work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>. This may change in future to return cycled values, but there are problems with this, such as leap years breaking correct date cycling of a single year. If you actually need this behaviour, please make a GitHub issue.</p></li></ol><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L386-L415" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",m,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractCategorical",href:"#DimensionalData.Dimensions.Lookups.AbstractCategorical"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractCategorical")],-1)),s[22]||(s[22]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[23]||(s[23]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCategorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the values are categories.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> is the provided concrete implementation. But this can easily be extended, all methods are defined for <code>AbstractCategorical</code>.</p><p>All <code>AbstractCategorical</code> must provide a <code>rebuild</code> method with <code>data</code>, <code>order</code> and <code>metadata</code> keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L451-L461" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",D,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.Lookups.Categorical",href:"#DimensionalData.Dimensions.Lookups.Categorical"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Categorical")],-1)),s[25]||(s[25]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[26]||(s[26]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCategorical</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(o</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the values are categories.</p><p>This will be automatically assigned if the lookup contains <code>AbstractString</code>, <code>Symbol</code> or <code>Char</code>. Otherwise it can be assigned manually.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> will be determined automatically where possible.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> matching the length of the corresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <code>ForwardOrdered</code>, <code>ReverseOrdered</code> or <code>Unordered</code>. Can be provided if this is known and performance is important.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li></ul><p><strong>Example</strong></p><p>Create an array with [<code>Interval</code>] sampling.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -34,7 +34,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{String} [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"one"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"two"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"three"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] Unordered,</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Symbol} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L474-L515" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",F,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Lookups.Unaligned",href:"#DimensionalData.Dimensions.Lookups.Unaligned"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Unaligned")],-1)),s[28]||(s[28]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[29]||(s[29]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unaligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the lookup is not aligned to the grid.</p><p>Indexing an <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s must provide all other <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L536-L543" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",C,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.Lookups.Transformed",href:"#DimensionalData.Dimensions.Lookups.Transformed"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Transformed")],-1)),s[31]||(s[31]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Transformed </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Unaligned</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Symbol} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L474-L515" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",F,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Lookups.Unaligned",href:"#DimensionalData.Dimensions.Lookups.Unaligned"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Unaligned")],-1)),s[28]||(s[28]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[29]||(s[29]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unaligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the lookup is not aligned to the grid.</p><p>Indexing an <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s must provide all other <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L536-L543" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",C,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.Lookups.Transformed",href:"#DimensionalData.Dimensions.Lookups.Transformed"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Transformed")],-1)),s[31]||(s[31]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Transformed </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Unaligned</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Transformed</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that uses an affine transformation to convert dimensions from <code>dims(lookup)</code> to <code>dims(array)</code>. This can be useful when the dimensions are e.g. rotated from a more commonly used axis.</p><p>Any function can be used to do the transformation, but transformations from CoordinateTransformations.jl may be useful.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: transformation function</p></li><li><p><code>dim</code>: a dimension to transform to.</p></li></ul><p><strong>Keyword Arguments</strong></p><ul><li><code>metadata</code>:</li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups, CoordinateTransformations</span></span> <span class="line"></span> @@ -47,9 +47,9 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">9</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L546-L583" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.MergedLookup",href:"#DimensionalData.Dimensions.MergedLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.MergedLookup")],-1)),s[34]||(s[34]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">MergedLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">9</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L546-L583" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.MergedLookup",href:"#DimensionalData.Dimensions.MergedLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.MergedLookup")],-1)),s[34]||(s[34]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">MergedLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">MergedLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims; [metadata])</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that holds multiple combined dimensions.</p><p><code>MergedLookup</code> can be indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <code>At</code>, <code>Between</code>, and <code>Where</code> although <code>Near</code> has undefined meaning.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: A <code>Vector</code> of <code>Tuple</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> indicating the dimensions in the tuples in <code>data</code>.</p></li></ul><p><strong>Keywords</strong></p><ul><li><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> object to attach dimension metadata.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/merged.jl#L1-L20" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",f,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.Lookups.NoLookup",href:"#DimensionalData.Dimensions.Lookups.NoLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.NoLookup")],-1)),s[37]||(s[37]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[38]||(s[38]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">MergedLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims; [metadata])</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that holds multiple combined dimensions.</p><p><code>MergedLookup</code> can be indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <code>At</code>, <code>Between</code>, and <code>Where</code> although <code>Near</code> has undefined meaning.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: A <code>Vector</code> of <code>Tuple</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> indicating the dimensions in the tuples in <code>data</code>.</p></li></ul><p><strong>Keywords</strong></p><ul><li><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> object to attach dimension metadata.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/merged.jl#L1-L20" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",f,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.Lookups.NoLookup",href:"#DimensionalData.Dimensions.Lookups.NoLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.NoLookup")],-1)),s[37]||(s[37]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[38]||(s[38]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that is identical to the array axis. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s can't be used on this lookup.</p><p><strong>Example</strong></p><p>Defining a <code>DimArray</code> without passing lookup values to the dimensions, it will be assigned <code>NoLookup</code>:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -64,26 +64,26 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup, NoLookup</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L119-L154" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",v,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoLookup",href:"#DimensionalData.Dimensions.Lookups.AutoLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoLookup")],-1)),s[40]||(s[40]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[41]||(s[41]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup, NoLookup</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L119-L154" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",v,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoLookup",href:"#DimensionalData.Dimensions.Lookups.AutoLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoLookup")],-1)),s[40]||(s[40]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[41]||(s[41]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(values</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Automatic <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, the default lookup. It will be converted automatically to another <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> when it is possible to detect it from the lookup values.</p><p>Keywords will be used in the detected <code>Lookup</code> constructor.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L66-L76" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",j,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoValues",href:"#DimensionalData.Dimensions.Lookups.AutoValues"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoValues")],-1)),s[43]||(s[43]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[44]||(s[44]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoValues</span></span></code></pre></div><p>Detect <code>Lookup</code> values from the context. This is used in <code>NoLookup</code> to simply use the array axis as the index when the array is constructed, and in <code>set</code> to change the <code>Lookup</code> type without changing the index values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L278-L284" target="_blank" rel="noreferrer">source</a></p>',3))]),s[175]||(s[175]=i("p",null,[a("The generic value getter "),i("code",null,"val")],-1)),i("details",B,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.Dimensions.Lookups.val",href:"#DimensionalData.Dimensions.Lookups.val"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.val")],-1)),s[46]||(s[46]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[47]||(s[47]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Return the contained value of a wrapper object.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>Objects that don't define a <code>val</code> method are returned unaltered.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L79-L88" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[176]||(s[176]=i("p",null,"Lookup methods:",-1)),i("details",L,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.Dimensions.Lookups.bounds",href:"#DimensionalData.Dimensions.Lookups.bounds"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.bounds")],-1)),s[49]||(s[49]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[50]||(s[50]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(values</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Automatic <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, the default lookup. It will be converted automatically to another <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> when it is possible to detect it from the lookup values.</p><p>Keywords will be used in the detected <code>Lookup</code> constructor.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L66-L76" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",j,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoValues",href:"#DimensionalData.Dimensions.Lookups.AutoValues"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoValues")],-1)),s[43]||(s[43]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[44]||(s[44]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoValues</span></span></code></pre></div><p>Detect <code>Lookup</code> values from the context. This is used in <code>NoLookup</code> to simply use the array axis as the index when the array is constructed, and in <code>set</code> to change the <code>Lookup</code> type without changing the index values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L278-L284" target="_blank" rel="noreferrer">source</a></p>',3))]),s[175]||(s[175]=i("p",null,[a("The generic value getter "),i("code",null,"val")],-1)),i("details",B,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.Dimensions.Lookups.val",href:"#DimensionalData.Dimensions.Lookups.val"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.val")],-1)),s[46]||(s[46]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[47]||(s[47]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Return the contained value of a wrapper object.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>Objects that don't define a <code>val</code> method are returned unaltered.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L79-L88" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[176]||(s[176]=i("p",null,"Lookup methods:",-1)),i("details",L,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.Dimensions.Lookups.bounds",href:"#DimensionalData.Dimensions.Lookups.bounds"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.bounds")],-1)),s[49]||(s[49]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[50]||(s[50]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span></code></pre></div><p>Return the bounds of all dimensions of an object, of a specific dimension, or of a tuple of dimensions.</p><p>If bounds are not known, one or both values may be <code>nothing</code>.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L173-L185" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",A,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.Dimensions.Lookups.hasselection",href:"#DimensionalData.Dimensions.Lookups.hasselection"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.hasselection")],-1)),s[52]||(s[52]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[53]||(s[53]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selector) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if indexing into x with <code>selectors</code> can be performed, where x is some object with a <code>dims</code> method, and <code>selectors</code> is a <code>Selector</code> or <code>Dimension</code> or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L240-L247" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.Dimensions.Lookups.sampling",href:"#DimensionalData.Dimensions.Lookups.sampling"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.sampling")],-1)),s[55]||(s[55]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[56]||(s[56]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span></code></pre></div><p>Return the bounds of all dimensions of an object, of a specific dimension, or of a tuple of dimensions.</p><p>If bounds are not known, one or both values may be <code>nothing</code>.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L173-L185" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",A,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.Dimensions.Lookups.hasselection",href:"#DimensionalData.Dimensions.Lookups.hasselection"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.hasselection")],-1)),s[52]||(s[52]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[53]||(s[53]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selector) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if indexing into x with <code>selectors</code> can be performed, where x is some object with a <code>dims</code> method, and <code>selectors</code> is a <code>Selector</code> or <code>Dimension</code> or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L240-L247" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.Dimensions.Lookups.sampling",href:"#DimensionalData.Dimensions.Lookups.sampling"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.sampling")],-1)),s[55]||(s[55]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[56]||(s[56]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Sampling}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Union{Dimension,Lookup}) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L201-L211" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",T,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.Dimensions.Lookups.span",href:"#DimensionalData.Dimensions.Lookups.span"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.span")],-1)),s[58]||(s[58]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[59]||(s[59]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Union{Dimension,Lookup}) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L201-L211" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",T,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.Dimensions.Lookups.span",href:"#DimensionalData.Dimensions.Lookups.span"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.span")],-1)),s[58]||(s[58]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[59]||(s[59]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Span,N}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Span"><code>Span</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L214-L224" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",w,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.Dimensions.Lookups.order",href:"#DimensionalData.Dimensions.Lookups.order"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.order")],-1)),s[61]||(s[61]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[62]||(s[62]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Span"><code>Span</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L214-L224" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",w,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.Dimensions.Lookups.order",href:"#DimensionalData.Dimensions.Lookups.order"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.order")],-1)),s[61]||(s[61]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[62]||(s[62]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Order</span></span></code></pre></div><p>Return the <code>Ordering</code> of the dimension lookup for each dimension: <code>ForwardOrdered</code>, <code>ReverseOrdered</code>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a></p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L188-L198" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",S,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DimensionalData.Dimensions.Lookups.locus",href:"#DimensionalData.Dimensions.Lookups.locus"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.locus")],-1)),s[64]||(s[64]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Order</span></span></code></pre></div><p>Return the <code>Ordering</code> of the dimension lookup for each dimension: <code>ForwardOrdered</code>, <code>ReverseOrdered</code>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a></p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L188-L198" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",S,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DimensionalData.Dimensions.Lookups.locus",href:"#DimensionalData.Dimensions.Lookups.locus"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.locus")],-1)),s[64]||(s[64]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Locus,N}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Position"><code>Position</code></a> of lookup values for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L227-L237" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",O,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.Dimensions.Lookups.shiftlocus",href:"#DimensionalData.Dimensions.Lookups.shiftlocus"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.shiftlocus")],-1)),s[67]||(s[67]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[68]||(s[68]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">shiftlocus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x)</span></span></code></pre></div><p>Shift the values of <code>x</code> from the current locus to the new locus.</p><p>We only shift <code>Sampled</code>, <code>Regular</code> or <code>Explicit</code>, <code>Intervals</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/utils.jl#L1-L7" target="_blank" rel="noreferrer">source</a></p>',4))]),s[177]||(s[177]=i("h2",{id:"selectors",tabindex:"-1"},[a("Selectors "),i("a",{class:"header-anchor",href:"#selectors","aria-label":'Permalink to "Selectors"'},"")],-1)),i("details",I,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Dimensions.Lookups.Selector",href:"#DimensionalData.Dimensions.Lookups.Selector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Selector")],-1)),s[70]||(s[70]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[71]||(s[71]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Selector</span></span></code></pre></div><p>Abstract supertype for all selectors.</p><p>Selectors are wrappers that indicate that passed values are not the array indices, but values to be selected from the dimension lookup, such as <code>DateTime</code> objects for a <code>Ti</code> dimension.</p><p>Selectors provided in DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li></ul><p>Note: Selectors can be modified using:</p><ul><li><code>Not</code>: as in <code>Not(At(x))</code></li></ul><p>And IntervalSets.jl <code>Interval</code> can be used instead of <code>Between</code></p><ul><li><p><code>..</code></p></li><li><p><code>Interval</code></p></li><li><p><code>OpenInterval</code></p></li><li><p><code>ClosedInterval</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L16-L41" target="_blank" rel="noreferrer">source</a></p>',10))]),i("details",q,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.Dimensions.Lookups.IntSelector",href:"#DimensionalData.Dimensions.Lookups.IntSelector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.IntSelector")],-1)),s[73]||(s[73]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[74]||(s[74]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IntSelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return a single <code>Int</code> index.</p><p>IntSelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L52-L62" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",z,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.Dimensions.Lookups.ArraySelector",href:"#DimensionalData.Dimensions.Lookups.ArraySelector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ArraySelector")],-1)),s[76]||(s[76]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[77]||(s[77]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ArraySelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return an <code>AbstractArray</code>.</p><p>ArraySelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L65-L75" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",P,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.Dimensions.Lookups.At",href:"#DimensionalData.Dimensions.Lookups.At"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.At")],-1)),s[79]||(s[79]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[80]||(s[80]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">At </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Position"><code>Position</code></a> of lookup values for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L227-L237" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",O,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.Dimensions.Lookups.shiftlocus",href:"#DimensionalData.Dimensions.Lookups.shiftlocus"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.shiftlocus")],-1)),s[67]||(s[67]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[68]||(s[68]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">shiftlocus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x)</span></span></code></pre></div><p>Shift the values of <code>x</code> from the current locus to the new locus.</p><p>We only shift <code>Sampled</code>, <code>Regular</code> or <code>Explicit</code>, <code>Intervals</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/utils.jl#L1-L7" target="_blank" rel="noreferrer">source</a></p>',4))]),s[177]||(s[177]=i("h2",{id:"selectors",tabindex:"-1"},[a("Selectors "),i("a",{class:"header-anchor",href:"#selectors","aria-label":'Permalink to "Selectors"'},"")],-1)),i("details",I,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Dimensions.Lookups.Selector",href:"#DimensionalData.Dimensions.Lookups.Selector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Selector")],-1)),s[70]||(s[70]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[71]||(s[71]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Selector</span></span></code></pre></div><p>Abstract supertype for all selectors.</p><p>Selectors are wrappers that indicate that passed values are not the array indices, but values to be selected from the dimension lookup, such as <code>DateTime</code> objects for a <code>Ti</code> dimension.</p><p>Selectors provided in DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li></ul><p>Note: Selectors can be modified using:</p><ul><li><code>Not</code>: as in <code>Not(At(x))</code></li></ul><p>And IntervalSets.jl <code>Interval</code> can be used instead of <code>Between</code></p><ul><li><p><code>..</code></p></li><li><p><code>Interval</code></p></li><li><p><code>OpenInterval</code></p></li><li><p><code>ClosedInterval</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L16-L41" target="_blank" rel="noreferrer">source</a></p>',10))]),i("details",q,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.Dimensions.Lookups.IntSelector",href:"#DimensionalData.Dimensions.Lookups.IntSelector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.IntSelector")],-1)),s[73]||(s[73]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[74]||(s[74]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IntSelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return a single <code>Int</code> index.</p><p>IntSelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L52-L62" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",z,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.Dimensions.Lookups.ArraySelector",href:"#DimensionalData.Dimensions.Lookups.ArraySelector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ArraySelector")],-1)),s[76]||(s[76]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[77]||(s[77]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ArraySelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return an <code>AbstractArray</code>.</p><p>ArraySelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L65-L75" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",P,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.Dimensions.Lookups.At",href:"#DimensionalData.Dimensions.Lookups.At"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.At")],-1)),s[79]||(s[79]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[80]||(s[80]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">At </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, rtol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that exactly matches the value on the passed-in dimensions, or throws an error. For ranges and arrays, every intermediate value must match an existing value - not just the end points.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between them will be selected.</p><p>Keyword <code>atol</code> is passed to <code>isapprox</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -93,7 +93,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L92-L119" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.Dimensions.Lookups.Near",href:"#DimensionalData.Dimensions.Lookups.Near"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Near")],-1)),s[82]||(s[82]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[83]||(s[83]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Near </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L92-L119" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.Dimensions.Lookups.Near",href:"#DimensionalData.Dimensions.Lookups.Near"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Near")],-1)),s[82]||(s[82]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[83]||(s[83]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Near </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that selects the nearest index to <code>x</code>.</p><p>With <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> this is simply the lookup values nearest to the <code>x</code>, however with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> it is the interval <em>center</em> nearest to <code>x</code>. This will be offset from the index value for <code>Start</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> locus.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between the nearsest value to each of them will be selected.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -102,7 +102,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">23</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L255-L282" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",R,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.Dimensions.Lookups.Between",href:"#DimensionalData.Dimensions.Lookups.Between"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Between")],-1)),s[85]||(s[85]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[86]||(s[86]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Between </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L255-L282" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",R,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.Dimensions.Lookups.Between",href:"#DimensionalData.Dimensions.Lookups.Between"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Between")],-1)),s[85]||(s[85]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[86]||(s[86]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Between </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Between</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Depreciated: use <code>a..b</code> instead of <code>Between(a, b)</code>. Other <code>Interval</code> objects from IntervalSets.jl, like \`OpenInterval(a, b) will also work, giving the correct open/closed boundaries.</p><p><code>Between</code> will e removed in future to avoid clashes with <code>DataFrames.Between</code>.</p><p>Selector that retrieve all indices located between 2 values, evaluated with <code>>=</code> for the lower value, and <code><</code> for the upper value. This means the same value will not be counted twice in 2 adjacent <code>Between</code> selections.</p><p>For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> the whole interval must be lie between the values. For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> the points must fall between the values. Different <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> types may give different results with the same input - this is the intended behaviour.</p><p><code>Between</code> for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> intervals is a little complicated. The interval is the distance between a value and the next (for <code>Start</code> locus) or previous (for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> locus) value.</p><p>For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, we take the mid point between two index values as the start and end of each interval. This may or may not make sense for the values in your index, so use <code>Between</code> with <code>Irregular</code> <code>Intervals(Center())</code> with caution.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -118,7 +118,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L545-L595" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",M,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.Dimensions.Lookups.Touches",href:"#DimensionalData.Dimensions.Lookups.Touches"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Touches")],-1)),s[88]||(s[88]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[89]||(s[89]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Touches </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L545-L595" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",M,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.Dimensions.Lookups.Touches",href:"#DimensionalData.Dimensions.Lookups.Touches"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Touches")],-1)),s[88]||(s[88]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[89]||(s[89]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Touches </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Touches</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that retrieves all indices touching the closed interval 2 values, for the maximum possible area that could interact with the supplied range.</p><p>This can be better than <code>..</code> when e.g. subsetting an area to rasterize, as you may wish to include pixels that just touch the area, rather than those that fall within it.</p><p>Touches is different to using closed intervals when the lookups also contain intervals - if any of the intervals touch, they are included. With <code>..</code> they are discarded unless the whole cell interval falls inside the selector interval.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -133,7 +133,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L820-L855" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",U,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.Lookups.Contains",href:"#DimensionalData.Dimensions.Lookups.Contains"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Contains")],-1)),s[91]||(s[91]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[92]||(s[92]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Contains </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L820-L855" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",U,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.Lookups.Contains",href:"#DimensionalData.Dimensions.Lookups.Contains"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Contains")],-1)),s[91]||(s[91]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[92]||(s[92]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Contains </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that selects the interval the value is contained by. If the interval is not present in the lookup, an error will be thrown.</p><p>Can only be used for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a>. For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> it falls back to using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>. <code>Contains</code> should not be confused with <code>Base.contains</code> - use <code>Where(contains(x))</code> to check for if values are contain in categorical values like strings.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between them will be selected.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData; </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DD </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -143,7 +143,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6.8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L357-L386" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",X,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.Lookups.Where",href:"#DimensionalData.Dimensions.Lookups.Where"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Where")],-1)),s[94]||(s[94]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[95]||(s[95]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Where </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L357-L386" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",X,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.Lookups.Where",href:"#DimensionalData.Dimensions.Lookups.Where"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Where")],-1)),s[94]||(s[94]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[95]||(s[95]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Where </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Where</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Function</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that filters a dimension lookup by any function that accepts a single value and returns a <code>Bool</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -159,7 +159,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">19</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">21</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered Irregular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└─────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 19</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 21</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1004-L1031" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",Y,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.Dimensions.Lookups.All",href:"#DimensionalData.Dimensions.Lookups.All"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.All")],-1)),s[97]||(s[97]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[98]||(s[98]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">All </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1004-L1031" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",Y,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.Dimensions.Lookups.All",href:"#DimensionalData.Dimensions.Lookups.All"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.All")],-1)),s[97]||(s[97]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[98]||(s[98]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">All </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">All</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Selector...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that combines the results of other selectors. The indices used will be the union of all result sorted in ascending order.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Unitful</span></span> <span class="line"></span> @@ -177,42 +177,42 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">91</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">96</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 19</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 57</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1045-L1074" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[178]||(s[178]=i("h2",{id:"Lookup-traits",tabindex:"-1"},[a("Lookup traits "),i("a",{class:"header-anchor",href:"#Lookup-traits","aria-label":'Permalink to "Lookup traits {#Lookup-traits}"'},"")],-1)),i("details",V,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.Dimensions.Lookups.LookupTrait",href:"#DimensionalData.Dimensions.Lookups.LookupTrait"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.LookupTrait")],-1)),s[100]||(s[100]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[101]||(s[101]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">LookupTrait</span></span></code></pre></div><p>Abstract supertype of all traits of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>.</p><p>These modify the behaviour of the lookup index.</p><p>The term "Trait" is used loosely - these may be fields of an object of traits hard-coded to specific types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p>',5))]),s[179]||(s[179]=i("h3",{id:"order",tabindex:"-1"},[a("Order "),i("a",{class:"header-anchor",href:"#order","aria-label":'Permalink to "Order"'},"")],-1)),i("details",W,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.Dimensions.Lookups.Order",href:"#DimensionalData.Dimensions.Lookups.Order"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Order")],-1)),s[103]||(s[103]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[104]||(s[104]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Order </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Traits for the order of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>. These determine how <code>searchsorted</code> finds values in the index, and how objects are plotted.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L14-L19" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",G,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.Dimensions.Lookups.Ordered",href:"#DimensionalData.Dimensions.Lookups.Ordered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Ordered")],-1)),s[106]||(s[106]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[107]||(s[107]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span></code></pre></div><p>Supertype for the order of an ordered <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, including <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L22-L27" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",K,[i("summary",null,[s[108]||(s[108]=i("a",{id:"DimensionalData.Dimensions.Lookups.ForwardOrdered",href:"#DimensionalData.Dimensions.Lookups.ForwardOrdered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ForwardOrdered")],-1)),s[109]||(s[109]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[110]||(s[110]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ForwardOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 57</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1045-L1074" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[178]||(s[178]=i("h2",{id:"Lookup-traits",tabindex:"-1"},[a("Lookup traits "),i("a",{class:"header-anchor",href:"#Lookup-traits","aria-label":'Permalink to "Lookup traits {#Lookup-traits}"'},"")],-1)),i("details",V,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.Dimensions.Lookups.LookupTrait",href:"#DimensionalData.Dimensions.Lookups.LookupTrait"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.LookupTrait")],-1)),s[100]||(s[100]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[101]||(s[101]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">LookupTrait</span></span></code></pre></div><p>Abstract supertype of all traits of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>.</p><p>These modify the behaviour of the lookup index.</p><p>The term "Trait" is used loosely - these may be fields of an object of traits hard-coded to specific types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p>',5))]),s[179]||(s[179]=i("h3",{id:"order",tabindex:"-1"},[a("Order "),i("a",{class:"header-anchor",href:"#order","aria-label":'Permalink to "Order"'},"")],-1)),i("details",W,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.Dimensions.Lookups.Order",href:"#DimensionalData.Dimensions.Lookups.Order"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Order")],-1)),s[103]||(s[103]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[104]||(s[104]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Order </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Traits for the order of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>. These determine how <code>searchsorted</code> finds values in the index, and how objects are plotted.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L14-L19" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",G,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.Dimensions.Lookups.Ordered",href:"#DimensionalData.Dimensions.Lookups.Ordered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Ordered")],-1)),s[106]||(s[106]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[107]||(s[107]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span></code></pre></div><p>Supertype for the order of an ordered <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, including <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L22-L27" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",K,[i("summary",null,[s[108]||(s[108]=i("a",{id:"DimensionalData.Dimensions.Lookups.ForwardOrdered",href:"#DimensionalData.Dimensions.Lookups.ForwardOrdered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ForwardOrdered")],-1)),s[109]||(s[109]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[110]||(s[110]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ForwardOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the normal forward order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L40-L46" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",$,[i("summary",null,[s[111]||(s[111]=i("a",{id:"DimensionalData.Dimensions.Lookups.ReverseOrdered",href:"#DimensionalData.Dimensions.Lookups.ReverseOrdered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ReverseOrdered")],-1)),s[112]||(s[112]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[113]||(s[113]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ReverseOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the normal forward order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L40-L46" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",$,[i("summary",null,[s[111]||(s[111]=i("a",{id:"DimensionalData.Dimensions.Lookups.ReverseOrdered",href:"#DimensionalData.Dimensions.Lookups.ReverseOrdered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ReverseOrdered")],-1)),s[112]||(s[112]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[113]||(s[113]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ReverseOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ReverseOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the reverse order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L49-L55" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",H,[i("summary",null,[s[114]||(s[114]=i("a",{id:"DimensionalData.Dimensions.Lookups.Unordered",href:"#DimensionalData.Dimensions.Lookups.Unordered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Unordered")],-1)),s[115]||(s[115]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[116]||(s[116]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ReverseOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the reverse order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L49-L55" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",H,[i("summary",null,[s[114]||(s[114]=i("a",{id:"DimensionalData.Dimensions.Lookups.Unordered",href:"#DimensionalData.Dimensions.Lookups.Unordered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Unordered")],-1)),s[115]||(s[115]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[116]||(s[116]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that <code>Lookup</code> is unordered.</p><p>This means the index cannot be searched with <code>searchsortedfirst</code> or similar optimised methods - instead it will use <code>findfirst</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L58-L67" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",J,[i("summary",null,[s[117]||(s[117]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoOrder",href:"#DimensionalData.Dimensions.Lookups.AutoOrder"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoOrder")],-1)),s[118]||(s[118]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[119]||(s[119]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoOrder </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that <code>Lookup</code> is unordered.</p><p>This means the index cannot be searched with <code>searchsortedfirst</code> or similar optimised methods - instead it will use <code>findfirst</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L58-L67" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",J,[i("summary",null,[s[117]||(s[117]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoOrder",href:"#DimensionalData.Dimensions.Lookups.AutoOrder"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoOrder")],-1)),s[118]||(s[118]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[119]||(s[119]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoOrder </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Specifies that the <code>Order</code> of a <code>Lookup</code> will be found automatically where possible.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L30-L37" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[180]||(s[180]=i("h3",{id:"span",tabindex:"-1"},[a("Span "),i("a",{class:"header-anchor",href:"#span","aria-label":'Permalink to "Span"'},"")],-1)),i("details",Q,[i("summary",null,[s[120]||(s[120]=i("a",{id:"DimensionalData.Dimensions.Lookups.Span",href:"#DimensionalData.Dimensions.Lookups.Span"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Span")],-1)),s[121]||(s[121]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[122]||(s[122]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Span </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Defines the type of span used in a <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> index. These are <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L194-L199" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",Z,[i("summary",null,[s[123]||(s[123]=i("a",{id:"DimensionalData.Dimensions.Lookups.Regular",href:"#DimensionalData.Dimensions.Lookups.Regular"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Regular")],-1)),s[124]||(s[124]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[125]||(s[125]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Regular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Specifies that the <code>Order</code> of a <code>Lookup</code> will be found automatically where possible.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L30-L37" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[180]||(s[180]=i("h3",{id:"span",tabindex:"-1"},[a("Span "),i("a",{class:"header-anchor",href:"#span","aria-label":'Permalink to "Span"'},"")],-1)),i("details",Q,[i("summary",null,[s[120]||(s[120]=i("a",{id:"DimensionalData.Dimensions.Lookups.Span",href:"#DimensionalData.Dimensions.Lookups.Span"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Span")],-1)),s[121]||(s[121]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[122]||(s[122]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Span </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Defines the type of span used in a <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> index. These are <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L194-L199" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",Z,[i("summary",null,[s[123]||(s[123]=i("a",{id:"DimensionalData.Dimensions.Lookups.Regular",href:"#DimensionalData.Dimensions.Lookups.Regular"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Regular")],-1)),s[124]||(s[124]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[125]||(s[125]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Regular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Regular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoStep</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have a fixed, regular step.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L221-L227" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",_,[i("summary",null,[s[126]||(s[126]=i("a",{id:"DimensionalData.Dimensions.Lookups.Irregular",href:"#DimensionalData.Dimensions.Lookups.Irregular"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Irregular")],-1)),s[127]||(s[127]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[128]||(s[128]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Irregular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Regular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoStep</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have a fixed, regular step.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L221-L227" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",_,[i("summary",null,[s[126]||(s[126]=i("a",{id:"DimensionalData.Dimensions.Lookups.Irregular",href:"#DimensionalData.Dimensions.Lookups.Irregular"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Irregular")],-1)),s[127]||(s[127]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[128]||(s[128]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Irregular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lowerbound, upperbound)</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have an <code>Irregular</code> step size. To enable bounds tracking and accurate selectors, the starting bounds are provided as a 2 tuple, or 2 arguments. <code>(nothing, nothing)</code> is acceptable input, the bounds will be guessed from the index, but may be inaccurate.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L238-L248" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ss,[i("summary",null,[s[129]||(s[129]=i("a",{id:"DimensionalData.Dimensions.Lookups.Explicit",href:"#DimensionalData.Dimensions.Lookups.Explicit"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Explicit")],-1)),s[130]||(s[130]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[131]||(s[131]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Explicit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractMatrix</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Intervals where the span is explicitly listed for every interval.</p><p>This uses a matrix where with length 2 columns for each index value, holding the lower and upper bounds for that specific index.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L260-L267" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",is,[i("summary",null,[s[132]||(s[132]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoSpan",href:"#DimensionalData.Dimensions.Lookups.AutoSpan"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoSpan")],-1)),s[133]||(s[133]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[134]||(s[134]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoSpan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lowerbound, upperbound)</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have an <code>Irregular</code> step size. To enable bounds tracking and accurate selectors, the starting bounds are provided as a 2 tuple, or 2 arguments. <code>(nothing, nothing)</code> is acceptable input, the bounds will be guessed from the index, but may be inaccurate.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L238-L248" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ss,[i("summary",null,[s[129]||(s[129]=i("a",{id:"DimensionalData.Dimensions.Lookups.Explicit",href:"#DimensionalData.Dimensions.Lookups.Explicit"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Explicit")],-1)),s[130]||(s[130]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[131]||(s[131]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Explicit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractMatrix</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Intervals where the span is explicitly listed for every interval.</p><p>This uses a matrix where with length 2 columns for each index value, holding the lower and upper bounds for that specific index.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L260-L267" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",is,[i("summary",null,[s[132]||(s[132]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoSpan",href:"#DimensionalData.Dimensions.Lookups.AutoSpan"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoSpan")],-1)),s[133]||(s[133]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[134]||(s[134]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoSpan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>The span will be guessed and replaced in <code>format</code> or <code>set</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L206-L212" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[181]||(s[181]=i("h3",{id:"sampling",tabindex:"-1"},[a("Sampling "),i("a",{class:"header-anchor",href:"#sampling","aria-label":'Permalink to "Sampling"'},"")],-1)),i("details",as,[i("summary",null,[s[135]||(s[135]=i("a",{id:"DimensionalData.Dimensions.Lookups.Sampling",href:"#DimensionalData.Dimensions.Lookups.Sampling"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Sampling")],-1)),s[136]||(s[136]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[137]||(s[137]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampling </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Indicates the sampling method used by the index: <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L148-L153" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",es,[i("summary",null,[s[138]||(s[138]=i("a",{id:"DimensionalData.Dimensions.Lookups.Points",href:"#DimensionalData.Dimensions.Lookups.Points"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Points")],-1)),s[139]||(s[139]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[140]||(s[140]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Points </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>The span will be guessed and replaced in <code>format</code> or <code>set</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L206-L212" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[181]||(s[181]=i("h3",{id:"sampling",tabindex:"-1"},[a("Sampling "),i("a",{class:"header-anchor",href:"#sampling","aria-label":'Permalink to "Sampling"'},"")],-1)),i("details",as,[i("summary",null,[s[135]||(s[135]=i("a",{id:"DimensionalData.Dimensions.Lookups.Sampling",href:"#DimensionalData.Dimensions.Lookups.Sampling"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Sampling")],-1)),s[136]||(s[136]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[137]||(s[137]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampling </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Indicates the sampling method used by the index: <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L148-L153" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",ns,[i("summary",null,[s[138]||(s[138]=i("a",{id:"DimensionalData.Dimensions.Lookups.Points",href:"#DimensionalData.Dimensions.Lookups.Points"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Points")],-1)),s[139]||(s[139]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[140]||(s[140]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Points </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> lookup where single samples at exact points.</p><p>These are always plotted at the center of array cells.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L162-L170" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",ns,[i("summary",null,[s[141]||(s[141]=i("a",{id:"DimensionalData.Dimensions.Lookups.Intervals",href:"#DimensionalData.Dimensions.Lookups.Intervals"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Intervals")],-1)),s[142]||(s[142]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[143]||(s[143]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Intervals </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> lookup where single samples at exact points.</p><p>These are always plotted at the center of array cells.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L162-L170" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",es,[i("summary",null,[s[141]||(s[141]=i("a",{id:"DimensionalData.Dimensions.Lookups.Intervals",href:"#DimensionalData.Dimensions.Lookups.Intervals"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Intervals")],-1)),s[142]||(s[142]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[143]||(s[143]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Intervals </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Position</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> specifying that sampled values are the mean (or similar) value over an <em>interval</em>, rather than at one specific point.</p><p>Intervals require a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> to define the location in the interval that the index values refer to.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L175-L185" target="_blank" rel="noreferrer">source</a></p>`,4))]),s[182]||(s[182]=i("h3",{id:"positions",tabindex:"-1"},[a("Positions "),i("a",{class:"header-anchor",href:"#positions","aria-label":'Permalink to "Positions"'},"")],-1)),i("details",ts,[i("summary",null,[s[144]||(s[144]=i("a",{id:"DimensionalData.Dimensions.Lookups.Position",href:"#DimensionalData.Dimensions.Lookups.Position"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Position")],-1)),s[145]||(s[145]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[146]||(s[146]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Position </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Abstract supertype of types that indicate the locus of index values where they represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p>These allow for values array cells to align with the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> of values in the lookup index.</p><p>This means they can be plotted with correct axis markers, and allows automatic conversions to between formats with different standards (such as NetCDF and GeoTiff).</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L74-L85" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",ls,[i("summary",null,[s[147]||(s[147]=i("a",{id:"DimensionalData.Dimensions.Lookups.Center",href:"#DimensionalData.Dimensions.Lookups.Center"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Center")],-1)),s[148]||(s[148]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[149]||(s[149]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Center </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Position</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> specifying that sampled values are the mean (or similar) value over an <em>interval</em>, rather than at one specific point.</p><p>Intervals require a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> to define the location in the interval that the index values refer to.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L175-L185" target="_blank" rel="noreferrer">source</a></p>`,4))]),s[182]||(s[182]=i("h3",{id:"positions",tabindex:"-1"},[a("Positions "),i("a",{class:"header-anchor",href:"#positions","aria-label":'Permalink to "Positions"'},"")],-1)),i("details",ts,[i("summary",null,[s[144]||(s[144]=i("a",{id:"DimensionalData.Dimensions.Lookups.Position",href:"#DimensionalData.Dimensions.Lookups.Position"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Position")],-1)),s[145]||(s[145]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[146]||(s[146]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Position </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Abstract supertype of types that indicate the locus of index values where they represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p>These allow for values array cells to align with the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> of values in the lookup index.</p><p>This means they can be plotted with correct axis markers, and allows automatic conversions to between formats with different standards (such as NetCDF and GeoTiff).</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L74-L85" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",ls,[i("summary",null,[s[147]||(s[147]=i("a",{id:"DimensionalData.Dimensions.Lookups.Center",href:"#DimensionalData.Dimensions.Lookups.Center"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Center")],-1)),s[148]||(s[148]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[149]||(s[149]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Center </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Center</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the center locus in an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L88-L94" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ps,[i("summary",null,[s[150]||(s[150]=i("a",{id:"DimensionalData.Dimensions.Lookups.Start",href:"#DimensionalData.Dimensions.Lookups.Start"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Start")],-1)),s[151]||(s[151]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[152]||(s[152]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Start </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Center</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the center locus in an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L88-L94" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ps,[i("summary",null,[s[150]||(s[150]=i("a",{id:"DimensionalData.Dimensions.Lookups.Start",href:"#DimensionalData.Dimensions.Lookups.Start"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Start")],-1)),s[151]||(s[151]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[152]||(s[152]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Start </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the start locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L97-L103" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",os,[i("summary",null,[s[153]||(s[153]=i("a",{id:"DimensionalData.Dimensions.Lookups.Begin",href:"#DimensionalData.Dimensions.Lookups.Begin"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Begin")],-1)),s[154]||(s[154]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[155]||(s[155]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Begin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the start locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L97-L103" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",os,[i("summary",null,[s[153]||(s[153]=i("a",{id:"DimensionalData.Dimensions.Lookups.Begin",href:"#DimensionalData.Dimensions.Lookups.Begin"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Begin")],-1)),s[154]||(s[154]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[155]||(s[155]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Begin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Begin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>begin</code> index of a <code>Dimension</code> axis, as regular <code>begin</code> will not work with named dimensions.</p><p>Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L106-L116" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",hs,[i("summary",null,[s[156]||(s[156]=i("a",{id:"DimensionalData.Dimensions.Lookups.End",href:"#DimensionalData.Dimensions.Lookups.End"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.End")],-1)),s[157]||(s[157]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[158]||(s[158]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">End </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Begin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>begin</code> index of a <code>Dimension</code> axis, as regular <code>begin</code> will not work with named dimensions.</p><p>Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L106-L116" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",hs,[i("summary",null,[s[156]||(s[156]=i("a",{id:"DimensionalData.Dimensions.Lookups.End",href:"#DimensionalData.Dimensions.Lookups.End"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.End")],-1)),s[157]||(s[157]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[158]||(s[158]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">End </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">End</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>end</code> index of a <code>Dimension</code> axis, as regular <code>end</code> will not work with named dimensions. Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p>Also used to specify lookup values correspond to the end locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L119-L131" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",ks,[i("summary",null,[s[159]||(s[159]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoPosition",href:"#DimensionalData.Dimensions.Lookups.AutoPosition"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoPosition")],-1)),s[160]||(s[160]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[161]||(s[161]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoPosition </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">End</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>end</code> index of a <code>Dimension</code> axis, as regular <code>end</code> will not work with named dimensions. Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p>Also used to specify lookup values correspond to the end locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L119-L131" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",ks,[i("summary",null,[s[159]||(s[159]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoPosition",href:"#DimensionalData.Dimensions.Lookups.AutoPosition"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoPosition")],-1)),s[160]||(s[160]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[161]||(s[161]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoPosition </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoPosition</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates a interval where the index locus is not yet known. This will be filled with a default value on object construction.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L134-L141" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[183]||(s[183]=i("h2",{id:"metadata",tabindex:"-1"},[a("Metadata "),i("a",{class:"header-anchor",href:"#metadata","aria-label":'Permalink to "Metadata"'},"")],-1)),i("details",rs,[i("summary",null,[s[162]||(s[162]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractMetadata",href:"#DimensionalData.Dimensions.Lookups.AbstractMetadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractMetadata")],-1)),s[163]||(s[163]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[164]||(s[164]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractMetadata{X,T}</span></span></code></pre></div><p>Abstract supertype for all metadata wrappers.</p><p>Metadata wrappers allow tracking the contents and origin of metadata. This can facilitate conversion between metadata types (for saving a file to a different format) or simply saving data back to the same file type with identical metadata.</p><p>Using a wrapper instead of <code>Dict</code> or <code>NamedTuple</code> also lets us pass metadata objects to <a href="/DimensionalData.jl/dev/object_modification#set"><code>set</code></a> without ambiguity about where to put them.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L2-L13" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",ds,[i("summary",null,[s[165]||(s[165]=i("a",{id:"DimensionalData.Dimensions.Lookups.Metadata",href:"#DimensionalData.Dimensions.Lookups.Metadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Metadata")],-1)),s[166]||(s[166]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[167]||(s[167]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Metadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoPosition</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates a interval where the index locus is not yet known. This will be filled with a default value on object construction.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L134-L141" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[183]||(s[183]=i("h2",{id:"metadata",tabindex:"-1"},[a("Metadata "),i("a",{class:"header-anchor",href:"#metadata","aria-label":'Permalink to "Metadata"'},"")],-1)),i("details",rs,[i("summary",null,[s[162]||(s[162]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractMetadata",href:"#DimensionalData.Dimensions.Lookups.AbstractMetadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractMetadata")],-1)),s[163]||(s[163]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[164]||(s[164]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractMetadata{X,T}</span></span></code></pre></div><p>Abstract supertype for all metadata wrappers.</p><p>Metadata wrappers allow tracking the contents and origin of metadata. This can facilitate conversion between metadata types (for saving a file to a different format) or simply saving data back to the same file type with identical metadata.</p><p>Using a wrapper instead of <code>Dict</code> or <code>NamedTuple</code> also lets us pass metadata objects to <a href="/DimensionalData.jl/dev/object_modification#set"><code>set</code></a> without ambiguity about where to put them.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L2-L13" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",ds,[i("summary",null,[s[165]||(s[165]=i("a",{id:"DimensionalData.Dimensions.Lookups.Metadata",href:"#DimensionalData.Dimensions.Lookups.Metadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Metadata")],-1)),s[166]||(s[166]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[167]||(s[167]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Metadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dict,NamedTuple}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{Dict}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{NamedTuple}</span></span></code></pre></div><p>General <a href="/DimensionalData.jl/dev/api/lookuparrays#Metadata"><code>Metadata</code></a> object. The <code>X</code> type parameter categorises the metadata for method dispatch, if required.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L31-L40" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",gs,[i("summary",null,[s[168]||(s[168]=i("a",{id:"DimensionalData.Dimensions.Lookups.NoMetadata",href:"#DimensionalData.Dimensions.Lookups.NoMetadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.NoMetadata")],-1)),s[169]||(s[169]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[170]||(s[170]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoMetadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{NamedTuple}</span></span></code></pre></div><p>General <a href="/DimensionalData.jl/dev/api/lookuparrays#Metadata"><code>Metadata</code></a> object. The <code>X</code> type parameter categorises the metadata for method dispatch, if required.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L31-L40" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",gs,[i("summary",null,[s[168]||(s[168]=i("a",{id:"DimensionalData.Dimensions.Lookups.NoMetadata",href:"#DimensionalData.Dimensions.Lookups.NoMetadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.NoMetadata")],-1)),s[169]||(s[169]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[170]||(s[170]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoMetadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates an object has no metadata. But unlike using <code>nothing</code>, <code>get</code>, <code>keys</code> and <code>haskey</code> will still work on it, <code>get</code> always returning the fallback argument. <code>keys</code> returns <code>()</code> while <code>haskey</code> always returns <code>false</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L67-L76" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",cs,[i("summary",null,[s[171]||(s[171]=i("a",{id:"DimensionalData.Dimensions.Lookups.units",href:"#DimensionalData.Dimensions.Lookups.units"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.units")],-1)),s[172]||(s[172]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[173]||(s[173]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates an object has no metadata. But unlike using <code>nothing</code>, <code>get</code>, <code>keys</code> and <code>haskey</code> will still work on it, <code>get</code> always returning the fallback argument. <code>keys</code> returns <code>()</code> while <code>haskey</code> always returns <code>false</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L67-L76" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",cs,[i("summary",null,[s[171]||(s[171]=i("a",{id:"DimensionalData.Dimensions.Lookups.units",href:"#DimensionalData.Dimensions.Lookups.units"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.units")],-1)),s[172]||(s[172]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[173]||(s[173]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Tuple) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span></code></pre></div><p>Get the units of an array or <code>Dimension</code>, or a tuple of of either.</p><p>Units do not have a set field, and may or may not be included in <code>metadata</code>. This method is to facilitate use in labels and plots when units are available, not a guarantee that they will be. If not available, <code>nothing</code> is returned.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L142-L156" target="_blank" rel="noreferrer">source</a></p>`,5))])])}const fs=l(k,[["render",us]]);export{bs as __pageData,fs as default}; +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span></code></pre></div><p>Get the units of an array or <code>Dimension</code>, or a tuple of of either.</p><p>Units do not have a set field, and may or may not be included in <code>metadata</code>. This method is to facilitate use in labels and plots when units are available, not a guarantee that they will be. If not available, <code>nothing</code> is returned.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L142-L156" target="_blank" rel="noreferrer">source</a></p>`,5))])])}const fs=l(k,[["render",us]]);export{bs as __pageData,fs as default}; diff --git a/dev/assets/api_lookuparrays.md.CMGRbv3b.lean.js b/dev/assets/api_lookuparrays.md.4gWyIReH.lean.js similarity index 94% rename from dev/assets/api_lookuparrays.md.CMGRbv3b.lean.js rename to dev/assets/api_lookuparrays.md.4gWyIReH.lean.js index 8bc2d3c87..3453e5208 100644 --- a/dev/assets/api_lookuparrays.md.CMGRbv3b.lean.js +++ b/dev/assets/api_lookuparrays.md.4gWyIReH.lean.js @@ -1,5 +1,5 @@ -import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framework.C6EFuEL4.js";const bs=JSON.parse('{"title":"Lookups","description":"","frontmatter":{},"headers":[],"relativePath":"api/lookuparrays.md","filePath":"api/lookuparrays.md","lastUpdated":null}'),k={name:"api/lookuparrays.md"},r={class:"jldocstring custom-block",open:""},d={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},ns={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""},ps={class:"jldocstring custom-block",open:""},os={class:"jldocstring custom-block",open:""},hs={class:"jldocstring custom-block",open:""},ks={class:"jldocstring custom-block",open:""},rs={class:"jldocstring custom-block",open:""},ds={class:"jldocstring custom-block",open:""},gs={class:"jldocstring custom-block",open:""},cs={class:"jldocstring custom-block",open:""};function us(ys,s,Es,ms,Ds,Fs){const e=o("Badge");return h(),p("div",null,[s[174]||(s[174]=i("h1",{id:"lookups",tabindex:"-1"},[a("Lookups "),i("a",{class:"header-anchor",href:"#lookups","aria-label":'Permalink to "Lookups"'},"")],-1)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.Dimensions.Lookups",href:"#DimensionalData.Dimensions.Lookups"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups")],-1)),s[1]||(s[1]=a()),n(e,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[2]||(s[2]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p>Module for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s used in DimensionalData.jl</p><p><code>Lookup</code> defines traits and <code>AbstractArray</code> wrappers that give specific behaviours for a lookup index when indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>.</p><p>For example, these allow tracking over array order so fast indexing works even when the array is reversed.</p><p>To load <code>Lookup</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/Lookups.jl#L1-L18" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",d,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.Dimensions.Lookups.Lookup",href:"#DimensionalData.Dimensions.Lookups.Lookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Lookup")],-1)),s[4]||(s[4]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookup</span></span></code></pre></div><p>Types defining the behaviour of a lookup index, how it is plotted and how <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a> work.</p><p>A <code>Lookup</code> may be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a> indicating that there are no lookup values, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> for ordered or unordered categories, or a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> index for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.Dimensions.Lookups.Aligned",href:"#DimensionalData.Dimensions.Lookups.Aligned"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Aligned")],-1)),s[7]||(s[7]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Aligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array axes.</p><p>This is by far the most common supertype for <code>Lookup</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L99-L106" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",c,[i("summary",null,[s[9]||(s[9]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractSampled",href:"#DimensionalData.Dimensions.Lookups.AbstractSampled"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractSampled")],-1)),s[10]||(s[10]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[11]||(s[11]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractSampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array, and is independent of other dimensions. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> is provided by this package.</p><p><code>AbstractSampled</code> must have <code>order</code>, <code>span</code> and <code>sampling</code> fields, or a <code>rebuild</code> method that accepts them as keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L169-L178" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",u,[i("summary",null,[s[12]||(s[12]=i("a",{id:"DimensionalData.Dimensions.Lookups.Sampled",href:"#DimensionalData.Dimensions.Lookups.Sampled"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Sampled")],-1)),s[13]||(s[13]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[14]||(s[14]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span> +import{_ as l,c as p,j as i,a,G as e,a4 as t,B as o,o as h}from"./chunks/framework.B8l2DGq3.js";const bs=JSON.parse('{"title":"Lookups","description":"","frontmatter":{},"headers":[],"relativePath":"api/lookuparrays.md","filePath":"api/lookuparrays.md","lastUpdated":null}'),k={name:"api/lookuparrays.md"},r={class:"jldocstring custom-block",open:""},d={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ns={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""},ps={class:"jldocstring custom-block",open:""},os={class:"jldocstring custom-block",open:""},hs={class:"jldocstring custom-block",open:""},ks={class:"jldocstring custom-block",open:""},rs={class:"jldocstring custom-block",open:""},ds={class:"jldocstring custom-block",open:""},gs={class:"jldocstring custom-block",open:""},cs={class:"jldocstring custom-block",open:""};function us(ys,s,Es,ms,Ds,Fs){const n=o("Badge");return h(),p("div",null,[s[174]||(s[174]=i("h1",{id:"lookups",tabindex:"-1"},[a("Lookups "),i("a",{class:"header-anchor",href:"#lookups","aria-label":'Permalink to "Lookups"'},"")],-1)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.Dimensions.Lookups",href:"#DimensionalData.Dimensions.Lookups"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups")],-1)),s[1]||(s[1]=a()),e(n,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[2]||(s[2]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p>Module for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s used in DimensionalData.jl</p><p><code>Lookup</code> defines traits and <code>AbstractArray</code> wrappers that give specific behaviours for a lookup index when indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>.</p><p>For example, these allow tracking over array order so fast indexing works even when the array is reversed.</p><p>To load <code>Lookup</code> types and methods into scope:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/Lookups.jl#L1-L18" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",d,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.Dimensions.Lookups.Lookup",href:"#DimensionalData.Dimensions.Lookups.Lookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Lookup")],-1)),s[4]||(s[4]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookup</span></span></code></pre></div><p>Types defining the behaviour of a lookup index, how it is plotted and how <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a> work.</p><p>A <code>Lookup</code> may be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a> indicating that there are no lookup values, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> for ordered or unordered categories, or a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> index for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.Dimensions.Lookups.Aligned",href:"#DimensionalData.Dimensions.Lookups.Aligned"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Aligned")],-1)),s[7]||(s[7]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Aligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array axes.</p><p>This is by far the most common supertype for <code>Lookup</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L99-L106" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",c,[i("summary",null,[s[9]||(s[9]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractSampled",href:"#DimensionalData.Dimensions.Lookups.AbstractSampled"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractSampled")],-1)),s[10]||(s[10]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[11]||(s[11]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractSampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the lookup is aligned with the array, and is independent of other dimensions. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> is provided by this package.</p><p><code>AbstractSampled</code> must have <code>order</code>, <code>span</code> and <code>sampling</code> fields, or a <code>rebuild</code> method that accepts them as keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L169-L178" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",u,[i("summary",null,[s[12]||(s[12]=i("a",{id:"DimensionalData.Dimensions.Lookups.Sampled",href:"#DimensionalData.Dimensions.Lookups.Sampled"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Sampled")],-1)),s[13]||(s[13]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[14]||(s[14]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampled </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractVector</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Sampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>A concrete implementation of the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AbstractSampled"><code>AbstractSampled</code></a>. It can be used to represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><code>Sampled</code> is capable of representing gridded data from a wide range of sources, allowing correct <code>bounds</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s for points or intervals of regular, irregular, forward and reverse lookups.</p><p>On <code>AbstractDimArray</code> construction, <code>Sampled</code> lookup is assigned for all lookups of <code>AbstractRange</code> not assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a>.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li></ul><p><strong>Example</strong></p><p>Create an array with <code>Interval</code> sampling, and <code>Regular</code> span for a vector with known spacing.</p><p>We set the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of the <code>Intervals</code> to <code>Start</code> specifying that the lookup values are for the locus at the start of each interval.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> @@ -20,9 +20,9 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 80</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 40</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L254-L303" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",y,[i("summary",null,[s[15]||(s[15]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractCyclic",href:"#DimensionalData.Dimensions.Lookups.AbstractCyclic"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractCyclic")],-1)),s[16]||(s[16]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[17]||(s[17]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span></code></pre></div><p>An abstract supertype for cyclic lookups.</p><p>These are <code>AbstractSampled</code> lookups that are cyclic for <code>Selectors</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L333-L339" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",E,[i("summary",null,[s[18]||(s[18]=i("a",{id:"DimensionalData.Dimensions.Lookups.Cyclic",href:"#DimensionalData.Dimensions.Lookups.Cyclic"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Cyclic")],-1)),s[19]||(s[19]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[20]||(s[20]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Cyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCyclic</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L254-L303" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",y,[i("summary",null,[s[15]||(s[15]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractCyclic",href:"#DimensionalData.Dimensions.Lookups.AbstractCyclic"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractCyclic")],-1)),s[16]||(s[16]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[17]||(s[17]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractSampled</span></span></code></pre></div><p>An abstract supertype for cyclic lookups.</p><p>These are <code>AbstractSampled</code> lookups that are cyclic for <code>Selectors</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L333-L339" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",E,[i("summary",null,[s[18]||(s[18]=i("a",{id:"DimensionalData.Dimensions.Lookups.Cyclic",href:"#DimensionalData.Dimensions.Lookups.Cyclic"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Cyclic")],-1)),s[19]||(s[19]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[20]||(s[20]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Cyclic </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCyclic</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Cyclic</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), cycle)</span></span></code></pre></div><p>A <code>Cyclic</code> lookup is similar to <code>Sampled</code> but out of range <code>Selectors</code> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a> will cycle the values to <code>typemin</code> or <code>typemax</code> over the length of <code>cycle</code>. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a> and <code>..</code> work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>.</p><p>This is useful when we are using mean annual datasets over a real time-span, or for wrapping longitudes so that <code>-360</code> and <code>360</code> are the same.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li><li><p><code>cycle</code>: the length of the cycle. This does not have to exactly match the data, the <code>step</code> size is <code>Week(1)</code> the cycle can be <code>Years(1)</code>.</p></li></ul><p><strong>Notes</strong></p><ol><li><p>If you use dates and e.g. cycle over a <code>Year</code>, every year will have the number and spacing of <code>Week</code>s and <code>Day</code>s as the cycle year. Using <code>At</code> may not be reliable in terms of exact dates, as it will be applied to the specified date plus or minus <code>n</code> years.</p></li><li><p>Indexing into a <code>Cycled</code> with any <code>AbstractArray</code> or <code>AbstractRange</code> will return a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as the full cycle is likely no longer available.</p></li><li><p><code>..</code> or <code>Between</code> selectors do not work in a cycled way: they work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>. This may change in future to return cycled values, but there are problems with this, such as leap years breaking correct date cycling of a single year. If you actually need this behaviour, please make a GitHub issue.</p></li></ol><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L386-L415" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",m,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractCategorical",href:"#DimensionalData.Dimensions.Lookups.AbstractCategorical"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractCategorical")],-1)),s[22]||(s[22]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[23]||(s[23]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCategorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the values are categories.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> is the provided concrete implementation. But this can easily be extended, all methods are defined for <code>AbstractCategorical</code>.</p><p>All <code>AbstractCategorical</code> must provide a <code>rebuild</code> method with <code>data</code>, <code>order</code> and <code>metadata</code> keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L451-L461" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",D,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.Lookups.Categorical",href:"#DimensionalData.Dimensions.Lookups.Categorical"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Categorical")],-1)),s[25]||(s[25]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[26]||(s[26]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCategorical</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Cyclic</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), span</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), sampling</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), cycle)</span></span></code></pre></div><p>A <code>Cyclic</code> lookup is similar to <code>Sampled</code> but out of range <code>Selectors</code> <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a> will cycle the values to <code>typemin</code> or <code>typemax</code> over the length of <code>cycle</code>. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a> and <code>..</code> work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>.</p><p>This is useful when we are using mean annual datasets over a real time-span, or for wrapping longitudes so that <code>-360</code> and <code>360</code> are the same.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> of lookup values, matching the length of the curresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a>. These can be provided explicitly if they are known and performance is important.</p></li><li><p><code>span</code>: indicates the size of intervals or distance between points, and will be set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> for <code>AbstractRange</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> for <code>AbstractArray</code>, unless assigned manually.</p></li><li><p><code>sampling</code>: is assigned to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a>, unless set to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> manually. Using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> will change the behaviour of <code>bounds</code> and <code>Selectors</code>s to take account for the full size of the interval, rather than the point alone.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li><li><p><code>cycle</code>: the length of the cycle. This does not have to exactly match the data, the <code>step</code> size is <code>Week(1)</code> the cycle can be <code>Years(1)</code>.</p></li></ul><p><strong>Notes</strong></p><ol><li><p>If you use dates and e.g. cycle over a <code>Year</code>, every year will have the number and spacing of <code>Week</code>s and <code>Day</code>s as the cycle year. Using <code>At</code> may not be reliable in terms of exact dates, as it will be applied to the specified date plus or minus <code>n</code> years.</p></li><li><p>Indexing into a <code>Cycled</code> with any <code>AbstractArray</code> or <code>AbstractRange</code> will return a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a> as the full cycle is likely no longer available.</p></li><li><p><code>..</code> or <code>Between</code> selectors do not work in a cycled way: they work as for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Sampled"><code>Sampled</code></a>. This may change in future to return cycled values, but there are problems with this, such as leap years breaking correct date cycling of a single year. If you actually need this behaviour, please make a GitHub issue.</p></li></ol><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L386-L415" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",m,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractCategorical",href:"#DimensionalData.Dimensions.Lookups.AbstractCategorical"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractCategorical")],-1)),s[22]||(s[22]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[23]||(s[23]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractCategorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Aligned</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>s where the values are categories.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> is the provided concrete implementation. But this can easily be extended, all methods are defined for <code>AbstractCategorical</code>.</p><p>All <code>AbstractCategorical</code> must provide a <code>rebuild</code> method with <code>data</code>, <code>order</code> and <code>metadata</code> keyword arguments.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L451-L461" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",D,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.Lookups.Categorical",href:"#DimensionalData.Dimensions.Lookups.Categorical"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Categorical")],-1)),s[25]||(s[25]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[26]||(s[26]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractCategorical</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(o</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Categorical</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the values are categories.</p><p>This will be automatically assigned if the lookup contains <code>AbstractString</code>, <code>Symbol</code> or <code>Char</code>. Otherwise it can be assigned manually.</p><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> will be determined automatically where possible.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractVector</code> matching the length of the corresponding array axis.</p></li><li><p><code>order</code>: <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>) indicating the order of the lookup, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.AutoOrder"><code>AutoOrder</code></a> by default, detected from the order of <code>data</code> to be <code>ForwardOrdered</code>, <code>ReverseOrdered</code> or <code>Unordered</code>. Can be provided if this is known and performance is important.</p></li><li><p><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> wrapper that holds any metadata object adding more information about the array axis - useful for extending DimensionalData for specific contexts, like geospatial data in Rasters.jl. By default it is <code>NoMetadata()</code>.</p></li></ul><p><strong>Example</strong></p><p>Create an array with [<code>Interval</code>] sampling.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -34,7 +34,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{String} [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"one"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"two"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"three"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] Unordered,</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Symbol} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L474-L515" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",F,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Lookups.Unaligned",href:"#DimensionalData.Dimensions.Lookups.Unaligned"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Unaligned")],-1)),s[28]||(s[28]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[29]||(s[29]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unaligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the lookup is not aligned to the grid.</p><p>Indexing an <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s must provide all other <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L536-L543" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",C,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.Lookups.Transformed",href:"#DimensionalData.Dimensions.Lookups.Transformed"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Transformed")],-1)),s[31]||(s[31]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Transformed </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Unaligned</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Categorical{Symbol} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L474-L515" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",F,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Lookups.Unaligned",href:"#DimensionalData.Dimensions.Lookups.Unaligned"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Unaligned")],-1)),s[28]||(s[28]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[29]||(s[29]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unaligned </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> where the lookup is not aligned to the grid.</p><p>Indexing an <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s must provide all other <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unaligned"><code>Unaligned</code></a> dimensions.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L536-L543" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",C,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.Lookups.Transformed",href:"#DimensionalData.Dimensions.Lookups.Transformed"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Transformed")],-1)),s[31]||(s[31]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Transformed </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Unaligned</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Transformed</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that uses an affine transformation to convert dimensions from <code>dims(lookup)</code> to <code>dims(array)</code>. This can be useful when the dimensions are e.g. rotated from a more commonly used axis.</p><p>Any function can be used to do the transformation, but transformations from CoordinateTransformations.jl may be useful.</p><p><strong>Arguments</strong></p><ul><li><p><code>f</code>: transformation function</p></li><li><p><code>dim</code>: a dimension to transform to.</p></li></ul><p><strong>Keyword Arguments</strong></p><ul><li><code>metadata</code>:</li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups, CoordinateTransformations</span></span> <span class="line"></span> @@ -47,9 +47,9 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">9</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L546-L583" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.MergedLookup",href:"#DimensionalData.Dimensions.MergedLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.MergedLookup")],-1)),s[34]||(s[34]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">MergedLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">9</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L546-L583" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.MergedLookup",href:"#DimensionalData.Dimensions.MergedLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.MergedLookup")],-1)),s[34]||(s[34]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">MergedLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">MergedLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims; [metadata])</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that holds multiple combined dimensions.</p><p><code>MergedLookup</code> can be indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <code>At</code>, <code>Between</code>, and <code>Where</code> although <code>Near</code> has undefined meaning.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: A <code>Vector</code> of <code>Tuple</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> indicating the dimensions in the tuples in <code>data</code>.</p></li></ul><p><strong>Keywords</strong></p><ul><li><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> object to attach dimension metadata.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/merged.jl#L1-L20" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",f,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.Lookups.NoLookup",href:"#DimensionalData.Dimensions.Lookups.NoLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.NoLookup")],-1)),s[37]||(s[37]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[38]||(s[38]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">MergedLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims; [metadata])</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that holds multiple combined dimensions.</p><p><code>MergedLookup</code> can be indexed with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s like <code>At</code>, <code>Between</code>, and <code>Where</code> although <code>Near</code> has undefined meaning.</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: A <code>Vector</code> of <code>Tuple</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> indicating the dimensions in the tuples in <code>data</code>.</p></li></ul><p><strong>Keywords</strong></p><ul><li><code>metadata</code>: a <code>Dict</code> or <code>Metadata</code> object to attach dimension metadata.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/merged.jl#L1-L20" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",f,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.Lookups.NoLookup",href:"#DimensionalData.Dimensions.Lookups.NoLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.NoLookup")],-1)),s[37]||(s[37]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[38]||(s[38]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>A <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> that is identical to the array axis. <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s can't be used on this lookup.</p><p><strong>Example</strong></p><p>Defining a <code>DimArray</code> without passing lookup values to the dimensions, it will be assigned <code>NoLookup</code>:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -64,26 +64,26 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup, NoLookup</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L119-L154" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",v,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoLookup",href:"#DimensionalData.Dimensions.Lookups.AutoLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoLookup")],-1)),s[40]||(s[40]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[41]||(s[41]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoLookup, NoLookup</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L119-L154" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",v,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoLookup",href:"#DimensionalData.Dimensions.Lookups.AutoLookup"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoLookup")],-1)),s[40]||(s[40]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[41]||(s[41]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoLookup </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Lookup</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(values</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Automatic <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, the default lookup. It will be converted automatically to another <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> when it is possible to detect it from the lookup values.</p><p>Keywords will be used in the detected <code>Lookup</code> constructor.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_arrays.jl#L66-L76" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",j,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoValues",href:"#DimensionalData.Dimensions.Lookups.AutoValues"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoValues")],-1)),s[43]||(s[43]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[44]||(s[44]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoValues</span></span></code></pre></div><p>Detect <code>Lookup</code> values from the context. This is used in <code>NoLookup</code> to simply use the array axis as the index when the array is constructed, and in <code>set</code> to change the <code>Lookup</code> type without changing the index values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L278-L284" target="_blank" rel="noreferrer">source</a></p>',3))]),s[175]||(s[175]=i("p",null,[a("The generic value getter "),i("code",null,"val")],-1)),i("details",B,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.Dimensions.Lookups.val",href:"#DimensionalData.Dimensions.Lookups.val"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.val")],-1)),s[46]||(s[46]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[47]||(s[47]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Return the contained value of a wrapper object.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>Objects that don't define a <code>val</code> method are returned unaltered.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L79-L88" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[176]||(s[176]=i("p",null,"Lookup methods:",-1)),i("details",L,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.Dimensions.Lookups.bounds",href:"#DimensionalData.Dimensions.Lookups.bounds"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.bounds")],-1)),s[49]||(s[49]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[50]||(s[50]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoLookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(values</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoValues</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(); kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Automatic <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, the default lookup. It will be converted automatically to another <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> when it is possible to detect it from the lookup values.</p><p>Keywords will be used in the detected <code>Lookup</code> constructor.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_arrays.jl#L66-L76" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",j,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoValues",href:"#DimensionalData.Dimensions.Lookups.AutoValues"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoValues")],-1)),s[43]||(s[43]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[44]||(s[44]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoValues</span></span></code></pre></div><p>Detect <code>Lookup</code> values from the context. This is used in <code>NoLookup</code> to simply use the array axis as the index when the array is constructed, and in <code>set</code> to change the <code>Lookup</code> type without changing the index values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L278-L284" target="_blank" rel="noreferrer">source</a></p>',3))]),s[175]||(s[175]=i("p",null,[a("The generic value getter "),i("code",null,"val")],-1)),i("details",B,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.Dimensions.Lookups.val",href:"#DimensionalData.Dimensions.Lookups.val"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.val")],-1)),s[46]||(s[46]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[47]||(s[47]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Return the contained value of a wrapper object.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>Objects that don't define a <code>val</code> method are returned unaltered.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L79-L88" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[176]||(s[176]=i("p",null,"Lookup methods:",-1)),i("details",L,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.Dimensions.Lookups.bounds",href:"#DimensionalData.Dimensions.Lookups.bounds"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.bounds")],-1)),s[49]||(s[49]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[50]||(s[50]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Tuple{T,T}}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span></code></pre></div><p>Return the bounds of all dimensions of an object, of a specific dimension, or of a tuple of dimensions.</p><p>If bounds are not known, one or both values may be <code>nothing</code>.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L173-L185" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",A,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.Dimensions.Lookups.hasselection",href:"#DimensionalData.Dimensions.Lookups.hasselection"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.hasselection")],-1)),s[52]||(s[52]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[53]||(s[53]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selector) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if indexing into x with <code>selectors</code> can be performed, where x is some object with a <code>dims</code> method, and <code>selectors</code> is a <code>Selector</code> or <code>Dimension</code> or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L240-L247" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.Dimensions.Lookups.sampling",href:"#DimensionalData.Dimensions.Lookups.sampling"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.sampling")],-1)),s[55]||(s[55]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[56]||(s[56]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bounds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{T,T}</span></span></code></pre></div><p>Return the bounds of all dimensions of an object, of a specific dimension, or of a tuple of dimensions.</p><p>If bounds are not known, one or both values may be <code>nothing</code>.</p><p><code>dims</code> can be a <code>Dimension</code>, a dimension type, or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L173-L185" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",A,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.Dimensions.Lookups.hasselection",href:"#DimensionalData.Dimensions.Lookups.hasselection"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.hasselection")],-1)),s[52]||(s[52]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[53]||(s[53]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selector) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasselection</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if indexing into x with <code>selectors</code> can be performed, where x is some object with a <code>dims</code> method, and <code>selectors</code> is a <code>Selector</code> or <code>Dimension</code> or a tuple of either.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L240-L247" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.Dimensions.Lookups.sampling",href:"#DimensionalData.Dimensions.Lookups.sampling"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.sampling")],-1)),s[55]||(s[55]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[56]||(s[56]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Sampling}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Union{Dimension,Lookup}) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L201-L211" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",T,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.Dimensions.Lookups.span",href:"#DimensionalData.Dimensions.Lookups.span"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.span")],-1)),s[58]||(s[58]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[59]||(s[59]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">sampling</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Union{Dimension,Lookup}) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Sampling</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L201-L211" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",T,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.Dimensions.Lookups.span",href:"#DimensionalData.Dimensions.Lookups.span"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.span")],-1)),s[58]||(s[58]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[59]||(s[59]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Span,N}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Span"><code>Span</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L214-L224" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",w,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.Dimensions.Lookups.order",href:"#DimensionalData.Dimensions.Lookups.order"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.order")],-1)),s[61]||(s[61]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[62]||(s[62]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">span</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Span</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#Span"><code>Span</code></a> for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L214-L224" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",w,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.Dimensions.Lookups.order",href:"#DimensionalData.Dimensions.Lookups.order"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.order")],-1)),s[61]||(s[61]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[62]||(s[62]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Order</span></span></code></pre></div><p>Return the <code>Ordering</code> of the dimension lookup for each dimension: <code>ForwardOrdered</code>, <code>ReverseOrdered</code>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a></p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L188-L198" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",S,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DimensionalData.Dimensions.Lookups.locus",href:"#DimensionalData.Dimensions.Lookups.locus"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.locus")],-1)),s[64]||(s[64]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Order</span></span></code></pre></div><p>Return the <code>Ordering</code> of the dimension lookup for each dimension: <code>ForwardOrdered</code>, <code>ReverseOrdered</code>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Unordered"><code>Unordered</code></a></p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L188-L198" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",S,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DimensionalData.Dimensions.Lookups.locus",href:"#DimensionalData.Dimensions.Lookups.locus"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.locus")],-1)),s[64]||(s[64]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Locus,N}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Position"><code>Position</code></a> of lookup values for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L227-L237" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",O,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.Dimensions.Lookups.shiftlocus",href:"#DimensionalData.Dimensions.Lookups.shiftlocus"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.shiftlocus")],-1)),s[67]||(s[67]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[68]||(s[68]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">shiftlocus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x)</span></span></code></pre></div><p>Shift the values of <code>x</code> from the current locus to the new locus.</p><p>We only shift <code>Sampled</code>, <code>Regular</code> or <code>Explicit</code>, <code>Intervals</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/utils.jl#L1-L7" target="_blank" rel="noreferrer">source</a></p>',4))]),s[177]||(s[177]=i("h2",{id:"selectors",tabindex:"-1"},[a("Selectors "),i("a",{class:"header-anchor",href:"#selectors","aria-label":'Permalink to "Selectors"'},"")],-1)),i("details",I,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Dimensions.Lookups.Selector",href:"#DimensionalData.Dimensions.Lookups.Selector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Selector")],-1)),s[70]||(s[70]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[71]||(s[71]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Selector</span></span></code></pre></div><p>Abstract supertype for all selectors.</p><p>Selectors are wrappers that indicate that passed values are not the array indices, but values to be selected from the dimension lookup, such as <code>DateTime</code> objects for a <code>Ti</code> dimension.</p><p>Selectors provided in DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li></ul><p>Note: Selectors can be modified using:</p><ul><li><code>Not</code>: as in <code>Not(At(x))</code></li></ul><p>And IntervalSets.jl <code>Interval</code> can be used instead of <code>Between</code></p><ul><li><p><code>..</code></p></li><li><p><code>Interval</code></p></li><li><p><code>OpenInterval</code></p></li><li><p><code>ClosedInterval</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L16-L41" target="_blank" rel="noreferrer">source</a></p>',10))]),i("details",q,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.Dimensions.Lookups.IntSelector",href:"#DimensionalData.Dimensions.Lookups.IntSelector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.IntSelector")],-1)),s[73]||(s[73]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[74]||(s[74]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IntSelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return a single <code>Int</code> index.</p><p>IntSelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L52-L62" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",z,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.Dimensions.Lookups.ArraySelector",href:"#DimensionalData.Dimensions.Lookups.ArraySelector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ArraySelector")],-1)),s[76]||(s[76]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[77]||(s[77]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ArraySelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return an <code>AbstractArray</code>.</p><p>ArraySelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L65-L75" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",P,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.Dimensions.Lookups.At",href:"#DimensionalData.Dimensions.Lookups.At"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.At")],-1)),s[79]||(s[79]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[80]||(s[80]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">At </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dimension,Lookup}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Locus</span></span></code></pre></div><p>Return the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Position"><code>Position</code></a> of lookup values for each dimension.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L227-L237" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",O,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.Dimensions.Lookups.shiftlocus",href:"#DimensionalData.Dimensions.Lookups.shiftlocus"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.shiftlocus")],-1)),s[67]||(s[67]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[68]||(s[68]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">shiftlocus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Locus</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x)</span></span></code></pre></div><p>Shift the values of <code>x</code> from the current locus to the new locus.</p><p>We only shift <code>Sampled</code>, <code>Regular</code> or <code>Explicit</code>, <code>Intervals</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/utils.jl#L1-L7" target="_blank" rel="noreferrer">source</a></p>',4))]),s[177]||(s[177]=i("h2",{id:"selectors",tabindex:"-1"},[a("Selectors "),i("a",{class:"header-anchor",href:"#selectors","aria-label":'Permalink to "Selectors"'},"")],-1)),i("details",I,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Dimensions.Lookups.Selector",href:"#DimensionalData.Dimensions.Lookups.Selector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Selector")],-1)),s[70]||(s[70]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[71]||(s[71]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Selector</span></span></code></pre></div><p>Abstract supertype for all selectors.</p><p>Selectors are wrappers that indicate that passed values are not the array indices, but values to be selected from the dimension lookup, such as <code>DateTime</code> objects for a <code>Ti</code> dimension.</p><p>Selectors provided in DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li></ul><p>Note: Selectors can be modified using:</p><ul><li><code>Not</code>: as in <code>Not(At(x))</code></li></ul><p>And IntervalSets.jl <code>Interval</code> can be used instead of <code>Between</code></p><ul><li><p><code>..</code></p></li><li><p><code>Interval</code></p></li><li><p><code>OpenInterval</code></p></li><li><p><code>ClosedInterval</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L16-L41" target="_blank" rel="noreferrer">source</a></p>',10))]),i("details",q,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.Dimensions.Lookups.IntSelector",href:"#DimensionalData.Dimensions.Lookups.IntSelector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.IntSelector")],-1)),s[73]||(s[73]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[74]||(s[74]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">IntSelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return a single <code>Int</code> index.</p><p>IntSelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Contains"><code>Contains</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Near"><code>Near</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L52-L62" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",z,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.Dimensions.Lookups.ArraySelector",href:"#DimensionalData.Dimensions.Lookups.ArraySelector"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ArraySelector")],-1)),s[76]||(s[76]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[77]||(s[77]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ArraySelector </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span></code></pre></div><p>Abstract supertype for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s that return an <code>AbstractArray</code>.</p><p>ArraySelectors provided by DimensionalData are:</p><ul><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Between"><code>Between</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Touches"><code>Touches</code></a></p></li><li><p><a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Where"><code>Where</code></a></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L65-L75" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",P,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.Dimensions.Lookups.At",href:"#DimensionalData.Dimensions.Lookups.At"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.At")],-1)),s[79]||(s[79]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[80]||(s[80]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">At </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, rtol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that exactly matches the value on the passed-in dimensions, or throws an error. For ranges and arrays, every intermediate value must match an existing value - not just the end points.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between them will be selected.</p><p>Keyword <code>atol</code> is passed to <code>isapprox</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -93,7 +93,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L92-L119" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.Dimensions.Lookups.Near",href:"#DimensionalData.Dimensions.Lookups.Near"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Near")],-1)),s[82]||(s[82]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[83]||(s[83]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Near </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L92-L119" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.Dimensions.Lookups.Near",href:"#DimensionalData.Dimensions.Lookups.Near"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Near")],-1)),s[82]||(s[82]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[83]||(s[83]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Near </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that selects the nearest index to <code>x</code>.</p><p>With <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> this is simply the lookup values nearest to the <code>x</code>, however with <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> it is the interval <em>center</em> nearest to <code>x</code>. This will be offset from the index value for <code>Start</code> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> locus.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between the nearsest value to each of them will be selected.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -102,7 +102,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">23</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Near</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L255-L282" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",R,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.Dimensions.Lookups.Between",href:"#DimensionalData.Dimensions.Lookups.Between"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Between")],-1)),s[85]||(s[85]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[86]||(s[86]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Between </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L255-L282" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",R,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.Dimensions.Lookups.Between",href:"#DimensionalData.Dimensions.Lookups.Between"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Between")],-1)),s[85]||(s[85]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[86]||(s[86]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Between </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Between</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Depreciated: use <code>a..b</code> instead of <code>Between(a, b)</code>. Other <code>Interval</code> objects from IntervalSets.jl, like \`OpenInterval(a, b) will also work, giving the correct open/closed boundaries.</p><p><code>Between</code> will e removed in future to avoid clashes with <code>DataFrames.Between</code>.</p><p>Selector that retrieve all indices located between 2 values, evaluated with <code>>=</code> for the lower value, and <code><</code> for the upper value. This means the same value will not be counted twice in 2 adjacent <code>Between</code> selections.</p><p>For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> the whole interval must be lie between the values. For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> the points must fall between the values. Different <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> types may give different results with the same input - this is the intended behaviour.</p><p><code>Between</code> for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a> intervals is a little complicated. The interval is the distance between a value and the next (for <code>Start</code> locus) or previous (for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> locus) value.</p><p>For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, we take the mid point between two index values as the start and end of each interval. This may or may not make sense for the values in your index, so use <code>Between</code> with <code>Irregular</code> <code>Intervals(Center())</code> with caution.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -118,7 +118,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L545-L595" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",M,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.Dimensions.Lookups.Touches",href:"#DimensionalData.Dimensions.Lookups.Touches"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Touches")],-1)),s[88]||(s[88]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[89]||(s[89]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Touches </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L545-L595" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",M,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.Dimensions.Lookups.Touches",href:"#DimensionalData.Dimensions.Lookups.Touches"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Touches")],-1)),s[88]||(s[88]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[89]||(s[89]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Touches </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Touches</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that retrieves all indices touching the closed interval 2 values, for the maximum possible area that could interact with the supplied range.</p><p>This can be better than <code>..</code> when e.g. subsetting an area to rasterize, as you may wish to include pixels that just touch the area, rather than those that fall within it.</p><p>Touches is different to using closed intervals when the lookups also contain intervals - if any of the intervals touch, they are included. With <code>..</code> they are discarded unless the whole cell interval falls inside the selector interval.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -133,7 +133,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ForwardOrdered Regular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L820-L855" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",U,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.Lookups.Contains",href:"#DimensionalData.Dimensions.Lookups.Contains"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Contains")],-1)),s[91]||(s[91]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[92]||(s[92]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Contains </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L820-L855" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",U,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.Lookups.Contains",href:"#DimensionalData.Dimensions.Lookups.Contains"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Contains")],-1)),s[91]||(s[91]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[92]||(s[92]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Contains </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> IntSelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(a, b)</span></span></code></pre></div><p>Selector that selects the interval the value is contained by. If the interval is not present in the lookup, an error will be thrown.</p><p>Can only be used for <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a>. For <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Categorical"><code>Categorical</code></a> it falls back to using <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.At"><code>At</code></a>. <code>Contains</code> should not be confused with <code>Base.contains</code> - use <code>Where(contains(x))</code> to check for if values are contain in categorical values like strings.</p><p><code>x</code> can be any value to select a single index, or a <code>Vector</code> of values to select vector of indices. If two values <code>a</code> and <code>b</code> are used, the range between them will be selected.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData; </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DD </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -143,7 +143,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Contains</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6.8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L357-L386" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",X,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.Lookups.Where",href:"#DimensionalData.Dimensions.Lookups.Where"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Where")],-1)),s[94]||(s[94]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[95]||(s[95]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Where </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L357-L386" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",X,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.Lookups.Where",href:"#DimensionalData.Dimensions.Lookups.Where"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Where")],-1)),s[94]||(s[94]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[95]||(s[95]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Where </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ArraySelector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Where</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Function</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that filters a dimension lookup by any function that accepts a single value and returns a <code>Bool</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -159,7 +159,7 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y Sampled{Int64} [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">19</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">21</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] ForwardOrdered Irregular Points</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└─────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 19</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 21</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1004-L1031" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",Y,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.Dimensions.Lookups.All",href:"#DimensionalData.Dimensions.Lookups.All"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.All")],-1)),s[97]||(s[97]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[98]||(s[98]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">All </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1004-L1031" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",Y,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.Dimensions.Lookups.All",href:"#DimensionalData.Dimensions.Lookups.All"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.All")],-1)),s[97]||(s[97]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[98]||(s[98]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">All </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Selector</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">All</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(selectors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Selector...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Selector that combines the results of other selectors. The indices used will be the union of all result sorted in ascending order.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Unitful</span></span> <span class="line"></span> @@ -177,42 +177,42 @@ import{_ as l,c as p,j as i,a,G as n,a4 as t,B as o,o as h}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">6</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">91</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">96</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 19</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 57</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/selector.jl#L1045-L1074" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[178]||(s[178]=i("h2",{id:"Lookup-traits",tabindex:"-1"},[a("Lookup traits "),i("a",{class:"header-anchor",href:"#Lookup-traits","aria-label":'Permalink to "Lookup traits {#Lookup-traits}"'},"")],-1)),i("details",V,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.Dimensions.Lookups.LookupTrait",href:"#DimensionalData.Dimensions.Lookups.LookupTrait"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.LookupTrait")],-1)),s[100]||(s[100]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[101]||(s[101]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">LookupTrait</span></span></code></pre></div><p>Abstract supertype of all traits of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>.</p><p>These modify the behaviour of the lookup index.</p><p>The term "Trait" is used loosely - these may be fields of an object of traits hard-coded to specific types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p>',5))]),s[179]||(s[179]=i("h3",{id:"order",tabindex:"-1"},[a("Order "),i("a",{class:"header-anchor",href:"#order","aria-label":'Permalink to "Order"'},"")],-1)),i("details",W,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.Dimensions.Lookups.Order",href:"#DimensionalData.Dimensions.Lookups.Order"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Order")],-1)),s[103]||(s[103]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[104]||(s[104]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Order </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Traits for the order of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>. These determine how <code>searchsorted</code> finds values in the index, and how objects are plotted.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L14-L19" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",G,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.Dimensions.Lookups.Ordered",href:"#DimensionalData.Dimensions.Lookups.Ordered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Ordered")],-1)),s[106]||(s[106]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[107]||(s[107]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span></code></pre></div><p>Supertype for the order of an ordered <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, including <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L22-L27" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",K,[i("summary",null,[s[108]||(s[108]=i("a",{id:"DimensionalData.Dimensions.Lookups.ForwardOrdered",href:"#DimensionalData.Dimensions.Lookups.ForwardOrdered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ForwardOrdered")],-1)),s[109]||(s[109]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[110]||(s[110]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ForwardOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 57</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 60</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/selector.jl#L1045-L1074" target="_blank" rel="noreferrer">source</a></p>`,5))]),s[178]||(s[178]=i("h2",{id:"Lookup-traits",tabindex:"-1"},[a("Lookup traits "),i("a",{class:"header-anchor",href:"#Lookup-traits","aria-label":'Permalink to "Lookup traits {#Lookup-traits}"'},"")],-1)),i("details",V,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.Dimensions.Lookups.LookupTrait",href:"#DimensionalData.Dimensions.Lookups.LookupTrait"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.LookupTrait")],-1)),s[100]||(s[100]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[101]||(s[101]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">LookupTrait</span></span></code></pre></div><p>Abstract supertype of all traits of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>.</p><p>These modify the behaviour of the lookup index.</p><p>The term "Trait" is used loosely - these may be fields of an object of traits hard-coded to specific types.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L2-L11" target="_blank" rel="noreferrer">source</a></p>',5))]),s[179]||(s[179]=i("h3",{id:"order",tabindex:"-1"},[a("Order "),i("a",{class:"header-anchor",href:"#order","aria-label":'Permalink to "Order"'},"")],-1)),i("details",W,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.Dimensions.Lookups.Order",href:"#DimensionalData.Dimensions.Lookups.Order"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Order")],-1)),s[103]||(s[103]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[104]||(s[104]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Order </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Traits for the order of a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>. These determine how <code>searchsorted</code> finds values in the index, and how objects are plotted.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L14-L19" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",G,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.Dimensions.Lookups.Ordered",href:"#DimensionalData.Dimensions.Lookups.Ordered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Ordered")],-1)),s[106]||(s[106]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[107]||(s[107]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span></code></pre></div><p>Supertype for the order of an ordered <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a>, including <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ForwardOrdered"><code>ForwardOrdered</code></a> and <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.ReverseOrdered"><code>ReverseOrdered</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L22-L27" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",K,[i("summary",null,[s[108]||(s[108]=i("a",{id:"DimensionalData.Dimensions.Lookups.ForwardOrdered",href:"#DimensionalData.Dimensions.Lookups.ForwardOrdered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ForwardOrdered")],-1)),s[109]||(s[109]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[110]||(s[110]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ForwardOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the normal forward order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L40-L46" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",$,[i("summary",null,[s[111]||(s[111]=i("a",{id:"DimensionalData.Dimensions.Lookups.ReverseOrdered",href:"#DimensionalData.Dimensions.Lookups.ReverseOrdered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ReverseOrdered")],-1)),s[112]||(s[112]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[113]||(s[113]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ReverseOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ForwardOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the normal forward order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L40-L46" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",$,[i("summary",null,[s[111]||(s[111]=i("a",{id:"DimensionalData.Dimensions.Lookups.ReverseOrdered",href:"#DimensionalData.Dimensions.Lookups.ReverseOrdered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.ReverseOrdered")],-1)),s[112]||(s[112]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[113]||(s[113]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">ReverseOrdered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Ordered</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ReverseOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the reverse order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L49-L55" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",H,[i("summary",null,[s[114]||(s[114]=i("a",{id:"DimensionalData.Dimensions.Lookups.Unordered",href:"#DimensionalData.Dimensions.Lookups.Unordered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Unordered")],-1)),s[115]||(s[115]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[116]||(s[116]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ReverseOrdered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that the <code>Lookup</code> index is in the reverse order.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L49-L55" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",H,[i("summary",null,[s[114]||(s[114]=i("a",{id:"DimensionalData.Dimensions.Lookups.Unordered",href:"#DimensionalData.Dimensions.Lookups.Unordered"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Unordered")],-1)),s[115]||(s[115]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[116]||(s[116]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Unordered </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that <code>Lookup</code> is unordered.</p><p>This means the index cannot be searched with <code>searchsortedfirst</code> or similar optimised methods - instead it will use <code>findfirst</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L58-L67" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",J,[i("summary",null,[s[117]||(s[117]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoOrder",href:"#DimensionalData.Dimensions.Lookups.AutoOrder"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoOrder")],-1)),s[118]||(s[118]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[119]||(s[119]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoOrder </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Unordered</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates that <code>Lookup</code> is unordered.</p><p>This means the index cannot be searched with <code>searchsortedfirst</code> or similar optimised methods - instead it will use <code>findfirst</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L58-L67" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",J,[i("summary",null,[s[117]||(s[117]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoOrder",href:"#DimensionalData.Dimensions.Lookups.AutoOrder"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoOrder")],-1)),s[118]||(s[118]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[119]||(s[119]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoOrder </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Order</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Specifies that the <code>Order</code> of a <code>Lookup</code> will be found automatically where possible.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L30-L37" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[180]||(s[180]=i("h3",{id:"span",tabindex:"-1"},[a("Span "),i("a",{class:"header-anchor",href:"#span","aria-label":'Permalink to "Span"'},"")],-1)),i("details",Q,[i("summary",null,[s[120]||(s[120]=i("a",{id:"DimensionalData.Dimensions.Lookups.Span",href:"#DimensionalData.Dimensions.Lookups.Span"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Span")],-1)),s[121]||(s[121]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[122]||(s[122]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Span </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Defines the type of span used in a <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> index. These are <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L194-L199" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",Z,[i("summary",null,[s[123]||(s[123]=i("a",{id:"DimensionalData.Dimensions.Lookups.Regular",href:"#DimensionalData.Dimensions.Lookups.Regular"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Regular")],-1)),s[124]||(s[124]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[125]||(s[125]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Regular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoOrder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Specifies that the <code>Order</code> of a <code>Lookup</code> will be found automatically where possible.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L30-L37" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[180]||(s[180]=i("h3",{id:"span",tabindex:"-1"},[a("Span "),i("a",{class:"header-anchor",href:"#span","aria-label":'Permalink to "Span"'},"")],-1)),i("details",Q,[i("summary",null,[s[120]||(s[120]=i("a",{id:"DimensionalData.Dimensions.Lookups.Span",href:"#DimensionalData.Dimensions.Lookups.Span"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Span")],-1)),s[121]||(s[121]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[122]||(s[122]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Span </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Defines the type of span used in a <a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> index. These are <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Regular"><code>Regular</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Irregular"><code>Irregular</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L194-L199" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",Z,[i("summary",null,[s[123]||(s[123]=i("a",{id:"DimensionalData.Dimensions.Lookups.Regular",href:"#DimensionalData.Dimensions.Lookups.Regular"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Regular")],-1)),s[124]||(s[124]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[125]||(s[125]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Regular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Regular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoStep</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have a fixed, regular step.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L221-L227" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",_,[i("summary",null,[s[126]||(s[126]=i("a",{id:"DimensionalData.Dimensions.Lookups.Irregular",href:"#DimensionalData.Dimensions.Lookups.Irregular"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Irregular")],-1)),s[127]||(s[127]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[128]||(s[128]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Irregular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Regular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoStep</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have a fixed, regular step.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L221-L227" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",_,[i("summary",null,[s[126]||(s[126]=i("a",{id:"DimensionalData.Dimensions.Lookups.Irregular",href:"#DimensionalData.Dimensions.Lookups.Irregular"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Irregular")],-1)),s[127]||(s[127]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[128]||(s[128]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Irregular </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lowerbound, upperbound)</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have an <code>Irregular</code> step size. To enable bounds tracking and accurate selectors, the starting bounds are provided as a 2 tuple, or 2 arguments. <code>(nothing, nothing)</code> is acceptable input, the bounds will be guessed from the index, but may be inaccurate.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L238-L248" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ss,[i("summary",null,[s[129]||(s[129]=i("a",{id:"DimensionalData.Dimensions.Lookups.Explicit",href:"#DimensionalData.Dimensions.Lookups.Explicit"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Explicit")],-1)),s[130]||(s[130]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[131]||(s[131]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Explicit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractMatrix</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Intervals where the span is explicitly listed for every interval.</p><p>This uses a matrix where with length 2 columns for each index value, holding the lower and upper bounds for that specific index.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L260-L267" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",is,[i("summary",null,[s[132]||(s[132]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoSpan",href:"#DimensionalData.Dimensions.Lookups.AutoSpan"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoSpan")],-1)),s[133]||(s[133]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[134]||(s[134]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoSpan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Irregular</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(lowerbound, upperbound)</span></span></code></pre></div><p><code>Points</code> or <code>Intervals</code> that have an <code>Irregular</code> step size. To enable bounds tracking and accurate selectors, the starting bounds are provided as a 2 tuple, or 2 arguments. <code>(nothing, nothing)</code> is acceptable input, the bounds will be guessed from the index, but may be inaccurate.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L238-L248" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ss,[i("summary",null,[s[129]||(s[129]=i("a",{id:"DimensionalData.Dimensions.Lookups.Explicit",href:"#DimensionalData.Dimensions.Lookups.Explicit"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Explicit")],-1)),s[130]||(s[130]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[131]||(s[131]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Explicit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bounds</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractMatrix</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Intervals where the span is explicitly listed for every interval.</p><p>This uses a matrix where with length 2 columns for each index value, holding the lower and upper bounds for that specific index.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L260-L267" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",is,[i("summary",null,[s[132]||(s[132]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoSpan",href:"#DimensionalData.Dimensions.Lookups.AutoSpan"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoSpan")],-1)),s[133]||(s[133]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[134]||(s[134]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoSpan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Span</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>The span will be guessed and replaced in <code>format</code> or <code>set</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L206-L212" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[181]||(s[181]=i("h3",{id:"sampling",tabindex:"-1"},[a("Sampling "),i("a",{class:"header-anchor",href:"#sampling","aria-label":'Permalink to "Sampling"'},"")],-1)),i("details",as,[i("summary",null,[s[135]||(s[135]=i("a",{id:"DimensionalData.Dimensions.Lookups.Sampling",href:"#DimensionalData.Dimensions.Lookups.Sampling"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Sampling")],-1)),s[136]||(s[136]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[137]||(s[137]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampling </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Indicates the sampling method used by the index: <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L148-L153" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",es,[i("summary",null,[s[138]||(s[138]=i("a",{id:"DimensionalData.Dimensions.Lookups.Points",href:"#DimensionalData.Dimensions.Lookups.Points"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Points")],-1)),s[139]||(s[139]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[140]||(s[140]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Points </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoSpan</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>The span will be guessed and replaced in <code>format</code> or <code>set</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L206-L212" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[181]||(s[181]=i("h3",{id:"sampling",tabindex:"-1"},[a("Sampling "),i("a",{class:"header-anchor",href:"#sampling","aria-label":'Permalink to "Sampling"'},"")],-1)),i("details",as,[i("summary",null,[s[135]||(s[135]=i("a",{id:"DimensionalData.Dimensions.Lookups.Sampling",href:"#DimensionalData.Dimensions.Lookups.Sampling"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Sampling")],-1)),s[136]||(s[136]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[137]||(s[137]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Sampling </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Indicates the sampling method used by the index: <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Points"><code>Points</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L148-L153" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",ns,[i("summary",null,[s[138]||(s[138]=i("a",{id:"DimensionalData.Dimensions.Lookups.Points",href:"#DimensionalData.Dimensions.Lookups.Points"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Points")],-1)),s[139]||(s[139]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[140]||(s[140]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Points </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> lookup where single samples at exact points.</p><p>These are always plotted at the center of array cells.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L162-L170" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",ns,[i("summary",null,[s[141]||(s[141]=i("a",{id:"DimensionalData.Dimensions.Lookups.Intervals",href:"#DimensionalData.Dimensions.Lookups.Intervals"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Intervals")],-1)),s[142]||(s[142]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[143]||(s[143]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Intervals </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Points</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> lookup where single samples at exact points.</p><p>These are always plotted at the center of array cells.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L162-L170" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",es,[i("summary",null,[s[141]||(s[141]=i("a",{id:"DimensionalData.Dimensions.Lookups.Intervals",href:"#DimensionalData.Dimensions.Lookups.Intervals"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Intervals")],-1)),s[142]||(s[142]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[143]||(s[143]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Intervals </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Sampling</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Position</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> specifying that sampled values are the mean (or similar) value over an <em>interval</em>, rather than at one specific point.</p><p>Intervals require a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> to define the location in the interval that the index values refer to.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L175-L185" target="_blank" rel="noreferrer">source</a></p>`,4))]),s[182]||(s[182]=i("h3",{id:"positions",tabindex:"-1"},[a("Positions "),i("a",{class:"header-anchor",href:"#positions","aria-label":'Permalink to "Positions"'},"")],-1)),i("details",ts,[i("summary",null,[s[144]||(s[144]=i("a",{id:"DimensionalData.Dimensions.Lookups.Position",href:"#DimensionalData.Dimensions.Lookups.Position"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Position")],-1)),s[145]||(s[145]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[146]||(s[146]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Position </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Abstract supertype of types that indicate the locus of index values where they represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p>These allow for values array cells to align with the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> of values in the lookup index.</p><p>This means they can be plotted with correct axis markers, and allows automatic conversions to between formats with different standards (such as NetCDF and GeoTiff).</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L74-L85" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",ls,[i("summary",null,[s[147]||(s[147]=i("a",{id:"DimensionalData.Dimensions.Lookups.Center",href:"#DimensionalData.Dimensions.Lookups.Center"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Center")],-1)),s[148]||(s[148]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[149]||(s[149]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Center </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(locus</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Position</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="/DimensionalData.jl/dev/api/lookuparrays#Sampling"><code>Sampling</code></a> specifying that sampled values are the mean (or similar) value over an <em>interval</em>, rather than at one specific point.</p><p>Intervals require a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.locus"><code>locus</code></a> of <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a> or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> to define the location in the interval that the index values refer to.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L175-L185" target="_blank" rel="noreferrer">source</a></p>`,4))]),s[182]||(s[182]=i("h3",{id:"positions",tabindex:"-1"},[a("Positions "),i("a",{class:"header-anchor",href:"#positions","aria-label":'Permalink to "Positions"'},"")],-1)),i("details",ts,[i("summary",null,[s[144]||(s[144]=i("a",{id:"DimensionalData.Dimensions.Lookups.Position",href:"#DimensionalData.Dimensions.Lookups.Position"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Position")],-1)),s[145]||(s[145]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[146]||(s[146]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Position </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> LookupTrait</span></span></code></pre></div><p>Abstract supertype of types that indicate the locus of index values where they represent <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Intervals"><code>Intervals</code></a>.</p><p>These allow for values array cells to align with the <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Start"><code>Start</code></a>, <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Center"><code>Center</code></a>, or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.End"><code>End</code></a> of values in the lookup index.</p><p>This means they can be plotted with correct axis markers, and allows automatic conversions to between formats with different standards (such as NetCDF and GeoTiff).</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L74-L85" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",ls,[i("summary",null,[s[147]||(s[147]=i("a",{id:"DimensionalData.Dimensions.Lookups.Center",href:"#DimensionalData.Dimensions.Lookups.Center"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Center")],-1)),s[148]||(s[148]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[149]||(s[149]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Center </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Center</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the center locus in an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L88-L94" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ps,[i("summary",null,[s[150]||(s[150]=i("a",{id:"DimensionalData.Dimensions.Lookups.Start",href:"#DimensionalData.Dimensions.Lookups.Start"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Start")],-1)),s[151]||(s[151]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[152]||(s[152]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Start </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Center</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the center locus in an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L88-L94" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ps,[i("summary",null,[s[150]||(s[150]=i("a",{id:"DimensionalData.Dimensions.Lookups.Start",href:"#DimensionalData.Dimensions.Lookups.Start"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Start")],-1)),s[151]||(s[151]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[152]||(s[152]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Start </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the start locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L97-L103" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",os,[i("summary",null,[s[153]||(s[153]=i("a",{id:"DimensionalData.Dimensions.Lookups.Begin",href:"#DimensionalData.Dimensions.Lookups.Begin"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Begin")],-1)),s[154]||(s[154]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[155]||(s[155]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Begin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify lookup values correspond to the start locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L97-L103" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",os,[i("summary",null,[s[153]||(s[153]=i("a",{id:"DimensionalData.Dimensions.Lookups.Begin",href:"#DimensionalData.Dimensions.Lookups.Begin"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Begin")],-1)),s[154]||(s[154]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[155]||(s[155]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Begin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Begin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>begin</code> index of a <code>Dimension</code> axis, as regular <code>begin</code> will not work with named dimensions.</p><p>Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L106-L116" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",hs,[i("summary",null,[s[156]||(s[156]=i("a",{id:"DimensionalData.Dimensions.Lookups.End",href:"#DimensionalData.Dimensions.Lookups.End"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.End")],-1)),s[157]||(s[157]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[158]||(s[158]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">End </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Begin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>begin</code> index of a <code>Dimension</code> axis, as regular <code>begin</code> will not work with named dimensions.</p><p>Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L106-L116" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",hs,[i("summary",null,[s[156]||(s[156]=i("a",{id:"DimensionalData.Dimensions.Lookups.End",href:"#DimensionalData.Dimensions.Lookups.End"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.End")],-1)),s[157]||(s[157]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[158]||(s[158]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">End </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">End</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>end</code> index of a <code>Dimension</code> axis, as regular <code>end</code> will not work with named dimensions. Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p>Also used to specify lookup values correspond to the end locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L119-L131" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",ks,[i("summary",null,[s[159]||(s[159]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoPosition",href:"#DimensionalData.Dimensions.Lookups.AutoPosition"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoPosition")],-1)),s[160]||(s[160]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[161]||(s[161]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoPosition </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">End</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Used to specify the <code>end</code> index of a <code>Dimension</code> axis, as regular <code>end</code> will not work with named dimensions. Can be used with <code>:</code> to create a <code>BeginEndRange</code> or <code>BeginEndStepRange</code>.</p><p>Also used to specify lookup values correspond to the end locus of an interval.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L119-L131" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",ks,[i("summary",null,[s[159]||(s[159]=i("a",{id:"DimensionalData.Dimensions.Lookups.AutoPosition",href:"#DimensionalData.Dimensions.Lookups.AutoPosition"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AutoPosition")],-1)),s[160]||(s[160]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[161]||(s[161]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AutoPosition </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Position</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoPosition</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates a interval where the index locus is not yet known. This will be filled with a default value on object construction.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/lookup_traits.jl#L134-L141" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[183]||(s[183]=i("h2",{id:"metadata",tabindex:"-1"},[a("Metadata "),i("a",{class:"header-anchor",href:"#metadata","aria-label":'Permalink to "Metadata"'},"")],-1)),i("details",rs,[i("summary",null,[s[162]||(s[162]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractMetadata",href:"#DimensionalData.Dimensions.Lookups.AbstractMetadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractMetadata")],-1)),s[163]||(s[163]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[164]||(s[164]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractMetadata{X,T}</span></span></code></pre></div><p>Abstract supertype for all metadata wrappers.</p><p>Metadata wrappers allow tracking the contents and origin of metadata. This can facilitate conversion between metadata types (for saving a file to a different format) or simply saving data back to the same file type with identical metadata.</p><p>Using a wrapper instead of <code>Dict</code> or <code>NamedTuple</code> also lets us pass metadata objects to <a href="/DimensionalData.jl/dev/object_modification#set"><code>set</code></a> without ambiguity about where to put them.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L2-L13" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",ds,[i("summary",null,[s[165]||(s[165]=i("a",{id:"DimensionalData.Dimensions.Lookups.Metadata",href:"#DimensionalData.Dimensions.Lookups.Metadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Metadata")],-1)),s[166]||(s[166]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[167]||(s[167]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Metadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AutoPosition</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates a interval where the index locus is not yet known. This will be filled with a default value on object construction.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/lookup_traits.jl#L134-L141" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[183]||(s[183]=i("h2",{id:"metadata",tabindex:"-1"},[a("Metadata "),i("a",{class:"header-anchor",href:"#metadata","aria-label":'Permalink to "Metadata"'},"")],-1)),i("details",rs,[i("summary",null,[s[162]||(s[162]=i("a",{id:"DimensionalData.Dimensions.Lookups.AbstractMetadata",href:"#DimensionalData.Dimensions.Lookups.AbstractMetadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.AbstractMetadata")],-1)),s[163]||(s[163]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[164]||(s[164]=t('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractMetadata{X,T}</span></span></code></pre></div><p>Abstract supertype for all metadata wrappers.</p><p>Metadata wrappers allow tracking the contents and origin of metadata. This can facilitate conversion between metadata types (for saving a file to a different format) or simply saving data back to the same file type with identical metadata.</p><p>Using a wrapper instead of <code>Dict</code> or <code>NamedTuple</code> also lets us pass metadata objects to <a href="/DimensionalData.jl/dev/object_modification#set"><code>set</code></a> without ambiguity about where to put them.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L2-L13" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",ds,[i("summary",null,[s[165]||(s[165]=i("a",{id:"DimensionalData.Dimensions.Lookups.Metadata",href:"#DimensionalData.Dimensions.Lookups.Metadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.Metadata")],-1)),s[166]||(s[166]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[167]||(s[167]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Metadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(val</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{Dict,NamedTuple}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{Dict}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{NamedTuple}</span></span></code></pre></div><p>General <a href="/DimensionalData.jl/dev/api/lookuparrays#Metadata"><code>Metadata</code></a> object. The <code>X</code> type parameter categorises the metadata for method dispatch, if required.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L31-L40" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",gs,[i("summary",null,[s[168]||(s[168]=i("a",{id:"DimensionalData.Dimensions.Lookups.NoMetadata",href:"#DimensionalData.Dimensions.Lookups.NoMetadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.NoMetadata")],-1)),s[169]||(s[169]=a()),n(e,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[170]||(s[170]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoMetadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Metadata{X}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Metadata{NamedTuple}</span></span></code></pre></div><p>General <a href="/DimensionalData.jl/dev/api/lookuparrays#Metadata"><code>Metadata</code></a> object. The <code>X</code> type parameter categorises the metadata for method dispatch, if required.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L31-L40" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",gs,[i("summary",null,[s[168]||(s[168]=i("a",{id:"DimensionalData.Dimensions.Lookups.NoMetadata",href:"#DimensionalData.Dimensions.Lookups.NoMetadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.NoMetadata")],-1)),s[169]||(s[169]=a()),e(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[170]||(s[170]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoMetadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractMetadata</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates an object has no metadata. But unlike using <code>nothing</code>, <code>get</code>, <code>keys</code> and <code>haskey</code> will still work on it, <code>get</code> always returning the fallback argument. <code>keys</code> returns <code>()</code> while <code>haskey</code> always returns <code>false</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Lookups/metadata.jl#L67-L76" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",cs,[i("summary",null,[s[171]||(s[171]=i("a",{id:"DimensionalData.Dimensions.Lookups.units",href:"#DimensionalData.Dimensions.Lookups.units"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.units")],-1)),s[172]||(s[172]=a()),n(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[173]||(s[173]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Indicates an object has no metadata. But unlike using <code>nothing</code>, <code>get</code>, <code>keys</code> and <code>haskey</code> will still work on it, <code>get</code> always returning the fallback argument. <code>keys</code> returns <code>()</code> while <code>haskey</code> always returns <code>false</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Lookups/metadata.jl#L67-L76" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",cs,[i("summary",null,[s[171]||(s[171]=i("a",{id:"DimensionalData.Dimensions.Lookups.units",href:"#DimensionalData.Dimensions.Lookups.units"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.units")],-1)),s[172]||(s[172]=a()),e(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[173]||(s[173]=t(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">units</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Tuple) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span></code></pre></div><p>Get the units of an array or <code>Dimension</code>, or a tuple of of either.</p><p>Units do not have a set field, and may or may not be included in <code>metadata</code>. This method is to facilitate use in labels and plots when units are available, not a guarantee that they will be. If not available, <code>nothing</code> is returned.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L142-L156" target="_blank" rel="noreferrer">source</a></p>`,5))])])}const fs=l(k,[["render",us]]);export{bs as __pageData,fs as default}; +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Union{Nothing,Any}</span></span></code></pre></div><p>Get the units of an array or <code>Dimension</code>, or a tuple of of either.</p><p>Units do not have a set field, and may or may not be included in <code>metadata</code>. This method is to facilitate use in labels and plots when units are available, not a guarantee that they will be. If not available, <code>nothing</code> is returned.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L142-L156" target="_blank" rel="noreferrer">source</a></p>`,5))])])}const fs=l(k,[["render",us]]);export{bs as __pageData,fs as default}; diff --git a/dev/assets/api_reference.md.Brz0Wk34.js b/dev/assets/api_reference.md.Cbzd03zL.js similarity index 98% rename from dev/assets/api_reference.md.Brz0Wk34.js rename to dev/assets/api_reference.md.Cbzd03zL.js index 82e636eb8..ce337a054 100644 --- a/dev/assets/api_reference.md.Brz0Wk34.js +++ b/dev/assets/api_reference.md.Cbzd03zL.js @@ -1,4 +1,4 @@ -import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framework.C6EFuEL4.js";const ms=JSON.parse('{"title":"API Reference","description":"","frontmatter":{},"headers":[],"relativePath":"api/reference.md","filePath":"api/reference.md","lastUpdated":null}'),d={name:"api/reference.md"},r={class:"jldocstring custom-block",open:""},o={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ns={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},hs={class:"jldocstring custom-block",open:""},ks={class:"jldocstring custom-block",open:""},ps={class:"jldocstring custom-block",open:""},ds={class:"jldocstring custom-block",open:""},rs={class:"jldocstring custom-block",open:""};function os(gs,s,Es,ys,cs,Fs){const n=k("Badge");return p(),h("div",null,[s[165]||(s[165]=i("h1",{id:"API-Reference",tabindex:"-1"},[a("API Reference "),i("a",{class:"header-anchor",href:"#API-Reference","aria-label":'Permalink to "API Reference {#API-Reference}"'},"")],-1)),s[166]||(s[166]=i("h2",{id:"arrays",tabindex:"-1"},[a("Arrays "),i("a",{class:"header-anchor",href:"#arrays","aria-label":'Permalink to "Arrays"'},"")],-1)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.AbstractBasicDimArray",href:"#DimensionalData.AbstractBasicDimArray"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractBasicDimArray")],-1)),s[1]||(s[1]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[2]||(s[2]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractBasicDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span></code></pre></div><p>The abstract supertype for all arrays with a <code>dims</code> method that returns a <code>Tuple</code> of <code>Dimension</code></p><p>Only keyword <code>rebuild</code> is guaranteed to work with <code>AbstractBasicDimArray</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L3-L10" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",o,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.AbstractDimArray",href:"#DimensionalData.AbstractDimArray"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimArray")],-1)),s[4]||(s[4]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractBasicArray</span></span></code></pre></div><p>Abstract supertype for all "dim" arrays.</p><p>These arrays return a <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> from a <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> method, and can be rebuilt using <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a>.</p><p><code>parent</code> must return the source array.</p><p>They should have <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.metadata"><code>metadata</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.refdims"><code>refdims</code></a> methods, although these are optional.</p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> method for <code>AbstractDimArray</code> must accept <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code> arguments.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L41-L59" target="_blank" rel="noreferrer">source</a></p>',8))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.DimArray",href:"#DimensionalData.DimArray"},[i("span",{class:"jlbinding"},"DimensionalData.DimArray")],-1)),s[7]||(s[7]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span> +import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framework.B8l2DGq3.js";const ms=JSON.parse('{"title":"API Reference","description":"","frontmatter":{},"headers":[],"relativePath":"api/reference.md","filePath":"api/reference.md","lastUpdated":null}'),d={name:"api/reference.md"},r={class:"jldocstring custom-block",open:""},o={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ns={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},hs={class:"jldocstring custom-block",open:""},ks={class:"jldocstring custom-block",open:""},ps={class:"jldocstring custom-block",open:""},ds={class:"jldocstring custom-block",open:""},rs={class:"jldocstring custom-block",open:""};function os(gs,s,Es,ys,cs,Fs){const n=k("Badge");return p(),h("div",null,[s[165]||(s[165]=i("h1",{id:"API-Reference",tabindex:"-1"},[a("API Reference "),i("a",{class:"header-anchor",href:"#API-Reference","aria-label":'Permalink to "API Reference {#API-Reference}"'},"")],-1)),s[166]||(s[166]=i("h2",{id:"arrays",tabindex:"-1"},[a("Arrays "),i("a",{class:"header-anchor",href:"#arrays","aria-label":'Permalink to "Arrays"'},"")],-1)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.AbstractBasicDimArray",href:"#DimensionalData.AbstractBasicDimArray"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractBasicDimArray")],-1)),s[1]||(s[1]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[2]||(s[2]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractBasicDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span></code></pre></div><p>The abstract supertype for all arrays with a <code>dims</code> method that returns a <code>Tuple</code> of <code>Dimension</code></p><p>Only keyword <code>rebuild</code> is guaranteed to work with <code>AbstractBasicDimArray</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L3-L10" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",o,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.AbstractDimArray",href:"#DimensionalData.AbstractDimArray"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimArray")],-1)),s[4]||(s[4]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractBasicArray</span></span></code></pre></div><p>Abstract supertype for all "dim" arrays.</p><p>These arrays return a <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> from a <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> method, and can be rebuilt using <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a>.</p><p><code>parent</code> must return the source array.</p><p>They should have <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.metadata"><code>metadata</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.refdims"><code>refdims</code></a> methods, although these are optional.</p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> method for <code>AbstractDimArray</code> must accept <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code> arguments.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L41-L59" target="_blank" rel="noreferrer">source</a></p>',8))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.DimArray",href:"#DimensionalData.DimArray"},[i("span",{class:"jlbinding"},"DimensionalData.DimArray")],-1)),s[7]||(s[7]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims, refdims, name, metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; refdims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>The main concrete subtype of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a>.</p><p><code>DimArray</code> maintains and updates its <code>Dimension</code>s through transformations and moves dimensions to reference dimension <code>refdims</code> after reducing operations (like e.g. <code>mean</code>).</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractArray</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A string name for the array. Shows in plots and tables.</p></li><li><p><code>refdims</code>: refence dimensions. Usually set programmatically to track past slices and reductions of dimension for labelling and reconstruction.</p></li><li><p><code>metadata</code>: <code>Dict</code> or <code>Metadata</code> object, or <code>NoMetadata()</code></p></li></ul><p>Indexing can be done with all regular indices, or with <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s and/or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates, DimensionalData</span></span> @@ -27,7 +27,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.774092</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.823656</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 40</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.637077</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692235</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L333-L391" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[167]||(s[167]=i("p",null,[a("Shorthand "),i("code",null,"AbstractDimArray"),a(" constructors:")],-1)),i("details",E,[i("summary",null,[s[9]||(s[9]=i("a",{id:"Base.fill",href:"#Base.fill"},[i("span",{class:"jlbinding"},"Base.fill")],-1)),s[10]||(s[10]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[11]||(s[11]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692235</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L333-L391" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[167]||(s[167]=i("p",null,[a("Shorthand "),i("code",null,"AbstractDimArray"),a(" constructors:")],-1)),i("details",E,[i("summary",null,[s[9]||(s[9]=i("a",{id:"Base.fill",href:"#Base.fill"},[i("span",{class:"jlbinding"},"Base.fill")],-1)),s[10]||(s[10]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[11]||(s[11]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> with a fill value of <code>x</code>.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Random; Random</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seed!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">123</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -37,7 +37,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L476-L504" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",y,[i("summary",null,[s[12]||(s[12]=i("a",{id:"Base.rand",href:"#Base.rand"},[i("span",{class:"jlbinding"},"Base.rand")],-1)),s[13]||(s[13]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[14]||(s[14]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L476-L504" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",y,[i("summary",null,[s[12]||(s[12]=i("a",{id:"Base.rand",href:"#Base.rand"},[i("span",{class:"jlbinding"},"Base.rand")],-1)),s[13]||(s[13]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[14]||(s[14]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(r</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRNG</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(r</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRNG</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of random values.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -61,7 +61,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.443494</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.253849</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.867547</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.334152</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0802658</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.512083</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.427328</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.311448</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L507-L549" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",c,[i("summary",null,[s[15]||(s[15]=i("a",{id:"Base.zeros",href:"#Base.zeros"},[i("span",{class:"jlbinding"},"Base.zeros")],-1)),s[16]||(s[16]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[17]||(s[17]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.512083</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.427328</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.311448</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L507-L549" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",c,[i("summary",null,[s[15]||(s[15]=i("a",{id:"Base.zeros",href:"#Base.zeros"},[i("span",{class:"jlbinding"},"Base.zeros")],-1)),s[16]||(s[16]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[17]||(s[17]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of zeros.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -83,7 +83,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L552-L593" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",F,[i("summary",null,[s[18]||(s[18]=i("a",{id:"Base.ones",href:"#Base.ones"},[i("span",{class:"jlbinding"},"Base.ones")],-1)),s[19]||(s[19]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[20]||(s[20]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L552-L593" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",F,[i("summary",null,[s[18]||(s[18]=i("a",{id:"Base.ones",href:"#Base.ones"},[i("span",{class:"jlbinding"},"Base.ones")],-1)),s[19]||(s[19]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[20]||(s[20]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of ones.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -105,8 +105,8 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L596-L637" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[168]||(s[168]=i("p",null,"Functions for getting information from objects:",-1)),i("details",C,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.dims",href:"#DimensionalData.Dimensions.dims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims")],-1)),s[22]||(s[22]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[23]||(s[23]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L596-L637" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[168]||(s[168]=i("p",null,"Functions for getting information from objects:",-1)),i("details",C,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.dims",href:"#DimensionalData.Dimensions.dims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims")],-1)),s[22]||(s[22]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[23]||(s[23]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Get the dimension(s) matching the type(s) of the query dimension.</p><p>Lookup can be an Int or an Dimension, or a tuple containing any combination of either.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or a single <code>Dimension</code> or <code>Dimension</code> <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z))</span></span> @@ -120,13 +120,13 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",m,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.refdims",href:"#DimensionalData.Dimensions.refdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.refdims")],-1)),s[25]||(s[25]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[26]||(s[26]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Reference dimensions for an array that is a slice or view of another array with more dimensions.</p><p><code>slicedims(a, dims)</code> returns a tuple containing the current new dimensions and the new reference dimensions. Refdims can be stored in a field or discarded, as it is mostly to give context to plots. Ignoring refdims will simply leave some captions empty.</p><p>The default is to return an empty <code>Tuple</code> <code>()</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L62-L75" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",u,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Lookups.metadata",href:"#DimensionalData.Dimensions.Lookups.metadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.metadata")],-1)),s[28]||(s[28]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[29]||(s[29]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (object metadata)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",m,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.refdims",href:"#DimensionalData.Dimensions.refdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.refdims")],-1)),s[25]||(s[25]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[26]||(s[26]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Reference dimensions for an array that is a slice or view of another array with more dimensions.</p><p><code>slicedims(a, dims)</code> returns a tuple containing the current new dimensions and the new reference dimensions. Refdims can be stored in a field or discarded, as it is mostly to give context to plots. Ignoring refdims will simply leave some captions empty.</p><p>The default is to return an empty <code>Tuple</code> <code>()</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L62-L75" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",u,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Lookups.metadata",href:"#DimensionalData.Dimensions.Lookups.metadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.metadata")],-1)),s[28]||(s[28]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[29]||(s[29]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (object metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple (Dimension metadata)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Returns the metadata for an object or for the specified dimension(s)</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L117-L126" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",D,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.name",href:"#DimensionalData.Dimensions.name"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.name")],-1)),s[31]||(s[31]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[32]||(s[32]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Returns the metadata for an object or for the specified dimension(s)</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L117-L126" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",D,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.name",href:"#DimensionalData.Dimensions.name"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.name")],-1)),s[31]||(s[31]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[32]||(s[32]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Tuple) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,Symbol}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,Symbol}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span></code></pre></div><p>Get the name of an array or Dimension, or a tuple of of either as a Symbol.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L129-L139" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.otherdims",href:"#DimensionalData.Dimensions.otherdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.otherdims")],-1)),s[34]||(s[34]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[35]||(s[35]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span></code></pre></div><p>Get the name of an array or Dimension, or a tuple of of either as a Symbol.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L129-L139" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.otherdims",href:"#DimensionalData.Dimensions.otherdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.otherdims")],-1)),s[34]||(s[34]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[35]||(s[35]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -134,7 +134,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Y, Z))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",B,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.dimnum",href:"#DimensionalData.Dimensions.dimnum"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimnum")],-1)),s[37]||(s[37]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[38]||(s[38]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",B,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.dimnum",href:"#DimensionalData.Dimensions.dimnum"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimnum")],-1)),s[37]||(s[37]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[38]||(s[38]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Int</span></span></code></pre></div><p>Get the number(s) of <code>Dimension</code>(s) as ordered in the dimensions of an object.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple, Array or single <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p>The return type will be a Tuple of <code>Int</code> or a single <code>Int</code>, depending on whether <code>query</code> is a <code>Tuple</code> or single <code>Dimension</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> @@ -143,7 +143,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Y)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",f,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.hasdim",href:"#DimensionalData.Dimensions.hasdim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.hasdim")],-1)),s[40]||(s[40]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[41]||(s[41]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",A,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.hasdim",href:"#DimensionalData.Dimensions.hasdim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.hasdim")],-1)),s[40]||(s[40]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[41]||(s[41]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if an object <code>x</code> has dimensions that match or inherit from the <code>query</code> dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>Check if an object or tuple contains an <code>Dimension</code>, or a tuple of dimensions.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -156,7 +156,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[169]||(s[169]=i("h2",{id:"Multi-array-datasets",tabindex:"-1"},[a("Multi-array datasets "),i("a",{class:"header-anchor",href:"#Multi-array-datasets","aria-label":'Permalink to "Multi-array datasets {#Multi-array-datasets}"'},"")],-1)),i("details",A,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.AbstractDimStack",href:"#DimensionalData.AbstractDimStack"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimStack")],-1)),s[43]||(s[43]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[44]||(s[44]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimStack</span></span></code></pre></div><p>Abstract supertype for dimensional stacks.</p><p>These have multiple layers of data, but share dimensions.</p><p>Notably, their behaviour lies somewhere between a <code>DimArray</code> and a <code>NamedTuple</code>:</p><ul><li><p>indexing with a <code>Symbol</code> as in <code>dimstack[:symbol]</code> returns a <code>DimArray</code> layer.</p></li><li><p>iteration and <code>map</code> apply over array layers, as indexed with a <code>Symbol</code>.</p></li><li><p><code>getindex</code> and many base methods are applied as for <code>DimArray</code> - to avoid the need to always use <code>map</code>.</p></li></ul><p>This design gives very succinct code when working with many-layered, mixed-dimension objects. But it may be jarring initially - the most surprising outcome is that <code>dimstack[1]</code> will return a <code>NamedTuple</code> of values for the first index in all layers, while <code>first(dimstack)</code> will return the first value of the iterator - the <code>DimArray</code> for the first layer.</p><p>See <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimStack"><code>DimStack</code></a> for the concrete implementation. Most methods are defined on the abstract type.</p><p>To extend <code>AbstractDimStack</code>, implement argument and keyword version of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> and also <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.rebuild_from_arrays"><code>rebuild_from_arrays</code></a>.</p><p>The constructor of an <code>AbstractDimStack</code> must accept a <code>NamedTuple</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L1-L27" target="_blank" rel="noreferrer">source</a></p>',10))]),i("details",j,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.DimStack",href:"#DimensionalData.DimStack"},[i("span",{class:"jlbinding"},"DimensionalData.DimStack")],-1)),s[46]||(s[46]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[47]||(s[47]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimStack </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimStack</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[169]||(s[169]=i("h2",{id:"Multi-array-datasets",tabindex:"-1"},[a("Multi-array datasets "),i("a",{class:"header-anchor",href:"#Multi-array-datasets","aria-label":'Permalink to "Multi-array datasets {#Multi-array-datasets}"'},"")],-1)),i("details",f,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.AbstractDimStack",href:"#DimensionalData.AbstractDimStack"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimStack")],-1)),s[43]||(s[43]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[44]||(s[44]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimStack</span></span></code></pre></div><p>Abstract supertype for dimensional stacks.</p><p>These have multiple layers of data, but share dimensions.</p><p>Notably, their behaviour lies somewhere between a <code>DimArray</code> and a <code>NamedTuple</code>:</p><ul><li><p>indexing with a <code>Symbol</code> as in <code>dimstack[:symbol]</code> returns a <code>DimArray</code> layer.</p></li><li><p>iteration and <code>map</code> apply over array layers, as indexed with a <code>Symbol</code>.</p></li><li><p><code>getindex</code> and many base methods are applied as for <code>DimArray</code> - to avoid the need to always use <code>map</code>.</p></li></ul><p>This design gives very succinct code when working with many-layered, mixed-dimension objects. But it may be jarring initially - the most surprising outcome is that <code>dimstack[1]</code> will return a <code>NamedTuple</code> of values for the first index in all layers, while <code>first(dimstack)</code> will return the first value of the iterator - the <code>DimArray</code> for the first layer.</p><p>See <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimStack"><code>DimStack</code></a> for the concrete implementation. Most methods are defined on the abstract type.</p><p>To extend <code>AbstractDimStack</code>, implement argument and keyword version of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> and also <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.rebuild_from_arrays"><code>rebuild_from_arrays</code></a>.</p><p>The constructor of an <code>AbstractDimStack</code> must accept a <code>NamedTuple</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L1-L27" target="_blank" rel="noreferrer">source</a></p>',10))]),i("details",j,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.DimStack",href:"#DimensionalData.DimStack"},[i("span",{class:"jlbinding"},"DimensionalData.DimStack")],-1)),s[46]||(s[46]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[47]||(s[47]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimStack </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimStack</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{AbstractDimArray}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -183,7 +183,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(one </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, two </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 8.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, three </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">isa</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStack</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L278-L358" target="_blank" rel="noreferrer">source</a></p>`,16))]),s[170]||(s[170]=i("h2",{id:"Dimension-generators",tabindex:"-1"},[a("Dimension generators "),i("a",{class:"header-anchor",href:"#Dimension-generators","aria-label":'Permalink to "Dimension generators {#Dimension-generators}"'},"")],-1)),i("details",v,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.DimIndices",href:"#DimensionalData.DimIndices"},[i("span",{class:"jlbinding"},"DimensionalData.DimIndices")],-1)),s[49]||(s[49]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[50]||(s[50]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimIndices </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L278-L358" target="_blank" rel="noreferrer">source</a></p>`,16))]),s[170]||(s[170]=i("h2",{id:"Dimension-generators",tabindex:"-1"},[a("Dimension generators "),i("a",{class:"header-anchor",href:"#Dimension-generators","aria-label":'Permalink to "Dimension generators {#Dimension-generators}"'},"")],-1)),i("details",v,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.DimIndices",href:"#DimensionalData.DimIndices"},[i("span",{class:"jlbinding"},"DimensionalData.DimIndices")],-1)),s[49]||(s[49]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[50]||(s[50]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimIndices </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimIndices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimIndices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -220,7 +220,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└─────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'c'</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.9063</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0991336</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692209</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L53-L113" target="_blank" rel="noreferrer">source</a></p>`,9))]),i("details",w,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.DimSelectors",href:"#DimensionalData.DimSelectors"},[i("span",{class:"jlbinding"},"DimensionalData.DimSelectors")],-1)),s[52]||(s[52]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[53]||(s[53]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimSelectors </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692209</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L53-L113" target="_blank" rel="noreferrer">source</a></p>`,9))]),i("details",w,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.DimSelectors",href:"#DimensionalData.DimSelectors"},[i("span",{class:"jlbinding"},"DimensionalData.DimSelectors")],-1)),s[52]||(s[52]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[53]||(s[53]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimSelectors </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimSelectors</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; selectors, atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimSelectors</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; selectors, atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -238,11 +238,11 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 11.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 21.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.691162</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.218579</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.539076</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0303789</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.420756</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.485687</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 22.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0967863</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.864856</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.870485</span></span></code></pre></div><p>Using <code>At</code> would make sure we only use exact interpolation, while <code>Contains</code> with sampling of <code>Intervals</code> would make sure that each values is taken only from an Interval that is present in the lookups.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L200-L246" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.DimPoints",href:"#DimensionalData.DimPoints"},[i("span",{class:"jlbinding"},"DimensionalData.DimPoints")],-1)),s[55]||(s[55]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[56]||(s[56]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimPoints </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 22.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0967863</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.864856</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.870485</span></span></code></pre></div><p>Using <code>At</code> would make sure we only use exact interpolation, while <code>Contains</code> with sampling of <code>Intervals</code> would make sure that each values is taken only from an Interval that is present in the lookups.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L200-L246" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.DimPoints",href:"#DimensionalData.DimPoints"},[i("span",{class:"jlbinding"},"DimensionalData.DimPoints")],-1)),s[55]||(s[55]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[56]||(s[56]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimPoints </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; order)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span></code></pre></div><p>Like <code>CartesianIndices</code>, but for the point values of the dimension index. Behaves as an <code>Array</code> of <code>Tuple</code> lookup values (whatever they are) for all combinations of the lookup values of <code>dims</code>.</p><p>Either a <code>Dimension</code>, a <code>Tuple</code> of <code>Dimension</code> or an object <code>x</code> that defines a <code>dims</code> method can be passed in.</p><p><strong>Keywords</strong></p><ul><li><code>order</code>: determines the order of the points, the same as the order of <code>dims</code> by default.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L153-L170" target="_blank" rel="noreferrer">source</a></p>`,6))]),s[171]||(s[171]=i("h2",{id:"Tables.jl/TableTraits.jl-interface",tabindex:"-1"},[a("Tables.jl/TableTraits.jl interface "),i("a",{class:"header-anchor",href:"#Tables.jl/TableTraits.jl-interface","aria-label":'Permalink to "Tables.jl/TableTraits.jl interface {#Tables.jl/TableTraits.jl-interface}"'},"")],-1)),i("details",T,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.AbstractDimTable",href:"#DimensionalData.AbstractDimTable"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimTable")],-1)),s[58]||(s[58]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[59]||(s[59]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Tables.AbstractColumns</span></span></code></pre></div><p>Abstract supertype for dim tables</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/tables.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",L,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.DimTable",href:"#DimensionalData.DimTable"},[i("span",{class:"jlbinding"},"DimensionalData.DimTable")],-1)),s[61]||(s[61]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[62]||(s[62]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimTable</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span></code></pre></div><p>Like <code>CartesianIndices</code>, but for the point values of the dimension index. Behaves as an <code>Array</code> of <code>Tuple</code> lookup values (whatever they are) for all combinations of the lookup values of <code>dims</code>.</p><p>Either a <code>Dimension</code>, a <code>Tuple</code> of <code>Dimension</code> or an object <code>x</code> that defines a <code>dims</code> method can be passed in.</p><p><strong>Keywords</strong></p><ul><li><code>order</code>: determines the order of the points, the same as the order of <code>dims</code> by default.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L153-L170" target="_blank" rel="noreferrer">source</a></p>`,6))]),s[171]||(s[171]=i("h2",{id:"Tables.jl/TableTraits.jl-interface",tabindex:"-1"},[a("Tables.jl/TableTraits.jl interface "),i("a",{class:"header-anchor",href:"#Tables.jl/TableTraits.jl-interface","aria-label":'Permalink to "Tables.jl/TableTraits.jl interface {#Tables.jl/TableTraits.jl-interface}"'},"")],-1)),i("details",T,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.AbstractDimTable",href:"#DimensionalData.AbstractDimTable"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimTable")],-1)),s[58]||(s[58]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[59]||(s[59]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Tables.AbstractColumns</span></span></code></pre></div><p>Abstract supertype for dim tables</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/tables.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",L,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.DimTable",href:"#DimensionalData.DimTable"},[i("span",{class:"jlbinding"},"DimensionalData.DimTable")],-1)),s[61]||(s[61]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[62]||(s[62]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimTable</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimTable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; mergedims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimTable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; layersfrom</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mergedims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -272,7 +272,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> …</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/tables.jl#L38-L94" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[172]||(s[172]=i("h1",{id:"Group-by-methods",tabindex:"-1"},[a("Group by methods "),i("a",{class:"header-anchor",href:"#Group-by-methods","aria-label":'Permalink to "Group by methods {#Group-by-methods}"'},"")],-1)),s[173]||(s[173]=i("p",null,"For transforming DimensionalData objects:",-1)),i("details",S,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DataAPI.groupby",href:"#DataAPI.groupby"},[i("span",{class:"jlbinding"},"DataAPI.groupby")],-1)),s[64]||(s[64]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/tables.jl#L38-L94" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[172]||(s[172]=i("h1",{id:"Group-by-methods",tabindex:"-1"},[a("Group by methods "),i("a",{class:"header-anchor",href:"#Group-by-methods","aria-label":'Permalink to "Group by methods {#Group-by-methods}"'},"")],-1)),s[173]||(s[173]=i("p",null,"For transforming DimensionalData objects:",-1)),i("details",S,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DataAPI.groupby",href:"#DataAPI.groupby"},[i("span",{class:"jlbinding"},"DataAPI.groupby")],-1)),s[64]||(s[64]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension{<:Callable}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">...)</span></span></code></pre></div><p>Group <code>A</code> by grouping functions or <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Bins"><code>Bins</code></a> over multiple dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>A</code>: any <code>AbstractDimArray</code> or <code>AbstractDimStack</code>.</p></li><li><p><code>dims</code>: <code>Pair</code>s such as <code>groups = groupby(A, :dimname => groupingfunction)</code> or wrapped <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s like <code>groups = groupby(A, DimType(groupingfunction))</code>. Instead of a grouping function <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Bins"><code>Bins</code></a> can be used to specify group bins.</p></li></ul><p><strong>Return value</strong></p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimGroupByArray"><code>DimGroupByArray</code></a> is returned, which is basically a regular <code>AbstractDimArray</code> but holding the grouped <code>AbstractDimArray</code> or <code>AbstractDimStack</code>. Its <code>dims</code> hold the sorted values returned by the grouping function/s.</p><p>Base julia and package methods work on <code>DimGroupByArray</code> as for any other <code>AbstractArray</code> of <code>AbstractArray</code>.</p><p>It is common to broadcast or <code>map</code> a reducing function over groups, such as <code>mean</code> or <code>sum</code>, like <code>mean.(groups)</code> or <code>map(mean, groups)</code>. This will return a regular <code>DimArray</code>, or <code>DimGroupByArray</code> if <code>dims</code> keyword is used in the reducing function or it otherwise returns an <code>AbstractDimArray</code> or <code>AbstractDimStack</code>.</p><p><strong>Example</strong></p><p>Group some data along the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Day</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2003</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)));</span></span> @@ -325,8 +325,8 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ⋮</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501105</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.500644</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 11</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.498606</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.498801</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501643</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.499298</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L218-L325" target="_blank" rel="noreferrer">source</a></p>`,18))]),i("details",I,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.DimGroupByArray",href:"#DimensionalData.DimGroupByArray"},[i("span",{class:"jlbinding"},"DimensionalData.DimGroupByArray")],-1)),s[67]||(s[67]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[68]||(s[68]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimGroupByArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span></code></pre></div><p><code>DimGroupByArray</code> is essentially a <code>DimArray</code> but holding the results of a <code>groupby</code> operation.</p><p>Its dimensions are the sorted results of the grouping functions used in <code>groupby</code>.</p><p>This wrapper allows for specialisations on later broadcast or reducing operations, e.g. for chunk reading with DiskArrays.jl, because we know the data originates from a single array.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",O,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Bins",href:"#DimensionalData.Bins"},[i("span",{class:"jlbinding"},"DimensionalData.Bins")],-1)),s[70]||(s[70]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[71]||(s[71]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, bins; labels, pad)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bins; labels, pad)</span></span></code></pre></div><p>Specify bins to reduce groups after applying function <code>f</code>.</p><ul><li><p><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</p></li><li><p><code>bins</code>:</p><ul><li><p>an <code>Integer</code> will divide the group values into equally spaced sections.</p></li><li><p>an <code>AbstractArray</code> of values will be treated as exact matches for the return value of <code>f</code>. For example, <code>1:3</code> will create 3 bins - 1, 2, 3.</p></li><li><p>an <code>AbstractArray</code> of <code>IntervalSets.Interval</code> can be used to explicitly define the intervals. Overlapping intervals have undefined behaviour.</p></li></ul></li></ul><p><strong>Keywords</strong></p><ul><li><p><code>pad</code>: fraction of the total interval to pad at each end when <code>Bins</code> contains an <code>Integer</code>. This avoids losing the edge values. Note this is a messy solution - it will often be prefereble to manually specify a <code>Vector</code> of chosen <code>Interval</code>s rather than relying on passing an <code>Integer</code> and <code>pad</code>.</p></li><li><p><code>labels</code>: a list of descriptive labels for the bins. The labels need to have the same length as <code>bins</code>.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L103-L126" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.ranges",href:"#DimensionalData.ranges"},[i("span",{class:"jlbinding"},"DimensionalData.ranges")],-1)),s[73]||(s[73]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[74]||(s[74]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ranges</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange{<:Integer}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L455-L459" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",q,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.intervals",href:"#DimensionalData.intervals"},[i("span",{class:"jlbinding"},"DimensionalData.intervals")],-1)),s[76]||(s[76]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[77]||(s[77]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L448-L452" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",z,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.CyclicBins",href:"#DimensionalData.CyclicBins"},[i("span",{class:"jlbinding"},"DimensionalData.CyclicBins")],-1)),s[79]||(s[79]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[80]||(s[80]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">CyclicBins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f; cycle, start, step, labels)</span></span></code></pre></div><p>Cyclic bins to reduce groups after applying function <code>f</code>. Groups can wrap around the cycle. This is used for grouping in <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.seasons"><code>seasons</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.months"><code>months</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.hours"><code>hours</code></a> but can also be used for custom cycles.</p><ul><li><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>cycle</code>: the length of the cycle, in return values of <code>f</code>.</p></li><li><p><code>start</code>: the start of the cycle: a return value of <code>f</code>.</p></li><li><p><code>step</code> the number of sequential values to group.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected bins.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L141-L159" target="_blank" rel="noreferrer">source</a></p>',7))]),i("details",X,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.seasons",href:"#DimensionalData.seasons"},[i("span",{class:"jlbinding"},"DimensionalData.seasons")],-1)),s[82]||(s[82]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[83]||(s[83]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seasons</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">December, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for three month periods.</p><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start in December, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected quarters.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L174-L183" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",Y,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.months",href:"#DimensionalData.months"},[i("span",{class:"jlbinding"},"DimensionalData.months")],-1)),s[85]||(s[85]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[86]||(s[86]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">months</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">January, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary month periods. These can wrap around the end of a year.</p><ul><li><code>step</code> the number of months to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default months start in January, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected months.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L186-L199" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",P,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.hours",href:"#DimensionalData.hours"},[i("span",{class:"jlbinding"},"DimensionalData.hours")],-1)),s[88]||(s[88]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[89]||(s[89]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hours</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary hour periods. These can wrap around the end of the day.</p><ul><li><code>steps</code> the number of hours to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start at <code>0</code>, but any integer <code>1:24</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected hours of the day.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L202-L215" target="_blank" rel="noreferrer">source</a></p>',6))]),s[174]||(s[174]=i("h1",{id:"Utility-methods",tabindex:"-1"},[a("Utility methods "),i("a",{class:"header-anchor",href:"#Utility-methods","aria-label":'Permalink to "Utility methods {#Utility-methods}"'},"")],-1)),s[175]||(s[175]=i("p",null,"For transforming DimensionalData objects:",-1)),i("details",R,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.Lookups.set",href:"#DimensionalData.Dimensions.Lookups.set"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.set")],-1)),s[91]||(s[91]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[92]||(s[92]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, val)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501643</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.499298</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L218-L325" target="_blank" rel="noreferrer">source</a></p>`,18))]),i("details",I,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.DimGroupByArray",href:"#DimensionalData.DimGroupByArray"},[i("span",{class:"jlbinding"},"DimensionalData.DimGroupByArray")],-1)),s[67]||(s[67]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[68]||(s[68]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimGroupByArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span></code></pre></div><p><code>DimGroupByArray</code> is essentially a <code>DimArray</code> but holding the results of a <code>groupby</code> operation.</p><p>Its dimensions are the sorted results of the grouping functions used in <code>groupby</code>.</p><p>This wrapper allows for specialisations on later broadcast or reducing operations, e.g. for chunk reading with DiskArrays.jl, because we know the data originates from a single array.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",O,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Bins",href:"#DimensionalData.Bins"},[i("span",{class:"jlbinding"},"DimensionalData.Bins")],-1)),s[70]||(s[70]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[71]||(s[71]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, bins; labels, pad)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bins; labels, pad)</span></span></code></pre></div><p>Specify bins to reduce groups after applying function <code>f</code>.</p><ul><li><p><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</p></li><li><p><code>bins</code>:</p><ul><li><p>an <code>Integer</code> will divide the group values into equally spaced sections.</p></li><li><p>an <code>AbstractArray</code> of values will be treated as exact matches for the return value of <code>f</code>. For example, <code>1:3</code> will create 3 bins - 1, 2, 3.</p></li><li><p>an <code>AbstractArray</code> of <code>IntervalSets.Interval</code> can be used to explicitly define the intervals. Overlapping intervals have undefined behaviour.</p></li></ul></li></ul><p><strong>Keywords</strong></p><ul><li><p><code>pad</code>: fraction of the total interval to pad at each end when <code>Bins</code> contains an <code>Integer</code>. This avoids losing the edge values. Note this is a messy solution - it will often be prefereble to manually specify a <code>Vector</code> of chosen <code>Interval</code>s rather than relying on passing an <code>Integer</code> and <code>pad</code>.</p></li><li><p><code>labels</code>: a list of descriptive labels for the bins. The labels need to have the same length as <code>bins</code>.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L103-L126" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.ranges",href:"#DimensionalData.ranges"},[i("span",{class:"jlbinding"},"DimensionalData.ranges")],-1)),s[73]||(s[73]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[74]||(s[74]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ranges</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange{<:Integer}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L455-L459" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",q,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.intervals",href:"#DimensionalData.intervals"},[i("span",{class:"jlbinding"},"DimensionalData.intervals")],-1)),s[76]||(s[76]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[77]||(s[77]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L448-L452" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",z,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.CyclicBins",href:"#DimensionalData.CyclicBins"},[i("span",{class:"jlbinding"},"DimensionalData.CyclicBins")],-1)),s[79]||(s[79]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[80]||(s[80]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">CyclicBins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f; cycle, start, step, labels)</span></span></code></pre></div><p>Cyclic bins to reduce groups after applying function <code>f</code>. Groups can wrap around the cycle. This is used for grouping in <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.seasons"><code>seasons</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.months"><code>months</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.hours"><code>hours</code></a> but can also be used for custom cycles.</p><ul><li><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>cycle</code>: the length of the cycle, in return values of <code>f</code>.</p></li><li><p><code>start</code>: the start of the cycle: a return value of <code>f</code>.</p></li><li><p><code>step</code> the number of sequential values to group.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected bins.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L141-L159" target="_blank" rel="noreferrer">source</a></p>',7))]),i("details",X,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.seasons",href:"#DimensionalData.seasons"},[i("span",{class:"jlbinding"},"DimensionalData.seasons")],-1)),s[82]||(s[82]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[83]||(s[83]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seasons</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">December, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for three month periods.</p><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start in December, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected quarters.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L174-L183" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",Y,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.months",href:"#DimensionalData.months"},[i("span",{class:"jlbinding"},"DimensionalData.months")],-1)),s[85]||(s[85]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[86]||(s[86]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">months</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">January, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary month periods. These can wrap around the end of a year.</p><ul><li><code>step</code> the number of months to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default months start in January, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected months.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L186-L199" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",P,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.hours",href:"#DimensionalData.hours"},[i("span",{class:"jlbinding"},"DimensionalData.hours")],-1)),s[88]||(s[88]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[89]||(s[89]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hours</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary hour periods. These can wrap around the end of the day.</p><ul><li><code>steps</code> the number of hours to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start at <code>0</code>, but any integer <code>1:24</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected hours of the day.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L202-L215" target="_blank" rel="noreferrer">source</a></p>',6))]),s[174]||(s[174]=i("h1",{id:"Utility-methods",tabindex:"-1"},[a("Utility methods "),i("a",{class:"header-anchor",href:"#Utility-methods","aria-label":'Permalink to "Utility methods {#Utility-methods}"'},"")],-1)),s[175]||(s[175]=i("p",null,"For transforming DimensionalData objects:",-1)),i("details",R,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.Lookups.set",href:"#DimensionalData.Dimensions.Lookups.set"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.set")],-1)),s[91]||(s[91]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[92]||(s[92]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, val)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pairs...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> @@ -387,11 +387,11 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> -</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> -</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/set.jl#L3-L118" target="_blank" rel="noreferrer">source</a></p>`,20))]),i("details",G,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.Lookups.rebuild",href:"#DimensionalData.Dimensions.Lookups.rebuild"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.rebuild")],-1)),s[94]||(s[94]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[95]||(s[95]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an object struct with updated field values.</p><p><code>x</code> can be a <code>AbstractDimArray</code>, a <code>Dimension</code>, <code>Lookup</code> or other custom types.</p><p>This is an abstraction that allows inbuilt and custom types to be rebuilt to update their fields, as most objects in DimensionalData.jl are immutable.</p><p>Rebuild is mostly automated using <code>ConstructionBase.setproperties</code>. It should only be defined if your object has fields with with different names to DimensionalData objects. Try not to do that!</p><p>The arguments required are defined for the abstract type that has a <code>rebuild</code> method.</p><p><strong><code>AbstractBasicDimArray</code>:</strong></p><ul><li><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></li></ul><p><strong><code>AbstractDimArray</code>:</strong></p><ul><li><p><code>data</code>: the parent object - an <code>AbstractArray</code></p></li><li><p><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>refdims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A Symbol, or <code>NoName</code> and <code>Name</code> on GPU.</p></li><li><p><code>metadata</code>: A <code>Dict</code>-like object</p></li></ul><p><strong><code>AbstractDimStack</code>:</strong></p><ul><li><p><code>data</code>: the parent object, often a <code>NamedTuple</code></p></li><li><p><code>dims</code>, <code>refdims</code>, <code>metadata</code></p></li></ul><p><strong><code>Dimension</code>:</strong></p><ul><li><code>val</code>: anything.</li></ul><p><strong><code>Lookup</code>:</strong></p><ul><li><p><code>data</code>: the parent object, an <code>AbstractArray</code></p></li><li><p>Note: argument <code>rebuild</code> is deprecated on <code>AbstractDimArray</code> and</p></li></ul><p><code>AbstractDimStack</code> in favour of always using the keyword version. In future the argument version will only be used on <code>Dimension</code>, which only have one argument.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L3-L46" target="_blank" rel="noreferrer">source</a></p>',18))]),i("details",V,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.modify",href:"#DimensionalData.modify"},[i("span",{class:"jlbinding"},"DimensionalData.modify")],-1)),s[97]||(s[97]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[98]||(s[98]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/set.jl#L3-L118" target="_blank" rel="noreferrer">source</a></p>`,20))]),i("details",G,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.Lookups.rebuild",href:"#DimensionalData.Dimensions.Lookups.rebuild"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.rebuild")],-1)),s[94]||(s[94]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[95]||(s[95]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an object struct with updated field values.</p><p><code>x</code> can be a <code>AbstractDimArray</code>, a <code>Dimension</code>, <code>Lookup</code> or other custom types.</p><p>This is an abstraction that allows inbuilt and custom types to be rebuilt to update their fields, as most objects in DimensionalData.jl are immutable.</p><p>Rebuild is mostly automated using <code>ConstructionBase.setproperties</code>. It should only be defined if your object has fields with with different names to DimensionalData objects. Try not to do that!</p><p>The arguments required are defined for the abstract type that has a <code>rebuild</code> method.</p><p><strong><code>AbstractBasicDimArray</code>:</strong></p><ul><li><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></li></ul><p><strong><code>AbstractDimArray</code>:</strong></p><ul><li><p><code>data</code>: the parent object - an <code>AbstractArray</code></p></li><li><p><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>refdims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A Symbol, or <code>NoName</code> and <code>Name</code> on GPU.</p></li><li><p><code>metadata</code>: A <code>Dict</code>-like object</p></li></ul><p><strong><code>AbstractDimStack</code>:</strong></p><ul><li><p><code>data</code>: the parent object, often a <code>NamedTuple</code></p></li><li><p><code>dims</code>, <code>refdims</code>, <code>metadata</code></p></li></ul><p><strong><code>Dimension</code>:</strong></p><ul><li><code>val</code>: anything.</li></ul><p><strong><code>Lookup</code>:</strong></p><ul><li><p><code>data</code>: the parent object, an <code>AbstractArray</code></p></li><li><p>Note: argument <code>rebuild</code> is deprecated on <code>AbstractDimArray</code> and</p></li></ul><p><code>AbstractDimStack</code> in favour of always using the keyword version. In future the argument version will only be used on <code>Dimension</code>, which only have one argument.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L3-L46" target="_blank" rel="noreferrer">source</a></p>',18))]),i("details",V,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.modify",href:"#DimensionalData.modify"},[i("span",{class:"jlbinding"},"DimensionalData.modify")],-1)),s[97]||(s[97]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[98]||(s[98]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, lookupdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> typeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span></code></pre></div><p>Modify the parent data, rebuilding the object wrapper without change. <code>f</code> must return a <code>AbstractArray</code> of the same size as the original.</p><p>This method is mostly useful as a way of swapping the parent array type of an object.</p><p><strong>Example</strong></p><p>If we have a previously-defined <code>DimArray</code>, we can copy it to an Nvidia GPU with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(CuArray, A)</span></span></code></pre></div><p>This also works for all the data layers in a <code>DimStack</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L64-L86" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",M,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.@d",href:"#DimensionalData.@d"},[i("span",{class:"jlbinding"},"DimensionalData.@d")],-1)),s[100]||(s[100]=a()),t(n,{type:"info",class:"jlObjectType jlMacro",text:"Macro"})]),s[101]||(s[101]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> broadcast_expression options</span></span></code></pre></div><p>Dimensional broadcast macro extending Base Julia broadcasting to work with missing and permuted dimensions.</p><p>Will permute and resshape singleton dimensions so that all <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> in a broadcast will broadcast over matching dimensions.</p><p>It is possible to pass options as the second argument of the macro to control the behaviour, as a single assignment or as a NamedTuple. Options names must be written explicitly, not passed in namedtuple variable.</p><p><strong>Options</strong></p><ul><li><p><code>dims</code>: Pass a Tuple of <code>Dimension</code>s, <code>Dimension</code> types or <code>Symbol</code>s to fix the dimension order of the output array. Otherwise dimensions will be in order of appearance. If dims with lookups are passed, these will be applied to the returned array with <code>set</code>.</p></li><li><p><code>strict</code>: <code>true</code> or <code>false</code>. Check that all lookup values match explicitly.</p></li></ul><p>All other keywords are passed to <code>DimensionalData.rebuild</code>. This means <code>name</code>, <code>metadata</code>, etc for the returned array can be set here, or for example <code>missingval</code> in Rasters.jl.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(CuArray, A)</span></span></code></pre></div><p>This also works for all the data layers in a <code>DimStack</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L64-L86" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",M,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.@d",href:"#DimensionalData.@d"},[i("span",{class:"jlbinding"},"DimensionalData.@d")],-1)),s[100]||(s[100]=a()),t(n,{type:"info",class:"jlObjectType jlMacro",text:"Macro"})]),s[101]||(s[101]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> broadcast_expression options</span></span></code></pre></div><p>Dimensional broadcast macro extending Base Julia broadcasting to work with missing and permuted dimensions.</p><p>Will permute and resshape singleton dimensions so that all <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> in a broadcast will broadcast over matching dimensions.</p><p>It is possible to pass options as the second argument of the macro to control the behaviour, as a single assignment or as a NamedTuple. Options names must be written explicitly, not passed in namedtuple variable.</p><p><strong>Options</strong></p><ul><li><p><code>dims</code>: Pass a Tuple of <code>Dimension</code>s, <code>Dimension</code> types or <code>Symbol</code>s to fix the dimension order of the output array. Otherwise dimensions will be in order of appearance. If dims with lookups are passed, these will be applied to the returned array with <code>set</code>.</p></li><li><p><code>strict</code>: <code>true</code> or <code>false</code>. Check that all lookup values match explicitly.</p></li></ul><p>All other keywords are passed to <code>DimensionalData.rebuild</code>. This means <code>name</code>, <code>metadata</code>, etc for the returned array can be set here, or for example <code>missingval</code> in Rasters.jl.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"></span> @@ -403,7 +403,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2</span></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Use parentheses areound \`@.\` if you need to pass options</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.+</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Y, X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L103-L157" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",U,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.broadcast_dims",href:"#DimensionalData.broadcast_dims"},[i("span",{class:"jlbinding"},"DimensionalData.broadcast_dims")],-1)),s[103]||(s[103]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[104]||(s[104]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, permuting and reshaping dimensions to match where required. The result will contain all the dimensions in all passed in arrays in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</li></ul><p>This is like broadcasting over every slice of <code>A</code> if it is sliced by the dimensions of <code>B</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L110-L123" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",Z,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.broadcast_dims!",href:"#DimensionalData.broadcast_dims!"},[i("span",{class:"jlbinding"},"DimensionalData.broadcast_dims!")],-1)),s[106]||(s[106]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[107]||(s[107]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dest</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dest</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, writing to <code>dest</code>. <code>sources</code> are permuting and reshaping dimensions to match where required.</p><p>The result will contain all the dimensions in all passed in arrays, in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><p><code>dest</code>: <code>AbstractDimArray</code> to update.</p></li><li><p><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L139-L152" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",K,[i("summary",null,[s[108]||(s[108]=i("a",{id:"DimensionalData.mergedims",href:"#DimensionalData.mergedims"},[i("span",{class:"jlbinding"},"DimensionalData.mergedims")],-1)),s[109]||(s[109]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[110]||(s[110]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a dimension <code>new_dim</code> whose indices are a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the indices of <code>old_dims</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L719-L724" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim, others</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dims_new</span></span></code></pre></div><p>If dimensions <code>old_dims</code>, <code>new_dim</code>, etc. are found in <code>dims</code>, then return new <code>dims_new</code> where all dims in <code>old_dims</code> have been combined into a single dim <code>new_dim</code>. The returned dimension will keep only the name of <code>new_dim</code>. Its coords will be a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the coords of the dims in <code>old_dims</code>. New dimensions are always placed at the end of <code>dims_new</code>. <code>others</code> contains other dimension pairs to be merged.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.+</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Y, X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L103-L157" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",U,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.broadcast_dims",href:"#DimensionalData.broadcast_dims"},[i("span",{class:"jlbinding"},"DimensionalData.broadcast_dims")],-1)),s[103]||(s[103]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[104]||(s[104]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, permuting and reshaping dimensions to match where required. The result will contain all the dimensions in all passed in arrays in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</li></ul><p>This is like broadcasting over every slice of <code>A</code> if it is sliced by the dimensions of <code>B</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L110-L123" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",Z,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.broadcast_dims!",href:"#DimensionalData.broadcast_dims!"},[i("span",{class:"jlbinding"},"DimensionalData.broadcast_dims!")],-1)),s[106]||(s[106]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[107]||(s[107]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dest</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dest</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, writing to <code>dest</code>. <code>sources</code> are permuting and reshaping dimensions to match where required.</p><p>The result will contain all the dimensions in all passed in arrays, in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><p><code>dest</code>: <code>AbstractDimArray</code> to update.</p></li><li><p><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L139-L152" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",K,[i("summary",null,[s[108]||(s[108]=i("a",{id:"DimensionalData.mergedims",href:"#DimensionalData.mergedims"},[i("span",{class:"jlbinding"},"DimensionalData.mergedims")],-1)),s[109]||(s[109]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[110]||(s[110]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a dimension <code>new_dim</code> whose indices are a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the indices of <code>old_dims</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L719-L724" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim, others</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dims_new</span></span></code></pre></div><p>If dimensions <code>old_dims</code>, <code>new_dim</code>, etc. are found in <code>dims</code>, then return new <code>dims_new</code> where all dims in <code>old_dims</code> have been combined into a single dim <code>new_dim</code>. The returned dimension will keep only the name of <code>new_dim</code>. Its coords will be a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the coords of the dims in <code>old_dims</code>. New dimensions are always placed at the end of <code>dims_new</code>. <code>others</code> contains other dimension pairs to be merged.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span> @@ -412,9 +412,9 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds, (X, Y) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :space</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Ti [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">],</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> space MergedLookup{Tuple{Float64, Int64}} [(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">…</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)] (</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L730-L753" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are the result of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(dims(A), dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L783-L788" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",W,[i("summary",null,[s[111]||(s[111]=i("a",{id:"DimensionalData.unmergedims",href:"#DimensionalData.unmergedims"},[i("span",{class:"jlbinding"},"DimensionalData.unmergedims")],-1)),s[112]||(s[112]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[113]||(s[113]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(merged_dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Return the unmerged dimensions from a tuple of merged dimensions. However, the order of the original dimensions are not necessarily preserved.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L800-L804" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are restored to their original prior to calling <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(A, dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L811-L816" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",J,[i("summary",null,[s[114]||(s[114]=i("a",{id:"DimensionalData.reorder",href:"#DimensionalData.reorder"},[i("span",{class:"jlbinding"},"DimensionalData.reorder")],-1)),s[115]||(s[115]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[116]||(s[116]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> space MergedLookup{Tuple{Float64, Int64}} [(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">…</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)] (</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L730-L753" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are the result of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(dims(A), dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L783-L788" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",W,[i("summary",null,[s[111]||(s[111]=i("a",{id:"DimensionalData.unmergedims",href:"#DimensionalData.unmergedims"},[i("span",{class:"jlbinding"},"DimensionalData.unmergedims")],-1)),s[112]||(s[112]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[113]||(s[113]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(merged_dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Return the unmerged dimensions from a tuple of merged dimensions. However, the order of the original dimensions are not necessarily preserved.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L800-L804" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are restored to their original prior to calling <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(A, dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L811-L816" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",J,[i("summary",null,[s[114]||(s[114]=i("a",{id:"DimensionalData.reorder",href:"#DimensionalData.reorder"},[i("span",{class:"jlbinding"},"DimensionalData.reorder")],-1)),s[115]||(s[115]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[116]||(s[116]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Reorder every dims index/array to <code>order</code>, or reorder index for the given dimension(s) in <code>order</code>.</p><p><code>order</code> can be an <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>, <code>Dimension => Order</code> pairs. A Tuple of Dimensions or any object that defines <code>dims</code> can be used in which case the dimensions of this object are used for reordering.</p><p>If no axis reversal is required the same objects will be returned, without allocation.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -428,7 +428,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(rev, da) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">==</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L2-L33" target="_blank" rel="noreferrer">source</a></p>`,7))]),s[176]||(s[176]=i("h1",{id:"Global-lookup-strictness-settings",tabindex:"-1"},[a("Global lookup strictness settings "),i("a",{class:"header-anchor",href:"#Global-lookup-strictness-settings","aria-label":'Permalink to "Global lookup strictness settings {#Global-lookup-strictness-settings}"'},"")],-1)),s[177]||(s[177]=i("p",null,[a("Control how strict DimensionalData when comparing "),i("a",{href:"/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"},[i("code",null,"Lookup")]),a("s before doing broadcasts and matrix multipications.")],-1)),s[178]||(s[178]=i("p",null,[a("In some cases (especially "),i("code",null,"DimVector"),a(" and small "),i("code",null,"DimArray"),a(") checking lookup values match may be too costly compared to the operations. You can turn check the current setting and turn them on or off with these methods.")],-1)),i("details",$,[i("summary",null,[s[117]||(s[117]=i("a",{id:"DimensionalData.strict_broadcast",href:"#DimensionalData.strict_broadcast"},[i("span",{class:"jlbinding"},"DimensionalData.strict_broadcast")],-1)),s[118]||(s[118]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[119]||(s[119]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strict broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L16-L22" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",H,[i("summary",null,[s[120]||(s[120]=i("a",{id:"DimensionalData.strict_broadcast!",href:"#DimensionalData.strict_broadcast!"},[i("span",{class:"jlbinding"},"DimensionalData.strict_broadcast!")],-1)),s[121]||(s[121]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[122]||(s[122]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global broadcasting checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L25-L31" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",Q,[i("summary",null,[s[123]||(s[123]=i("a",{id:"DimensionalData.strict_matmul",href:"#DimensionalData.strict_matmul"},[i("span",{class:"jlbinding"},"DimensionalData.strict_matmul")],-1)),s[124]||(s[124]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[125]||(s[125]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strickt broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/matmul.jl#L13-L19" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",_,[i("summary",null,[s[126]||(s[126]=i("a",{id:"DimensionalData.strict_matmul!",href:"#DimensionalData.strict_matmul!"},[i("span",{class:"jlbinding"},"DimensionalData.strict_matmul!")],-1)),s[127]||(s[127]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[128]||(s[128]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global matrix multiplication checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/matmul.jl#L22-L28" target="_blank" rel="noreferrer">source</a></p>',5))]),s[179]||(s[179]=i("p",null,"Base methods",-1)),i("details",ss,[i("summary",null,[s[129]||(s[129]=i("a",{id:"Base.cat",href:"#Base.cat"},[i("span",{class:"jlbinding"},"Base.cat")],-1)),s[130]||(s[130]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[131]||(s[131]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])], dims)</span></span></code></pre></div><p>Concatenate all or a subset of layers for all passed in stacks.</p><p><strong>Keywords</strong></p><ul><li><p><code>keys</code>: <code>Tuple</code> of <code>Symbol</code> for the stack keys to concatenate.</p></li><li><p><code>dims</code>: Dimension of child array to concatenate on.</p></li></ul><p><strong>Example</strong></p><p>Concatenate the :sea_surface_temp and :humidity layers in the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L99-L116" target="_blank" rel="noreferrer">source</a></p>',8))]),i("details",is,[i("summary",null,[s[132]||(s[132]=i("a",{id:"Base.copy!",href:"#Base.copy!"},[i("span",{class:"jlbinding"},"Base.copy!")],-1)),s[133]||(s[133]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[134]||(s[134]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, key</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Key</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Copy the stack layer <code>key</code> to <code>dst</code>, which can be any <code>AbstractArray</code>.</p><p><strong>Example</strong></p><p>Copy the <code>:humidity</code> layer from <code>stack</code> to <code>array</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(array, stack, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L3-L15" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst)])</span></span></code></pre></div><p>Copy all or a subset of layers from one stack to another.</p><p><strong>Example</strong></p><p>Copy just the <code>:sea_surface_temp</code> and <code>:humidity</code> layers from <code>src</code> to <code>dst</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L18-L30" target="_blank" rel="noreferrer">source</a></p>',12))]),i("details",as,[i("summary",null,[s[135]||(s[135]=i("a",{id:"Base.eachslice",href:"#Base.eachslice"},[i("span",{class:"jlbinding"},"Base.eachslice")],-1)),s[136]||(s[136]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[137]||(s[137]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims,drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>A</code>, returning arrays that select all the data from the other dimensions in <code>A</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code> if <code>drop=true</code>. Otherwise it will have the same dimensionality as the underlying array with inner dimensions having size 1.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/methods.jl#L112-L120" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stack</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims, drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>stack</code>, returning stacks that select all the data from the other dimensions in <code>stack</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code>.</p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L2-L33" target="_blank" rel="noreferrer">source</a></p>`,7))]),s[176]||(s[176]=i("h1",{id:"Global-lookup-strictness-settings",tabindex:"-1"},[a("Global lookup strictness settings "),i("a",{class:"header-anchor",href:"#Global-lookup-strictness-settings","aria-label":'Permalink to "Global lookup strictness settings {#Global-lookup-strictness-settings}"'},"")],-1)),s[177]||(s[177]=i("p",null,[a("Control how strict DimensionalData when comparing "),i("a",{href:"/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"},[i("code",null,"Lookup")]),a("s before doing broadcasts and matrix multipications.")],-1)),s[178]||(s[178]=i("p",null,[a("In some cases (especially "),i("code",null,"DimVector"),a(" and small "),i("code",null,"DimArray"),a(") checking lookup values match may be too costly compared to the operations. You can turn check the current setting and turn them on or off with these methods.")],-1)),i("details",$,[i("summary",null,[s[117]||(s[117]=i("a",{id:"DimensionalData.strict_broadcast",href:"#DimensionalData.strict_broadcast"},[i("span",{class:"jlbinding"},"DimensionalData.strict_broadcast")],-1)),s[118]||(s[118]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[119]||(s[119]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strict broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L16-L22" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",H,[i("summary",null,[s[120]||(s[120]=i("a",{id:"DimensionalData.strict_broadcast!",href:"#DimensionalData.strict_broadcast!"},[i("span",{class:"jlbinding"},"DimensionalData.strict_broadcast!")],-1)),s[121]||(s[121]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[122]||(s[122]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global broadcasting checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L25-L31" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",Q,[i("summary",null,[s[123]||(s[123]=i("a",{id:"DimensionalData.strict_matmul",href:"#DimensionalData.strict_matmul"},[i("span",{class:"jlbinding"},"DimensionalData.strict_matmul")],-1)),s[124]||(s[124]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[125]||(s[125]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strickt broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/matmul.jl#L13-L19" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",_,[i("summary",null,[s[126]||(s[126]=i("a",{id:"DimensionalData.strict_matmul!",href:"#DimensionalData.strict_matmul!"},[i("span",{class:"jlbinding"},"DimensionalData.strict_matmul!")],-1)),s[127]||(s[127]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[128]||(s[128]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global matrix multiplication checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/matmul.jl#L22-L28" target="_blank" rel="noreferrer">source</a></p>',5))]),s[179]||(s[179]=i("p",null,"Base methods",-1)),i("details",ss,[i("summary",null,[s[129]||(s[129]=i("a",{id:"Base.cat",href:"#Base.cat"},[i("span",{class:"jlbinding"},"Base.cat")],-1)),s[130]||(s[130]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[131]||(s[131]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])], dims)</span></span></code></pre></div><p>Concatenate all or a subset of layers for all passed in stacks.</p><p><strong>Keywords</strong></p><ul><li><p><code>keys</code>: <code>Tuple</code> of <code>Symbol</code> for the stack keys to concatenate.</p></li><li><p><code>dims</code>: Dimension of child array to concatenate on.</p></li></ul><p><strong>Example</strong></p><p>Concatenate the :sea_surface_temp and :humidity layers in the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L99-L116" target="_blank" rel="noreferrer">source</a></p>',8))]),i("details",is,[i("summary",null,[s[132]||(s[132]=i("a",{id:"Base.copy!",href:"#Base.copy!"},[i("span",{class:"jlbinding"},"Base.copy!")],-1)),s[133]||(s[133]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[134]||(s[134]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, key</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Key</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Copy the stack layer <code>key</code> to <code>dst</code>, which can be any <code>AbstractArray</code>.</p><p><strong>Example</strong></p><p>Copy the <code>:humidity</code> layer from <code>stack</code> to <code>array</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(array, stack, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L3-L15" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst)])</span></span></code></pre></div><p>Copy all or a subset of layers from one stack to another.</p><p><strong>Example</strong></p><p>Copy just the <code>:sea_surface_temp</code> and <code>:humidity</code> layers from <code>src</code> to <code>dst</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L18-L30" target="_blank" rel="noreferrer">source</a></p>',12))]),i("details",as,[i("summary",null,[s[135]||(s[135]=i("a",{id:"Base.eachslice",href:"#Base.eachslice"},[i("span",{class:"jlbinding"},"Base.eachslice")],-1)),s[136]||(s[136]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[137]||(s[137]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims,drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>A</code>, returning arrays that select all the data from the other dimensions in <code>A</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code> if <code>drop=true</code>. Otherwise it will have the same dimensionality as the underlying array with inner dimensions having size 1.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/methods.jl#L112-L120" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stack</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims, drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>stack</code>, returning stacks that select all the data from the other dimensions in <code>stack</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code>.</p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">randn</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), Z)),</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">randn</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), Ti))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ));</span></span> @@ -451,13 +451,13 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">├──────────────────────────────────────────────── layers ┤</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :x</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> eltype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Float64 dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y size</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> eltype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Float64 dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, Ti size</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">×</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────┘</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L49-L85" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[180]||(s[180]=i("p",null,[a("Most base methods work as expected, using "),i("code",null,"Dimension"),a(" wherever a "),i("code",null,"dims"),a(" keyword is used. They are not all specifically documented here.")],-1)),s[181]||(s[181]=i("h2",{id:"name",tabindex:"-1"},[a("Name "),i("a",{class:"header-anchor",href:"#name","aria-label":'Permalink to "Name"'},"")],-1)),i("details",ns,[i("summary",null,[s[138]||(s[138]=i("a",{id:"DimensionalData.AbstractName",href:"#DimensionalData.AbstractName"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractName")],-1)),s[139]||(s[139]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[140]||(s[140]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractName</span></span></code></pre></div><p>Abstract supertype for name wrappers.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",ts,[i("summary",null,[s[141]||(s[141]=i("a",{id:"DimensionalData.Name",href:"#DimensionalData.Name"},[i("span",{class:"jlbinding"},"DimensionalData.Name")],-1)),s[142]||(s[142]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[143]||(s[143]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────┘</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L49-L85" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[180]||(s[180]=i("p",null,[a("Most base methods work as expected, using "),i("code",null,"Dimension"),a(" wherever a "),i("code",null,"dims"),a(" keyword is used. They are not all specifically documented here.")],-1)),s[181]||(s[181]=i("h2",{id:"name",tabindex:"-1"},[a("Name "),i("a",{class:"header-anchor",href:"#name","aria-label":'Permalink to "Name"'},"")],-1)),i("details",ns,[i("summary",null,[s[138]||(s[138]=i("a",{id:"DimensionalData.AbstractName",href:"#DimensionalData.AbstractName"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractName")],-1)),s[139]||(s[139]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[140]||(s[140]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractName</span></span></code></pre></div><p>Abstract supertype for name wrappers.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",ts,[i("summary",null,[s[141]||(s[141]=i("a",{id:"DimensionalData.Name",href:"#DimensionalData.Name"},[i("span",{class:"jlbinding"},"DimensionalData.Name")],-1)),s[142]||(s[142]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[143]||(s[143]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{Symbol,Name) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Name</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NoName</span></span></code></pre></div><p>Name wrapper. This lets arrays keep symbol names when the array wrapper needs to be <code>isbits</code>, like for use on GPUs. It makes the name a property of the type. It's not necessary to use in normal use, a symbol is probably easier.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L23-L32" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ls,[i("summary",null,[s[144]||(s[144]=i("a",{id:"DimensionalData.NoName",href:"#DimensionalData.NoName"},[i("span",{class:"jlbinding"},"DimensionalData.NoName")],-1)),s[145]||(s[145]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[146]||(s[146]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoName </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NoName</span></span></code></pre></div><p>Name wrapper. This lets arrays keep symbol names when the array wrapper needs to be <code>isbits</code>, like for use on GPUs. It makes the name a property of the type. It's not necessary to use in normal use, a symbol is probably easier.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L23-L32" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ls,[i("summary",null,[s[144]||(s[144]=i("a",{id:"DimensionalData.NoName",href:"#DimensionalData.NoName"},[i("span",{class:"jlbinding"},"DimensionalData.NoName")],-1)),s[145]||(s[145]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[146]||(s[146]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoName </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>NoName specifies an array is not named, and is the default <code>name</code> value for all <code>AbstractDimArray</code>s.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L10-L17" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[182]||(s[182]=i("h2",{id:"Internal-interface",tabindex:"-1"},[a("Internal interface "),i("a",{class:"header-anchor",href:"#Internal-interface","aria-label":'Permalink to "Internal interface {#Internal-interface}"'},"")],-1)),i("details",es,[i("summary",null,[s[147]||(s[147]=i("a",{id:"DimensionalData.DimArrayInterface",href:"#DimensionalData.DimArrayInterface"},[i("span",{class:"jlbinding"},"DimensionalData.DimArrayInterface")],-1)),s[148]||(s[148]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[149]||(s[149]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArrayInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_parent_kw, :rebuild_dims_kw, :rebuild)</code> and optional components <code>(:refdims, :name, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches dimensions of array</p></li><li><p><code>size</code>: length of dims matches dimensions of array</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>name</code>:</p><ul><li><p>rebuild updates name in arg rebuild</p></li><li><p>rebuild updates name in kw rebuild</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p>',11))]),i("details",hs,[i("summary",null,[s[150]||(s[150]=i("a",{id:"DimensionalData.DimStackInterface",href:"#DimensionalData.DimStackInterface"},[i("span",{class:"jlbinding"},"DimensionalData.DimStackInterface")],-1)),s[151]||(s[151]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[152]||(s[152]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStackInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_layerdims, :rebuild_dims_kw, :rebuild_parent_kw, :rebuild_layerdims_kw, :rebuild)</code> and optional components <code>(:refdims, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches ndims of stack</p></li><li><p><code>size</code>: length of dims matches size of stack</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_layerdims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_layerdims_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p>',11))]),i("details",ks,[i("summary",null,[s[153]||(s[153]=i("a",{id:"DimensionalData.rebuild_from_arrays",href:"#DimensionalData.rebuild_from_arrays"},[i("span",{class:"jlbinding"},"DimensionalData.rebuild_from_arrays")],-1)),s[154]||(s[154]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[155]||(s[155]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild_from_arrays</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, das</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NamedTuple{<:Any,<:Tuple{Vararg{AbstractDimArray}}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an <code>AbstractDimStack</code> from a <code>Tuple</code> or <code>NamedTuple</code> of <code>AbstractDimArray</code> and an existing stack.</p><p><strong>Keywords</strong></p><p>Keywords are simply the fields of the stack object:</p><ul><li><p><code>data</code></p></li><li><p><code>dims</code></p></li><li><p><code>refdims</code></p></li><li><p><code>metadata</code></p></li><li><p><code>layerdims</code></p></li><li><p><code>layermetadata</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L79-L95" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",ps,[i("summary",null,[s[156]||(s[156]=i("a",{id:"DimensionalData.show_main",href:"#DimensionalData.show_main"},[i("span",{class:"jlbinding"},"DimensionalData.show_main")],-1)),s[157]||(s[157]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[158]||(s[158]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding the main part of <code>show</code></p><p>At the least, you likely want to call:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_top</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, mime, A)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/show.jl#L27-L40" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",ds,[i("summary",null,[s[159]||(s[159]=i("a",{id:"DimensionalData.show_after",href:"#DimensionalData.show_after"},[i("span",{class:"jlbinding"},"DimensionalData.show_after")],-1)),s[160]||(s[160]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[161]||(s[161]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding additional <code>show</code> text for AbstractDimArray/AbstractDimStack subtypes.</p><p><em>Always include <code>kw</code> to avoid future breaking changes</em></p><p>Additional keywords may be added at any time.</p><p><code>blockwidth</code> is passed in context</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">blockwidth </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> get</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:blockwidth</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Note - a ANSI box is left unclosed. This method needs to close it, or add more. <code>blockwidth</code> is the maximum length of the inner text.</p><p>Most likely you always want to at least close the show blocks with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_block_close</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, blockwidth)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/show.jl#L47-L75" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",rs,[i("summary",null,[s[162]||(s[162]=i("a",{id:"DimensionalData.refdims_title",href:"#DimensionalData.refdims_title"},[i("span",{class:"jlbinding"},"DimensionalData.refdims_title")],-1)),s[163]||(s[163]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[164]||(s[164]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>NoName specifies an array is not named, and is the default <code>name</code> value for all <code>AbstractDimArray</code>s.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L10-L17" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[182]||(s[182]=i("h2",{id:"Internal-interface",tabindex:"-1"},[a("Internal interface "),i("a",{class:"header-anchor",href:"#Internal-interface","aria-label":'Permalink to "Internal interface {#Internal-interface}"'},"")],-1)),i("details",es,[i("summary",null,[s[147]||(s[147]=i("a",{id:"DimensionalData.DimArrayInterface",href:"#DimensionalData.DimArrayInterface"},[i("span",{class:"jlbinding"},"DimensionalData.DimArrayInterface")],-1)),s[148]||(s[148]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[149]||(s[149]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArrayInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_parent_kw, :rebuild_dims_kw, :rebuild)</code> and optional components <code>(:refdims, :name, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches dimensions of array</p></li><li><p><code>size</code>: length of dims matches dimensions of array</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>name</code>:</p><ul><li><p>rebuild updates name in arg rebuild</p></li><li><p>rebuild updates name in kw rebuild</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p>',11))]),i("details",hs,[i("summary",null,[s[150]||(s[150]=i("a",{id:"DimensionalData.DimStackInterface",href:"#DimensionalData.DimStackInterface"},[i("span",{class:"jlbinding"},"DimensionalData.DimStackInterface")],-1)),s[151]||(s[151]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[152]||(s[152]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStackInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_layerdims, :rebuild_dims_kw, :rebuild_parent_kw, :rebuild_layerdims_kw, :rebuild)</code> and optional components <code>(:refdims, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches ndims of stack</p></li><li><p><code>size</code>: length of dims matches size of stack</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_layerdims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_layerdims_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p>',11))]),i("details",ks,[i("summary",null,[s[153]||(s[153]=i("a",{id:"DimensionalData.rebuild_from_arrays",href:"#DimensionalData.rebuild_from_arrays"},[i("span",{class:"jlbinding"},"DimensionalData.rebuild_from_arrays")],-1)),s[154]||(s[154]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[155]||(s[155]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild_from_arrays</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, das</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NamedTuple{<:Any,<:Tuple{Vararg{AbstractDimArray}}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an <code>AbstractDimStack</code> from a <code>Tuple</code> or <code>NamedTuple</code> of <code>AbstractDimArray</code> and an existing stack.</p><p><strong>Keywords</strong></p><p>Keywords are simply the fields of the stack object:</p><ul><li><p><code>data</code></p></li><li><p><code>dims</code></p></li><li><p><code>refdims</code></p></li><li><p><code>metadata</code></p></li><li><p><code>layerdims</code></p></li><li><p><code>layermetadata</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L79-L95" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",ps,[i("summary",null,[s[156]||(s[156]=i("a",{id:"DimensionalData.show_main",href:"#DimensionalData.show_main"},[i("span",{class:"jlbinding"},"DimensionalData.show_main")],-1)),s[157]||(s[157]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[158]||(s[158]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding the main part of <code>show</code></p><p>At the least, you likely want to call:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_top</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, mime, A)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/show.jl#L27-L40" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",ds,[i("summary",null,[s[159]||(s[159]=i("a",{id:"DimensionalData.show_after",href:"#DimensionalData.show_after"},[i("span",{class:"jlbinding"},"DimensionalData.show_after")],-1)),s[160]||(s[160]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[161]||(s[161]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding additional <code>show</code> text for AbstractDimArray/AbstractDimStack subtypes.</p><p><em>Always include <code>kw</code> to avoid future breaking changes</em></p><p>Additional keywords may be added at any time.</p><p><code>blockwidth</code> is passed in context</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">blockwidth </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> get</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:blockwidth</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Note - a ANSI box is left unclosed. This method needs to close it, or add more. <code>blockwidth</code> is the maximum length of the inner text.</p><p>Most likely you always want to at least close the show blocks with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_block_close</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, blockwidth)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/show.jl#L47-L75" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",rs,[i("summary",null,[s[162]||(s[162]=i("a",{id:"DimensionalData.refdims_title",href:"#DimensionalData.refdims_title"},[i("span",{class:"jlbinding"},"DimensionalData.refdims_title")],-1)),s[163]||(s[163]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[164]||(s[164]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a title string based on reference dimension values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/plotrecipes.jl#L159-L165" target="_blank" rel="noreferrer">source</a></p>`,3))])])}const us=e(d,[["render",os]]);export{ms as __pageData,us as default}; +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a title string based on reference dimension values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/plotrecipes.jl#L159-L165" target="_blank" rel="noreferrer">source</a></p>`,3))])])}const us=e(d,[["render",os]]);export{ms as __pageData,us as default}; diff --git a/dev/assets/api_reference.md.Brz0Wk34.lean.js b/dev/assets/api_reference.md.Cbzd03zL.lean.js similarity index 98% rename from dev/assets/api_reference.md.Brz0Wk34.lean.js rename to dev/assets/api_reference.md.Cbzd03zL.lean.js index 82e636eb8..ce337a054 100644 --- a/dev/assets/api_reference.md.Brz0Wk34.lean.js +++ b/dev/assets/api_reference.md.Cbzd03zL.lean.js @@ -1,4 +1,4 @@ -import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framework.C6EFuEL4.js";const ms=JSON.parse('{"title":"API Reference","description":"","frontmatter":{},"headers":[],"relativePath":"api/reference.md","filePath":"api/reference.md","lastUpdated":null}'),d={name:"api/reference.md"},r={class:"jldocstring custom-block",open:""},o={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ns={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},hs={class:"jldocstring custom-block",open:""},ks={class:"jldocstring custom-block",open:""},ps={class:"jldocstring custom-block",open:""},ds={class:"jldocstring custom-block",open:""},rs={class:"jldocstring custom-block",open:""};function os(gs,s,Es,ys,cs,Fs){const n=k("Badge");return p(),h("div",null,[s[165]||(s[165]=i("h1",{id:"API-Reference",tabindex:"-1"},[a("API Reference "),i("a",{class:"header-anchor",href:"#API-Reference","aria-label":'Permalink to "API Reference {#API-Reference}"'},"")],-1)),s[166]||(s[166]=i("h2",{id:"arrays",tabindex:"-1"},[a("Arrays "),i("a",{class:"header-anchor",href:"#arrays","aria-label":'Permalink to "Arrays"'},"")],-1)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.AbstractBasicDimArray",href:"#DimensionalData.AbstractBasicDimArray"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractBasicDimArray")],-1)),s[1]||(s[1]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[2]||(s[2]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractBasicDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span></code></pre></div><p>The abstract supertype for all arrays with a <code>dims</code> method that returns a <code>Tuple</code> of <code>Dimension</code></p><p>Only keyword <code>rebuild</code> is guaranteed to work with <code>AbstractBasicDimArray</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L3-L10" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",o,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.AbstractDimArray",href:"#DimensionalData.AbstractDimArray"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimArray")],-1)),s[4]||(s[4]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractBasicArray</span></span></code></pre></div><p>Abstract supertype for all "dim" arrays.</p><p>These arrays return a <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> from a <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> method, and can be rebuilt using <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a>.</p><p><code>parent</code> must return the source array.</p><p>They should have <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.metadata"><code>metadata</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.refdims"><code>refdims</code></a> methods, although these are optional.</p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> method for <code>AbstractDimArray</code> must accept <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code> arguments.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L41-L59" target="_blank" rel="noreferrer">source</a></p>',8))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.DimArray",href:"#DimensionalData.DimArray"},[i("span",{class:"jlbinding"},"DimensionalData.DimArray")],-1)),s[7]||(s[7]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span> +import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framework.B8l2DGq3.js";const ms=JSON.parse('{"title":"API Reference","description":"","frontmatter":{},"headers":[],"relativePath":"api/reference.md","filePath":"api/reference.md","lastUpdated":null}'),d={name:"api/reference.md"},r={class:"jldocstring custom-block",open:""},o={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},u={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ns={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},hs={class:"jldocstring custom-block",open:""},ks={class:"jldocstring custom-block",open:""},ps={class:"jldocstring custom-block",open:""},ds={class:"jldocstring custom-block",open:""},rs={class:"jldocstring custom-block",open:""};function os(gs,s,Es,ys,cs,Fs){const n=k("Badge");return p(),h("div",null,[s[165]||(s[165]=i("h1",{id:"API-Reference",tabindex:"-1"},[a("API Reference "),i("a",{class:"header-anchor",href:"#API-Reference","aria-label":'Permalink to "API Reference {#API-Reference}"'},"")],-1)),s[166]||(s[166]=i("h2",{id:"arrays",tabindex:"-1"},[a("Arrays "),i("a",{class:"header-anchor",href:"#arrays","aria-label":'Permalink to "Arrays"'},"")],-1)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"DimensionalData.AbstractBasicDimArray",href:"#DimensionalData.AbstractBasicDimArray"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractBasicDimArray")],-1)),s[1]||(s[1]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[2]||(s[2]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractBasicDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span></code></pre></div><p>The abstract supertype for all arrays with a <code>dims</code> method that returns a <code>Tuple</code> of <code>Dimension</code></p><p>Only keyword <code>rebuild</code> is guaranteed to work with <code>AbstractBasicDimArray</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L3-L10" target="_blank" rel="noreferrer">source</a></p>',4))]),i("details",o,[i("summary",null,[s[3]||(s[3]=i("a",{id:"DimensionalData.AbstractDimArray",href:"#DimensionalData.AbstractDimArray"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimArray")],-1)),s[4]||(s[4]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[5]||(s[5]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractBasicArray</span></span></code></pre></div><p>Abstract supertype for all "dim" arrays.</p><p>These arrays return a <code>Tuple</code> of <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a> from a <a href="/DimensionalData.jl/dev/extending_dd#dims"><code>dims</code></a> method, and can be rebuilt using <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a>.</p><p><code>parent</code> must return the source array.</p><p>They should have <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.metadata"><code>metadata</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.refdims"><code>refdims</code></a> methods, although these are optional.</p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> method for <code>AbstractDimArray</code> must accept <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code> arguments.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L41-L59" target="_blank" rel="noreferrer">source</a></p>',8))]),i("details",g,[i("summary",null,[s[6]||(s[6]=i("a",{id:"DimensionalData.DimArray",href:"#DimensionalData.DimArray"},[i("span",{class:"jlbinding"},"DimensionalData.DimArray")],-1)),s[7]||(s[7]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[8]||(s[8]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims, refdims, name, metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; refdims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(), metadata</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoMetadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">())</span></span></code></pre></div><p>The main concrete subtype of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a>.</p><p><code>DimArray</code> maintains and updates its <code>Dimension</code>s through transformations and moves dimensions to reference dimension <code>refdims</code> after reducing operations (like e.g. <code>mean</code>).</p><p><strong>Arguments</strong></p><ul><li><p><code>data</code>: An <code>AbstractArray</code>.</p></li><li><p><code>dims</code>: A <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A string name for the array. Shows in plots and tables.</p></li><li><p><code>refdims</code>: refence dimensions. Usually set programmatically to track past slices and reductions of dimension for labelling and reconstruction.</p></li><li><p><code>metadata</code>: <code>Dict</code> or <code>Metadata</code> object, or <code>NoMetadata()</code></p></li></ul><p>Indexing can be done with all regular indices, or with <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s and/or <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Selector"><code>Selector</code></a>s.</p><p>Indexing <code>AbstractDimArray</code> with non-range <code>AbstractArray</code> has undefined effects on the <code>Dimension</code> index. Use forward-ordered arrays only"</p><p>Example:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates, DimensionalData</span></span> @@ -27,7 +27,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.774092</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.823656</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 40</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.637077</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692235</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L333-L391" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[167]||(s[167]=i("p",null,[a("Shorthand "),i("code",null,"AbstractDimArray"),a(" constructors:")],-1)),i("details",E,[i("summary",null,[s[9]||(s[9]=i("a",{id:"Base.fill",href:"#Base.fill"},[i("span",{class:"jlbinding"},"Base.fill")],-1)),s[10]||(s[10]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[11]||(s[11]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 50</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692235</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L333-L391" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[167]||(s[167]=i("p",null,[a("Shorthand "),i("code",null,"AbstractDimArray"),a(" constructors:")],-1)),i("details",E,[i("summary",null,[s[9]||(s[9]=i("a",{id:"Base.fill",href:"#Base.fill"},[i("span",{class:"jlbinding"},"Base.fill")],-1)),s[10]||(s[10]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[11]||(s[11]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> with a fill value of <code>x</code>.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Random; Random</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seed!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">123</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -37,7 +37,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└──────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L476-L504" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",y,[i("summary",null,[s[12]||(s[12]=i("a",{id:"Base.rand",href:"#Base.rand"},[i("span",{class:"jlbinding"},"Base.rand")],-1)),s[13]||(s[13]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[14]||(s[14]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L476-L504" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",y,[i("summary",null,[s[12]||(s[12]=i("a",{id:"Base.rand",href:"#Base.rand"},[i("span",{class:"jlbinding"},"Base.rand")],-1)),s[13]||(s[13]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[14]||(s[14]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(r</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRNG</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(r</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRNG</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of random values.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> @@ -61,7 +61,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.443494</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.253849</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.867547</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.334152</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0802658</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.512083</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.427328</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.311448</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L507-L549" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",c,[i("summary",null,[s[15]||(s[15]=i("a",{id:"Base.zeros",href:"#Base.zeros"},[i("span",{class:"jlbinding"},"Base.zeros")],-1)),s[16]||(s[16]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[17]||(s[17]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.512083</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.427328</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.311448</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L507-L549" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",c,[i("summary",null,[s[15]||(s[15]=i("a",{id:"Base.zeros",href:"#Base.zeros"},[i("span",{class:"jlbinding"},"Base.zeros")],-1)),s[16]||(s[16]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[17]||(s[17]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of zeros.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -83,7 +83,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L552-L593" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",F,[i("summary",null,[s[18]||(s[18]=i("a",{id:"Base.ones",href:"#Base.ones"},[i("span",{class:"jlbinding"},"Base.ones")],-1)),s[19]||(s[19]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[20]||(s[20]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L552-L593" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",F,[i("summary",null,[s[18]||(s[18]=i("a",{id:"Base.ones",href:"#Base.ones"},[i("span",{class:"jlbinding"},"Base.ones")],-1)),s[19]||(s[19]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[20]||(s[20]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArray</span></span></code></pre></div><p>Create a <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a> of ones.</p><p>There are two kinds of <code>Dimension</code> value acepted:</p><ul><li><p>A <code>Dimension</code> holding an <code>AbstractVector</code> will set the dimension index to that <code>AbstractVector</code>, and detect the dimension lookup.</p></li><li><p>A <code>Dimension</code> holding an <code>Integer</code> will set the length of the axis, and set the dimension lookup to <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.NoLookup"><code>NoLookup</code></a>.</p></li></ul><p>Keywords are the same as for <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArray"><code>DimArray</code></a>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Bool, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -105,8 +105,8 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 100.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 150.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 200.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :a</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :b</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L596-L637" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[168]||(s[168]=i("p",null,"Functions for getting information from objects:",-1)),i("details",C,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.dims",href:"#DimensionalData.Dimensions.dims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims")],-1)),s[22]||(s[22]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[23]||(s[23]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :c</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L596-L637" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[168]||(s[168]=i("p",null,"Functions for getting information from objects:",-1)),i("details",C,[i("summary",null,[s[21]||(s[21]=i("a",{id:"DimensionalData.Dimensions.dims",href:"#DimensionalData.Dimensions.dims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dims")],-1)),s[22]||(s[22]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[23]||(s[23]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a tuple of <code>Dimension</code>s for an object, in the order that matches the axes or columns of the underlying data.</p><p><code>dims</code> can be <code>Dimension</code>, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p>The default is to return <code>nothing</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L49-L59" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Get the dimension(s) matching the type(s) of the query dimension.</p><p>Lookup can be an Int or an Dimension, or a tuple containing any combination of either.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, or a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or a single <code>Dimension</code> or <code>Dimension</code> <code>Type</code>.</p></li></ul><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z))</span></span> @@ -120,13 +120,13 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",m,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.refdims",href:"#DimensionalData.Dimensions.refdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.refdims")],-1)),s[25]||(s[25]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[26]||(s[26]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Reference dimensions for an array that is a slice or view of another array with more dimensions.</p><p><code>slicedims(a, dims)</code> returns a tuple containing the current new dimensions and the new reference dimensions. Refdims can be stored in a field or discarded, as it is mostly to give context to plots. Ignoring refdims will simply leave some captions empty.</p><p>The default is to return an empty <code>Tuple</code> <code>()</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L62-L75" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",u,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Lookups.metadata",href:"#DimensionalData.Dimensions.Lookups.metadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.metadata")],-1)),s[28]||(s[28]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[29]||(s[29]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (object metadata)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L116-L147" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",m,[i("summary",null,[s[24]||(s[24]=i("a",{id:"DimensionalData.Dimensions.refdims",href:"#DimensionalData.Dimensions.refdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.refdims")],-1)),s[25]||(s[25]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[26]||(s[26]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, [dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Reference dimensions for an array that is a slice or view of another array with more dimensions.</p><p><code>slicedims(a, dims)</code> returns a tuple containing the current new dimensions and the new reference dimensions. Refdims can be stored in a field or discarded, as it is mostly to give context to plots. Ignoring refdims will simply leave some captions empty.</p><p>The default is to return an empty <code>Tuple</code> <code>()</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L62-L75" target="_blank" rel="noreferrer">source</a></p>`,5))]),i("details",u,[i("summary",null,[s[27]||(s[27]=i("a",{id:"DimensionalData.Dimensions.Lookups.metadata",href:"#DimensionalData.Dimensions.Lookups.metadata"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.metadata")],-1)),s[28]||(s[28]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[29]||(s[29]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (object metadata)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple (Dimension metadata)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Returns the metadata for an object or for the specified dimension(s)</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L117-L126" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",D,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.name",href:"#DimensionalData.Dimensions.name"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.name")],-1)),s[31]||(s[31]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[32]||(s[32]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple</span></span></code></pre></div><p>Returns the metadata for an object or for the specified dimension(s)</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L117-L126" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",D,[i("summary",null,[s[30]||(s[30]=i("a",{id:"DimensionalData.Dimensions.name",href:"#DimensionalData.Dimensions.name"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.name")],-1)),s[31]||(s[31]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[32]||(s[32]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(xs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Tuple) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,Symbol}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{N,Symbol}</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span></code></pre></div><p>Get the name of an array or Dimension, or a tuple of of either as a Symbol.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L129-L139" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.otherdims",href:"#DimensionalData.Dimensions.otherdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.otherdims")],-1)),s[34]||(s[34]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[35]||(s[35]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Symbol</span></span></code></pre></div><p>Get the name of an array or Dimension, or a tuple of of either as a Symbol.</p><p>Second argument <code>dims</code> can be <code>Dimension</code>s, <code>Dimension</code> types, or <code>Symbols</code> for <code>Dim{Symbol}</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L129-L139" target="_blank" rel="noreferrer">source</a></p>`,4))]),i("details",b,[i("summary",null,[s[33]||(s[33]=i("a",{id:"DimensionalData.Dimensions.otherdims",href:"#DimensionalData.Dimensions.otherdims"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.otherdims")],-1)),s[34]||(s[34]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[35]||(s[35]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension,N}}</span></span></code></pre></div><p>Get the dimensions of an object <em>not</em> in <code>query</code>.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>A tuple holding the unmatched dimensions is always returned.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> <span class="line"></span> @@ -134,7 +134,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Z)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, (Y, Z))</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",B,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.dimnum",href:"#DimensionalData.Dimensions.dimnum"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimnum")],-1)),s[37]||(s[37]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[38]||(s[38]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L269-L293" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",B,[i("summary",null,[s[36]||(s[36]=i("a",{id:"DimensionalData.Dimensions.dimnum",href:"#DimensionalData.Dimensions.dimnum"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.dimnum")],-1)),s[37]||(s[37]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[38]||(s[38]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Int}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Int</span></span></code></pre></div><p>Get the number(s) of <code>Dimension</code>(s) as ordered in the dimensions of an object.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple, Array or single <code>Dimension</code> or dimension <code>Type</code>.</p></li></ul><p>The return type will be a Tuple of <code>Int</code> or a single <code>Int</code>, depending on whether <code>query</code> is a <code>Tuple</code> or single <code>Dimension</code>.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y, Z));</span></span> @@ -143,7 +143,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dimnum</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Y)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",f,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.hasdim",href:"#DimensionalData.Dimensions.hasdim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.hasdim")],-1)),s[40]||(s[40]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[41]||(s[41]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L187-L213" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",A,[i("summary",null,[s[39]||(s[39]=i("a",{id:"DimensionalData.Dimensions.hasdim",href:"#DimensionalData.Dimensions.hasdim"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.hasdim")],-1)),s[40]||(s[40]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[41]||(s[41]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NTuple{Bool}</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([f], x, query) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Bool</span></span></code></pre></div><p>Check if an object <code>x</code> has dimensions that match or inherit from the <code>query</code> dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>x</code>: any object with a <code>dims</code> method, a <code>Tuple</code> of <code>Dimension</code> or a single <code>Dimension</code>.</p></li><li><p><code>query</code>: Tuple or single <code>Dimension</code> or dimension <code>Type</code>.</p></li><li><p><code>f</code>: <code><:</code> by default, but can be <code>>:</code> to match abstract types to concrete types.</p></li></ul><p>Check if an object or tuple contains an <code>Dimension</code>, or a tuple of dimensions.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -156,7 +156,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> hasdim</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Ti)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[169]||(s[169]=i("h2",{id:"Multi-array-datasets",tabindex:"-1"},[a("Multi-array datasets "),i("a",{class:"header-anchor",href:"#Multi-array-datasets","aria-label":'Permalink to "Multi-array datasets {#Multi-array-datasets}"'},"")],-1)),i("details",A,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.AbstractDimStack",href:"#DimensionalData.AbstractDimStack"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimStack")],-1)),s[43]||(s[43]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[44]||(s[44]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimStack</span></span></code></pre></div><p>Abstract supertype for dimensional stacks.</p><p>These have multiple layers of data, but share dimensions.</p><p>Notably, their behaviour lies somewhere between a <code>DimArray</code> and a <code>NamedTuple</code>:</p><ul><li><p>indexing with a <code>Symbol</code> as in <code>dimstack[:symbol]</code> returns a <code>DimArray</code> layer.</p></li><li><p>iteration and <code>map</code> apply over array layers, as indexed with a <code>Symbol</code>.</p></li><li><p><code>getindex</code> and many base methods are applied as for <code>DimArray</code> - to avoid the need to always use <code>map</code>.</p></li></ul><p>This design gives very succinct code when working with many-layered, mixed-dimension objects. But it may be jarring initially - the most surprising outcome is that <code>dimstack[1]</code> will return a <code>NamedTuple</code> of values for the first index in all layers, while <code>first(dimstack)</code> will return the first value of the iterator - the <code>DimArray</code> for the first layer.</p><p>See <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimStack"><code>DimStack</code></a> for the concrete implementation. Most methods are defined on the abstract type.</p><p>To extend <code>AbstractDimStack</code>, implement argument and keyword version of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> and also <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.rebuild_from_arrays"><code>rebuild_from_arrays</code></a>.</p><p>The constructor of an <code>AbstractDimStack</code> must accept a <code>NamedTuple</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L1-L27" target="_blank" rel="noreferrer">source</a></p>',10))]),i("details",j,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.DimStack",href:"#DimensionalData.DimStack"},[i("span",{class:"jlbinding"},"DimensionalData.DimStack")],-1)),s[46]||(s[46]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[47]||(s[47]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimStack </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimStack</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/Dimensions/primitives.jl#L230-L259" target="_blank" rel="noreferrer">source</a></p>`,8))]),s[169]||(s[169]=i("h2",{id:"Multi-array-datasets",tabindex:"-1"},[a("Multi-array datasets "),i("a",{class:"header-anchor",href:"#Multi-array-datasets","aria-label":'Permalink to "Multi-array datasets {#Multi-array-datasets}"'},"")],-1)),i("details",f,[i("summary",null,[s[42]||(s[42]=i("a",{id:"DimensionalData.AbstractDimStack",href:"#DimensionalData.AbstractDimStack"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimStack")],-1)),s[43]||(s[43]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[44]||(s[44]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimStack</span></span></code></pre></div><p>Abstract supertype for dimensional stacks.</p><p>These have multiple layers of data, but share dimensions.</p><p>Notably, their behaviour lies somewhere between a <code>DimArray</code> and a <code>NamedTuple</code>:</p><ul><li><p>indexing with a <code>Symbol</code> as in <code>dimstack[:symbol]</code> returns a <code>DimArray</code> layer.</p></li><li><p>iteration and <code>map</code> apply over array layers, as indexed with a <code>Symbol</code>.</p></li><li><p><code>getindex</code> and many base methods are applied as for <code>DimArray</code> - to avoid the need to always use <code>map</code>.</p></li></ul><p>This design gives very succinct code when working with many-layered, mixed-dimension objects. But it may be jarring initially - the most surprising outcome is that <code>dimstack[1]</code> will return a <code>NamedTuple</code> of values for the first index in all layers, while <code>first(dimstack)</code> will return the first value of the iterator - the <code>DimArray</code> for the first layer.</p><p>See <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimStack"><code>DimStack</code></a> for the concrete implementation. Most methods are defined on the abstract type.</p><p>To extend <code>AbstractDimStack</code>, implement argument and keyword version of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.Lookups.rebuild"><code>rebuild</code></a> and also <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.rebuild_from_arrays"><code>rebuild_from_arrays</code></a>.</p><p>The constructor of an <code>AbstractDimStack</code> must accept a <code>NamedTuple</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L1-L27" target="_blank" rel="noreferrer">source</a></p>',10))]),i("details",j,[i("summary",null,[s[45]||(s[45]=i("a",{id:"DimensionalData.DimStack",href:"#DimensionalData.DimStack"},[i("span",{class:"jlbinding"},"DimensionalData.DimStack")],-1)),s[46]||(s[46]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[47]||(s[47]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimStack </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimStack</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(data</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{AbstractDimArray}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -183,7 +183,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(one </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, two </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 8.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, three </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> s[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">At</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">isa</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStack</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L278-L358" target="_blank" rel="noreferrer">source</a></p>`,16))]),s[170]||(s[170]=i("h2",{id:"Dimension-generators",tabindex:"-1"},[a("Dimension generators "),i("a",{class:"header-anchor",href:"#Dimension-generators","aria-label":'Permalink to "Dimension generators {#Dimension-generators}"'},"")],-1)),i("details",v,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.DimIndices",href:"#DimensionalData.DimIndices"},[i("span",{class:"jlbinding"},"DimensionalData.DimIndices")],-1)),s[49]||(s[49]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[50]||(s[50]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimIndices </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L278-L358" target="_blank" rel="noreferrer">source</a></p>`,16))]),s[170]||(s[170]=i("h2",{id:"Dimension-generators",tabindex:"-1"},[a("Dimension generators "),i("a",{class:"header-anchor",href:"#Dimension-generators","aria-label":'Permalink to "Dimension generators {#Dimension-generators}"'},"")],-1)),i("details",v,[i("summary",null,[s[48]||(s[48]=i("a",{id:"DimensionalData.DimIndices",href:"#DimensionalData.DimIndices"},[i("span",{class:"jlbinding"},"DimensionalData.DimIndices")],-1)),s[49]||(s[49]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[50]||(s[50]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimIndices </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimIndices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimIndices</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -220,7 +220,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└─────────────────────────────────────────────────────────────────┘</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'a'</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'c'</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.9063</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0991336</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692209</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L53-L113" target="_blank" rel="noreferrer">source</a></p>`,9))]),i("details",w,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.DimSelectors",href:"#DimensionalData.DimSelectors"},[i("span",{class:"jlbinding"},"DimensionalData.DimSelectors")],-1)),s[52]||(s[52]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[53]||(s[53]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimSelectors </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.6</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.745673</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.692209</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L53-L113" target="_blank" rel="noreferrer">source</a></p>`,9))]),i("details",w,[i("summary",null,[s[51]||(s[51]=i("a",{id:"DimensionalData.DimSelectors",href:"#DimensionalData.DimSelectors"},[i("span",{class:"jlbinding"},"DimensionalData.DimSelectors")],-1)),s[52]||(s[52]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[53]||(s[53]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimSelectors </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimSelectors</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; selectors, atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimSelectors</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; selectors, atol</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -238,11 +238,11 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 11.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 21.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.691162</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.218579</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.539076</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0303789</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.420756</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.485687</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 22.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0967863</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.864856</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.870485</span></span></code></pre></div><p>Using <code>At</code> would make sure we only use exact interpolation, while <code>Contains</code> with sampling of <code>Intervals</code> would make sure that each values is taken only from an Interval that is present in the lookups.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L200-L246" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.DimPoints",href:"#DimensionalData.DimPoints"},[i("span",{class:"jlbinding"},"DimensionalData.DimPoints")],-1)),s[55]||(s[55]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[56]||(s[56]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimPoints </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 22.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0967863</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.864856</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.870485</span></span></code></pre></div><p>Using <code>At</code> would make sure we only use exact interpolation, while <code>Contains</code> with sampling of <code>Intervals</code> would make sure that each values is taken only from an Interval that is present in the lookups.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L200-L246" target="_blank" rel="noreferrer">source</a></p>`,10))]),i("details",x,[i("summary",null,[s[54]||(s[54]=i("a",{id:"DimensionalData.DimPoints",href:"#DimensionalData.DimPoints"},[i("span",{class:"jlbinding"},"DimensionalData.DimPoints")],-1)),s[55]||(s[55]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[56]||(s[56]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimPoints </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractArray</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; order)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span></code></pre></div><p>Like <code>CartesianIndices</code>, but for the point values of the dimension index. Behaves as an <code>Array</code> of <code>Tuple</code> lookup values (whatever they are) for all combinations of the lookup values of <code>dims</code>.</p><p>Either a <code>Dimension</code>, a <code>Tuple</code> of <code>Dimension</code> or an object <code>x</code> that defines a <code>dims</code> method can be passed in.</p><p><strong>Keywords</strong></p><ul><li><code>order</code>: determines the order of the points, the same as the order of <code>dims</code> by default.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/dimindices.jl#L153-L170" target="_blank" rel="noreferrer">source</a></p>`,6))]),s[171]||(s[171]=i("h2",{id:"Tables.jl/TableTraits.jl-interface",tabindex:"-1"},[a("Tables.jl/TableTraits.jl interface "),i("a",{class:"header-anchor",href:"#Tables.jl/TableTraits.jl-interface","aria-label":'Permalink to "Tables.jl/TableTraits.jl interface {#Tables.jl/TableTraits.jl-interface}"'},"")],-1)),i("details",T,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.AbstractDimTable",href:"#DimensionalData.AbstractDimTable"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimTable")],-1)),s[58]||(s[58]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[59]||(s[59]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Tables.AbstractColumns</span></span></code></pre></div><p>Abstract supertype for dim tables</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/tables.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",L,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.DimTable",href:"#DimensionalData.DimTable"},[i("span",{class:"jlbinding"},"DimensionalData.DimTable")],-1)),s[61]||(s[61]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[62]||(s[62]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimTable</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimPoints</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; order)</span></span></code></pre></div><p>Like <code>CartesianIndices</code>, but for the point values of the dimension index. Behaves as an <code>Array</code> of <code>Tuple</code> lookup values (whatever they are) for all combinations of the lookup values of <code>dims</code>.</p><p>Either a <code>Dimension</code>, a <code>Tuple</code> of <code>Dimension</code> or an object <code>x</code> that defines a <code>dims</code> method can be passed in.</p><p><strong>Keywords</strong></p><ul><li><code>order</code>: determines the order of the points, the same as the order of <code>dims</code> by default.</li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/dimindices.jl#L153-L170" target="_blank" rel="noreferrer">source</a></p>`,6))]),s[171]||(s[171]=i("h2",{id:"Tables.jl/TableTraits.jl-interface",tabindex:"-1"},[a("Tables.jl/TableTraits.jl interface "),i("a",{class:"header-anchor",href:"#Tables.jl/TableTraits.jl-interface","aria-label":'Permalink to "Tables.jl/TableTraits.jl interface {#Tables.jl/TableTraits.jl-interface}"'},"")],-1)),i("details",T,[i("summary",null,[s[57]||(s[57]=i("a",{id:"DimensionalData.AbstractDimTable",href:"#DimensionalData.AbstractDimTable"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractDimTable")],-1)),s[58]||(s[58]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[59]||(s[59]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractDimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Tables.AbstractColumns</span></span></code></pre></div><p>Abstract supertype for dim tables</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/tables.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",L,[i("summary",null,[s[60]||(s[60]=i("a",{id:"DimensionalData.DimTable",href:"#DimensionalData.DimTable"},[i("span",{class:"jlbinding"},"DimensionalData.DimTable")],-1)),s[61]||(s[61]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[62]||(s[62]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimTable </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimTable</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimTable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; mergedims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimTable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; layersfrom</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mergedims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">nothing</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> @@ -272,7 +272,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> …</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/tables.jl#L38-L94" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[172]||(s[172]=i("h1",{id:"Group-by-methods",tabindex:"-1"},[a("Group by methods "),i("a",{class:"header-anchor",href:"#Group-by-methods","aria-label":'Permalink to "Group by methods {#Group-by-methods}"'},"")],-1)),s[173]||(s[173]=i("p",null,"For transforming DimensionalData objects:",-1)),i("details",S,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DataAPI.groupby",href:"#DataAPI.groupby"},[i("span",{class:"jlbinding"},"DataAPI.groupby")],-1)),s[64]||(s[64]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/tables.jl#L38-L94" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[172]||(s[172]=i("h1",{id:"Group-by-methods",tabindex:"-1"},[a("Group by methods "),i("a",{class:"header-anchor",href:"#Group-by-methods","aria-label":'Permalink to "Group by methods {#Group-by-methods}"'},"")],-1)),s[173]||(s[173]=i("p",null,"For transforming DimensionalData objects:",-1)),i("details",S,[i("summary",null,[s[63]||(s[63]=i("a",{id:"DataAPI.groupby",href:"#DataAPI.groupby"},[i("span",{class:"jlbinding"},"DataAPI.groupby")],-1)),s[64]||(s[64]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[65]||(s[65]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">groupby</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension{<:Callable}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">...)</span></span></code></pre></div><p>Group <code>A</code> by grouping functions or <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Bins"><code>Bins</code></a> over multiple dimensions.</p><p><strong>Arguments</strong></p><ul><li><p><code>A</code>: any <code>AbstractDimArray</code> or <code>AbstractDimStack</code>.</p></li><li><p><code>dims</code>: <code>Pair</code>s such as <code>groups = groupby(A, :dimname => groupingfunction)</code> or wrapped <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dimension"><code>Dimension</code></a>s like <code>groups = groupby(A, DimType(groupingfunction))</code>. Instead of a grouping function <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Bins"><code>Bins</code></a> can be used to specify group bins.</p></li></ul><p><strong>Return value</strong></p><p>A <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimGroupByArray"><code>DimGroupByArray</code></a> is returned, which is basically a regular <code>AbstractDimArray</code> but holding the grouped <code>AbstractDimArray</code> or <code>AbstractDimStack</code>. Its <code>dims</code> hold the sorted values returned by the grouping function/s.</p><p>Base julia and package methods work on <code>DimGroupByArray</code> as for any other <code>AbstractArray</code> of <code>AbstractArray</code>.</p><p>It is common to broadcast or <code>map</code> a reducing function over groups, such as <code>mean</code> or <code>sum</code>, like <code>mean.(groups)</code> or <code>map(mean, groups)</code>. This will return a regular <code>DimArray</code>, or <code>DimGroupByArray</code> if <code>dims</code> keyword is used in the reducing function or it otherwise returns an <code>AbstractDimArray</code> or <code>AbstractDimStack</code>.</p><p><strong>Example</strong></p><p>Group some data along the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Dates</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Day</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2003</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)));</span></span> @@ -325,8 +325,8 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ⋮</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501105</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.500644</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 11</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.498606</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.498801</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501643</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.499298</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L218-L325" target="_blank" rel="noreferrer">source</a></p>`,18))]),i("details",I,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.DimGroupByArray",href:"#DimensionalData.DimGroupByArray"},[i("span",{class:"jlbinding"},"DimensionalData.DimGroupByArray")],-1)),s[67]||(s[67]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[68]||(s[68]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimGroupByArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span></code></pre></div><p><code>DimGroupByArray</code> is essentially a <code>DimArray</code> but holding the results of a <code>groupby</code> operation.</p><p>Its dimensions are the sorted results of the grouping functions used in <code>groupby</code>.</p><p>This wrapper allows for specialisations on later broadcast or reducing operations, e.g. for chunk reading with DiskArrays.jl, because we know the data originates from a single array.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",O,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Bins",href:"#DimensionalData.Bins"},[i("span",{class:"jlbinding"},"DimensionalData.Bins")],-1)),s[70]||(s[70]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[71]||(s[71]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, bins; labels, pad)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bins; labels, pad)</span></span></code></pre></div><p>Specify bins to reduce groups after applying function <code>f</code>.</p><ul><li><p><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</p></li><li><p><code>bins</code>:</p><ul><li><p>an <code>Integer</code> will divide the group values into equally spaced sections.</p></li><li><p>an <code>AbstractArray</code> of values will be treated as exact matches for the return value of <code>f</code>. For example, <code>1:3</code> will create 3 bins - 1, 2, 3.</p></li><li><p>an <code>AbstractArray</code> of <code>IntervalSets.Interval</code> can be used to explicitly define the intervals. Overlapping intervals have undefined behaviour.</p></li></ul></li></ul><p><strong>Keywords</strong></p><ul><li><p><code>pad</code>: fraction of the total interval to pad at each end when <code>Bins</code> contains an <code>Integer</code>. This avoids losing the edge values. Note this is a messy solution - it will often be prefereble to manually specify a <code>Vector</code> of chosen <code>Interval</code>s rather than relying on passing an <code>Integer</code> and <code>pad</code>.</p></li><li><p><code>labels</code>: a list of descriptive labels for the bins. The labels need to have the same length as <code>bins</code>.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L103-L126" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.ranges",href:"#DimensionalData.ranges"},[i("span",{class:"jlbinding"},"DimensionalData.ranges")],-1)),s[73]||(s[73]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[74]||(s[74]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ranges</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange{<:Integer}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L455-L459" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",q,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.intervals",href:"#DimensionalData.intervals"},[i("span",{class:"jlbinding"},"DimensionalData.intervals")],-1)),s[76]||(s[76]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[77]||(s[77]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L448-L452" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",z,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.CyclicBins",href:"#DimensionalData.CyclicBins"},[i("span",{class:"jlbinding"},"DimensionalData.CyclicBins")],-1)),s[79]||(s[79]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[80]||(s[80]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">CyclicBins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f; cycle, start, step, labels)</span></span></code></pre></div><p>Cyclic bins to reduce groups after applying function <code>f</code>. Groups can wrap around the cycle. This is used for grouping in <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.seasons"><code>seasons</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.months"><code>months</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.hours"><code>hours</code></a> but can also be used for custom cycles.</p><ul><li><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>cycle</code>: the length of the cycle, in return values of <code>f</code>.</p></li><li><p><code>start</code>: the start of the cycle: a return value of <code>f</code>.</p></li><li><p><code>step</code> the number of sequential values to group.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected bins.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L141-L159" target="_blank" rel="noreferrer">source</a></p>',7))]),i("details",X,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.seasons",href:"#DimensionalData.seasons"},[i("span",{class:"jlbinding"},"DimensionalData.seasons")],-1)),s[82]||(s[82]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[83]||(s[83]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seasons</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">December, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for three month periods.</p><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start in December, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected quarters.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L174-L183" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",Y,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.months",href:"#DimensionalData.months"},[i("span",{class:"jlbinding"},"DimensionalData.months")],-1)),s[85]||(s[85]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[86]||(s[86]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">months</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">January, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary month periods. These can wrap around the end of a year.</p><ul><li><code>step</code> the number of months to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default months start in January, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected months.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L186-L199" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",P,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.hours",href:"#DimensionalData.hours"},[i("span",{class:"jlbinding"},"DimensionalData.hours")],-1)),s[88]||(s[88]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[89]||(s[89]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hours</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary hour periods. These can wrap around the end of the day.</p><ul><li><code>steps</code> the number of hours to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start at <code>0</code>, but any integer <code>1:24</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected hours of the day.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/groupby.jl#L202-L215" target="_blank" rel="noreferrer">source</a></p>',6))]),s[174]||(s[174]=i("h1",{id:"Utility-methods",tabindex:"-1"},[a("Utility methods "),i("a",{class:"header-anchor",href:"#Utility-methods","aria-label":'Permalink to "Utility methods {#Utility-methods}"'},"")],-1)),s[175]||(s[175]=i("p",null,"For transforming DimensionalData objects:",-1)),i("details",R,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.Lookups.set",href:"#DimensionalData.Dimensions.Lookups.set"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.set")],-1)),s[91]||(s[91]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[92]||(s[92]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, val)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 12</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.501643</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.499298</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L218-L325" target="_blank" rel="noreferrer">source</a></p>`,18))]),i("details",I,[i("summary",null,[s[66]||(s[66]=i("a",{id:"DimensionalData.DimGroupByArray",href:"#DimensionalData.DimGroupByArray"},[i("span",{class:"jlbinding"},"DimensionalData.DimGroupByArray")],-1)),s[67]||(s[67]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[68]||(s[68]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimGroupByArray </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractDimArray</span></span></code></pre></div><p><code>DimGroupByArray</code> is essentially a <code>DimArray</code> but holding the results of a <code>groupby</code> operation.</p><p>Its dimensions are the sorted results of the grouping functions used in <code>groupby</code>.</p><p>This wrapper allows for specialisations on later broadcast or reducing operations, e.g. for chunk reading with DiskArrays.jl, because we know the data originates from a single array.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L1-L13" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",O,[i("summary",null,[s[69]||(s[69]=i("a",{id:"DimensionalData.Bins",href:"#DimensionalData.Bins"},[i("span",{class:"jlbinding"},"DimensionalData.Bins")],-1)),s[70]||(s[70]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[71]||(s[71]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, bins; labels, pad)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(bins; labels, pad)</span></span></code></pre></div><p>Specify bins to reduce groups after applying function <code>f</code>.</p><ul><li><p><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</p></li><li><p><code>bins</code>:</p><ul><li><p>an <code>Integer</code> will divide the group values into equally spaced sections.</p></li><li><p>an <code>AbstractArray</code> of values will be treated as exact matches for the return value of <code>f</code>. For example, <code>1:3</code> will create 3 bins - 1, 2, 3.</p></li><li><p>an <code>AbstractArray</code> of <code>IntervalSets.Interval</code> can be used to explicitly define the intervals. Overlapping intervals have undefined behaviour.</p></li></ul></li></ul><p><strong>Keywords</strong></p><ul><li><p><code>pad</code>: fraction of the total interval to pad at each end when <code>Bins</code> contains an <code>Integer</code>. This avoids losing the edge values. Note this is a messy solution - it will often be prefereble to manually specify a <code>Vector</code> of chosen <code>Interval</code>s rather than relying on passing an <code>Integer</code> and <code>pad</code>.</p></li><li><p><code>labels</code>: a list of descriptive labels for the bins. The labels need to have the same length as <code>bins</code>.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L103-L126" target="_blank" rel="noreferrer">source</a></p>`,7))]),i("details",N,[i("summary",null,[s[72]||(s[72]=i("a",{id:"DimensionalData.ranges",href:"#DimensionalData.ranges"},[i("span",{class:"jlbinding"},"DimensionalData.ranges")],-1)),s[73]||(s[73]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[74]||(s[74]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">ranges</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange{<:Integer}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L455-L459" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",q,[i("summary",null,[s[75]||(s[75]=i("a",{id:"DimensionalData.intervals",href:"#DimensionalData.intervals"},[i("span",{class:"jlbinding"},"DimensionalData.intervals")],-1)),s[76]||(s[76]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[77]||(s[77]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">intervals</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractRange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a <code>Vector</code> of <code>UnitRange</code> with length <code>step(A)</code></p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L448-L452" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",z,[i("summary",null,[s[78]||(s[78]=i("a",{id:"DimensionalData.CyclicBins",href:"#DimensionalData.CyclicBins"},[i("span",{class:"jlbinding"},"DimensionalData.CyclicBins")],-1)),s[79]||(s[79]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[80]||(s[80]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">CyclicBins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f; cycle, start, step, labels)</span></span></code></pre></div><p>Cyclic bins to reduce groups after applying function <code>f</code>. Groups can wrap around the cycle. This is used for grouping in <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.seasons"><code>seasons</code></a>, <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.months"><code>months</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.hours"><code>hours</code></a> but can also be used for custom cycles.</p><ul><li><code>f</code>: a grouping function of the lookup values, by default <code>identity</code>.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>cycle</code>: the length of the cycle, in return values of <code>f</code>.</p></li><li><p><code>start</code>: the start of the cycle: a return value of <code>f</code>.</p></li><li><p><code>step</code> the number of sequential values to group.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected bins.</p></li></ul><p>When the return value of <code>f</code> is a tuple, binning is applied to the <em>last</em> value of the tuples.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L141-L159" target="_blank" rel="noreferrer">source</a></p>',7))]),i("details",X,[i("summary",null,[s[81]||(s[81]=i("a",{id:"DimensionalData.seasons",href:"#DimensionalData.seasons"},[i("span",{class:"jlbinding"},"DimensionalData.seasons")],-1)),s[82]||(s[82]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[83]||(s[83]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">seasons</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">December, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for three month periods.</p><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start in December, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected quarters.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L174-L183" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",Y,[i("summary",null,[s[84]||(s[84]=i("a",{id:"DimensionalData.months",href:"#DimensionalData.months"},[i("span",{class:"jlbinding"},"DimensionalData.months")],-1)),s[85]||(s[85]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[86]||(s[86]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">months</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dates</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">January, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary month periods. These can wrap around the end of a year.</p><ul><li><code>step</code> the number of months to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default months start in January, but any integer <code>1:12</code> can be used.</p></li><li><p><code>labels</code>: either a vector of labels matching the number of groups, or a function that generates labels from <code>Vector{Int}</code> of the selected months.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L186-L199" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",P,[i("summary",null,[s[87]||(s[87]=i("a",{id:"DimensionalData.hours",href:"#DimensionalData.hours"},[i("span",{class:"jlbinding"},"DimensionalData.hours")],-1)),s[88]||(s[88]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[89]||(s[89]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">hours</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(step; [start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, labels])</span></span></code></pre></div><p>Generates <code>CyclicBins</code> for grouping to arbitrary hour periods. These can wrap around the end of the day.</p><ul><li><code>steps</code> the number of hours to group.</li></ul><p><strong>Keywords</strong></p><ul><li><p><code>start</code>: By default seasons start at <code>0</code>, but any integer <code>1:24</code> can be used.</p></li><li><p><code>labels</code>: either a vector of four labels, or a function that generates labels from <code>Vector{Int}</code> of the selected hours of the day.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/groupby.jl#L202-L215" target="_blank" rel="noreferrer">source</a></p>',6))]),s[174]||(s[174]=i("h1",{id:"Utility-methods",tabindex:"-1"},[a("Utility methods "),i("a",{class:"header-anchor",href:"#Utility-methods","aria-label":'Permalink to "Utility methods {#Utility-methods}"'},"")],-1)),s[175]||(s[175]=i("p",null,"For transforming DimensionalData objects:",-1)),i("details",R,[i("summary",null,[s[90]||(s[90]=i("a",{id:"DimensionalData.Dimensions.Lookups.set",href:"#DimensionalData.Dimensions.Lookups.set"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.set")],-1)),s[91]||(s[91]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[92]||(s[92]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, val)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pairs...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x with updated field</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">s</span></span> @@ -387,11 +387,11 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> ↓</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> →</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> -</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">20.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> -</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 10.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 20.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/set.jl#L3-L118" target="_blank" rel="noreferrer">source</a></p>`,20))]),i("details",G,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.Lookups.rebuild",href:"#DimensionalData.Dimensions.Lookups.rebuild"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.rebuild")],-1)),s[94]||(s[94]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[95]||(s[95]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an object struct with updated field values.</p><p><code>x</code> can be a <code>AbstractDimArray</code>, a <code>Dimension</code>, <code>Lookup</code> or other custom types.</p><p>This is an abstraction that allows inbuilt and custom types to be rebuilt to update their fields, as most objects in DimensionalData.jl are immutable.</p><p>Rebuild is mostly automated using <code>ConstructionBase.setproperties</code>. It should only be defined if your object has fields with with different names to DimensionalData objects. Try not to do that!</p><p>The arguments required are defined for the abstract type that has a <code>rebuild</code> method.</p><p><strong><code>AbstractBasicDimArray</code>:</strong></p><ul><li><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></li></ul><p><strong><code>AbstractDimArray</code>:</strong></p><ul><li><p><code>data</code>: the parent object - an <code>AbstractArray</code></p></li><li><p><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>refdims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A Symbol, or <code>NoName</code> and <code>Name</code> on GPU.</p></li><li><p><code>metadata</code>: A <code>Dict</code>-like object</p></li></ul><p><strong><code>AbstractDimStack</code>:</strong></p><ul><li><p><code>data</code>: the parent object, often a <code>NamedTuple</code></p></li><li><p><code>dims</code>, <code>refdims</code>, <code>metadata</code></p></li></ul><p><strong><code>Dimension</code>:</strong></p><ul><li><code>val</code>: anything.</li></ul><p><strong><code>Lookup</code>:</strong></p><ul><li><p><code>data</code>: the parent object, an <code>AbstractArray</code></p></li><li><p>Note: argument <code>rebuild</code> is deprecated on <code>AbstractDimArray</code> and</p></li></ul><p><code>AbstractDimStack</code> in favour of always using the keyword version. In future the argument version will only be used on <code>Dimension</code>, which only have one argument.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/interface.jl#L3-L46" target="_blank" rel="noreferrer">source</a></p>',18))]),i("details",V,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.modify",href:"#DimensionalData.modify"},[i("span",{class:"jlbinding"},"DimensionalData.modify")],-1)),s[97]||(s[97]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[98]||(s[98]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 30.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/set.jl#L3-L118" target="_blank" rel="noreferrer">source</a></p>`,20))]),i("details",G,[i("summary",null,[s[93]||(s[93]=i("a",{id:"DimensionalData.Dimensions.Lookups.rebuild",href:"#DimensionalData.Dimensions.Lookups.rebuild"},[i("span",{class:"jlbinding"},"DimensionalData.Dimensions.Lookups.rebuild")],-1)),s[94]||(s[94]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[95]||(s[95]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an object struct with updated field values.</p><p><code>x</code> can be a <code>AbstractDimArray</code>, a <code>Dimension</code>, <code>Lookup</code> or other custom types.</p><p>This is an abstraction that allows inbuilt and custom types to be rebuilt to update their fields, as most objects in DimensionalData.jl are immutable.</p><p>Rebuild is mostly automated using <code>ConstructionBase.setproperties</code>. It should only be defined if your object has fields with with different names to DimensionalData objects. Try not to do that!</p><p>The arguments required are defined for the abstract type that has a <code>rebuild</code> method.</p><p><strong><code>AbstractBasicDimArray</code>:</strong></p><ul><li><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></li></ul><p><strong><code>AbstractDimArray</code>:</strong></p><ul><li><p><code>data</code>: the parent object - an <code>AbstractArray</code></p></li><li><p><code>dims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>refdims</code>: a <code>Tuple</code> of <code>Dimension</code></p></li><li><p><code>name</code>: A Symbol, or <code>NoName</code> and <code>Name</code> on GPU.</p></li><li><p><code>metadata</code>: A <code>Dict</code>-like object</p></li></ul><p><strong><code>AbstractDimStack</code>:</strong></p><ul><li><p><code>data</code>: the parent object, often a <code>NamedTuple</code></p></li><li><p><code>dims</code>, <code>refdims</code>, <code>metadata</code></p></li></ul><p><strong><code>Dimension</code>:</strong></p><ul><li><code>val</code>: anything.</li></ul><p><strong><code>Lookup</code>:</strong></p><ul><li><p><code>data</code>: the parent object, an <code>AbstractArray</code></p></li><li><p>Note: argument <code>rebuild</code> is deprecated on <code>AbstractDimArray</code> and</p></li></ul><p><code>AbstractDimStack</code> in favour of always using the keyword version. In future the argument version will only be used on <code>Dimension</code>, which only have one argument.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/interface.jl#L3-L46" target="_blank" rel="noreferrer">source</a></p>',18))]),i("details",V,[i("summary",null,[s[96]||(s[96]=i("a",{id:"DimensionalData.modify",href:"#DimensionalData.modify"},[i("span",{class:"jlbinding"},"DimensionalData.modify")],-1)),s[97]||(s[97]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[98]||(s[98]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, x, lookupdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> typeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)</span></span></code></pre></div><p>Modify the parent data, rebuilding the object wrapper without change. <code>f</code> must return a <code>AbstractArray</code> of the same size as the original.</p><p>This method is mostly useful as a way of swapping the parent array type of an object.</p><p><strong>Example</strong></p><p>If we have a previously-defined <code>DimArray</code>, we can copy it to an Nvidia GPU with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (X, Y))</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(CuArray, A)</span></span></code></pre></div><p>This also works for all the data layers in a <code>DimStack</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L64-L86" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",M,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.@d",href:"#DimensionalData.@d"},[i("span",{class:"jlbinding"},"DimensionalData.@d")],-1)),s[100]||(s[100]=a()),t(n,{type:"info",class:"jlObjectType jlMacro",text:"Macro"})]),s[101]||(s[101]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> broadcast_expression options</span></span></code></pre></div><p>Dimensional broadcast macro extending Base Julia broadcasting to work with missing and permuted dimensions.</p><p>Will permute and resshape singleton dimensions so that all <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> in a broadcast will broadcast over matching dimensions.</p><p>It is possible to pass options as the second argument of the macro to control the behaviour, as a single assignment or as a NamedTuple. Options names must be written explicitly, not passed in namedtuple variable.</p><p><strong>Options</strong></p><ul><li><p><code>dims</code>: Pass a Tuple of <code>Dimension</code>s, <code>Dimension</code> types or <code>Symbol</code>s to fix the dimension order of the output array. Otherwise dimensions will be in order of appearance. If dims with lookups are passed, these will be applied to the returned array with <code>set</code>.</p></li><li><p><code>strict</code>: <code>true</code> or <code>false</code>. Check that all lookup values match explicitly.</p></li></ul><p>All other keywords are passed to <code>DimensionalData.rebuild</code>. This means <code>name</code>, <code>metadata</code>, etc for the returned array can be set here, or for example <code>missingval</code> in Rasters.jl.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">modify</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(CuArray, A)</span></span></code></pre></div><p>This also works for all the data layers in a <code>DimStack</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L64-L86" target="_blank" rel="noreferrer">source</a></p>`,8))]),i("details",M,[i("summary",null,[s[99]||(s[99]=i("a",{id:"DimensionalData.@d",href:"#DimensionalData.@d"},[i("span",{class:"jlbinding"},"DimensionalData.@d")],-1)),s[100]||(s[100]=a()),t(n,{type:"info",class:"jlObjectType jlMacro",text:"Macro"})]),s[101]||(s[101]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> broadcast_expression options</span></span></code></pre></div><p>Dimensional broadcast macro extending Base Julia broadcasting to work with missing and permuted dimensions.</p><p>Will permute and resshape singleton dimensions so that all <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> in a broadcast will broadcast over matching dimensions.</p><p>It is possible to pass options as the second argument of the macro to control the behaviour, as a single assignment or as a NamedTuple. Options names must be written explicitly, not passed in namedtuple variable.</p><p><strong>Options</strong></p><ul><li><p><code>dims</code>: Pass a Tuple of <code>Dimension</code>s, <code>Dimension</code> types or <code>Symbol</code>s to fix the dimension order of the output array. Otherwise dimensions will be in order of appearance. If dims with lookups are passed, these will be applied to the returned array with <code>set</code>.</p></li><li><p><code>strict</code>: <code>true</code> or <code>false</code>. Check that all lookup values match explicitly.</p></li></ul><p>All other keywords are passed to <code>DimensionalData.rebuild</code>. This means <code>name</code>, <code>metadata</code>, etc for the returned array can be set here, or for example <code>missingval</code> in Rasters.jl.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ones</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> fill</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> <span class="line"></span> @@ -403,7 +403,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2</span></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Use parentheses areound \`@.\` if you need to pass options</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.+</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Y, X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L103-L157" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",U,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.broadcast_dims",href:"#DimensionalData.broadcast_dims"},[i("span",{class:"jlbinding"},"DimensionalData.broadcast_dims")],-1)),s[103]||(s[103]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[104]||(s[104]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, permuting and reshaping dimensions to match where required. The result will contain all the dimensions in all passed in arrays in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</li></ul><p>This is like broadcasting over every slice of <code>A</code> if it is sliced by the dimensions of <code>B</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L110-L123" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",Z,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.broadcast_dims!",href:"#DimensionalData.broadcast_dims!"},[i("span",{class:"jlbinding"},"DimensionalData.broadcast_dims!")],-1)),s[106]||(s[106]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[107]||(s[107]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dest</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dest</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, writing to <code>dest</code>. <code>sources</code> are permuting and reshaping dimensions to match where required.</p><p>The result will contain all the dimensions in all passed in arrays, in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><p><code>dest</code>: <code>AbstractDimArray</code> to update.</p></li><li><p><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L139-L152" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",K,[i("summary",null,[s[108]||(s[108]=i("a",{id:"DimensionalData.mergedims",href:"#DimensionalData.mergedims"},[i("span",{class:"jlbinding"},"DimensionalData.mergedims")],-1)),s[109]||(s[109]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[110]||(s[110]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a dimension <code>new_dim</code> whose indices are a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the indices of <code>old_dims</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L719-L724" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim, others</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dims_new</span></span></code></pre></div><p>If dimensions <code>old_dims</code>, <code>new_dim</code>, etc. are found in <code>dims</code>, then return new <code>dims_new</code> where all dims in <code>old_dims</code> have been combined into a single dim <code>new_dim</code>. The returned dimension will keep only the name of <code>new_dim</code>. Its coords will be a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the coords of the dims in <code>old_dims</code>. New dimensions are always placed at the end of <code>dims_new</code>. <code>others</code> contains other dimension pairs to be merged.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">@.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da1 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da2 </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.+</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Y, X)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L103-L157" target="_blank" rel="noreferrer">source</a></p>`,13))]),i("details",U,[i("summary",null,[s[102]||(s[102]=i("a",{id:"DimensionalData.broadcast_dims",href:"#DimensionalData.broadcast_dims"},[i("span",{class:"jlbinding"},"DimensionalData.broadcast_dims")],-1)),s[103]||(s[103]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[104]||(s[104]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, permuting and reshaping dimensions to match where required. The result will contain all the dimensions in all passed in arrays in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</li></ul><p>This is like broadcasting over every slice of <code>A</code> if it is sliced by the dimensions of <code>B</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L110-L123" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",Z,[i("summary",null,[s[105]||(s[105]=i("a",{id:"DimensionalData.broadcast_dims!",href:"#DimensionalData.broadcast_dims!"},[i("span",{class:"jlbinding"},"DimensionalData.broadcast_dims!")],-1)),s[106]||(s[106]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[107]||(s[107]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">broadcast_dims!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(f, dest</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, sources</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dest</span></span></code></pre></div><p>Broadcast function <code>f</code> over the <code>AbstractDimArray</code>s in <code>sources</code>, writing to <code>dest</code>. <code>sources</code> are permuting and reshaping dimensions to match where required.</p><p>The result will contain all the dimensions in all passed in arrays, in the order in which they are found.</p><p><strong>Arguments</strong></p><ul><li><p><code>dest</code>: <code>AbstractDimArray</code> to update.</p></li><li><p><code>sources</code>: <code>AbstractDimArrays</code> to broadcast over with <code>f</code>.</p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L139-L152" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",K,[i("summary",null,[s[108]||(s[108]=i("a",{id:"DimensionalData.mergedims",href:"#DimensionalData.mergedims"},[i("span",{class:"jlbinding"},"DimensionalData.mergedims")],-1)),s[109]||(s[109]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[110]||(s[110]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dimension</span></span></code></pre></div><p>Return a dimension <code>new_dim</code> whose indices are a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the indices of <code>old_dims</code>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L719-L724" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, old_dims </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_dim, others</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dims_new</span></span></code></pre></div><p>If dimensions <code>old_dims</code>, <code>new_dim</code>, etc. are found in <code>dims</code>, then return new <code>dims_new</code> where all dims in <code>old_dims</code> have been combined into a single dim <code>new_dim</code>. The returned dimension will keep only the name of <code>new_dim</code>. Its coords will be a <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.MergedLookup"><code>MergedLookup</code></a> of the coords of the dims in <code>old_dims</code>. New dimensions are always placed at the end of <code>dims_new</code>. <code>others</code> contains other dimension pairs to be merged.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span> @@ -412,9 +412,9 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(ds, (X, Y) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :space</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Ti [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">],</span></span> -<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> space MergedLookup{Tuple{Float64, Int64}} [(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">…</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)] (</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L730-L753" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are the result of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(dims(A), dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L783-L788" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",W,[i("summary",null,[s[111]||(s[111]=i("a",{id:"DimensionalData.unmergedims",href:"#DimensionalData.unmergedims"},[i("span",{class:"jlbinding"},"DimensionalData.unmergedims")],-1)),s[112]||(s[112]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[113]||(s[113]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(merged_dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Return the unmerged dimensions from a tuple of merged dimensions. However, the order of the original dimensions are not necessarily preserved.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L800-L804" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are restored to their original prior to calling <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(A, dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/array.jl#L811-L816" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",J,[i("summary",null,[s[114]||(s[114]=i("a",{id:"DimensionalData.reorder",href:"#DimensionalData.reorder"},[i("span",{class:"jlbinding"},"DimensionalData.reorder")],-1)),s[115]||(s[115]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[116]||(s[116]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> space MergedLookup{Tuple{Float64, Int64}} [(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">…</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)] (</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">↓</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> X, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">→</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L730-L753" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">mergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, dim_pairs</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are the result of <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(dims(A), dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L783-L788" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",W,[i("summary",null,[s[111]||(s[111]=i("a",{id:"DimensionalData.unmergedims",href:"#DimensionalData.unmergedims"},[i("span",{class:"jlbinding"},"DimensionalData.unmergedims")],-1)),s[112]||(s[112]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[113]||(s[113]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(merged_dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple{Vararg{Dimension}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Tuple{Vararg{Dimension}}</span></span></code></pre></div><p>Return the unmerged dimensions from a tuple of merged dimensions. However, the order of the original dimensions are not necessarily preserved.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L800-L804" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimArray</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">unmergedims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, original_dims) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AbstractDimStack</span></span></code></pre></div><p>Return a new array or stack whose dimensions are restored to their original prior to calling <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.mergedims"><code>mergedims(A, dim_pairs)</code></a>.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/array.jl#L811-L816" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",J,[i("summary",null,[s[114]||(s[114]=i("a",{id:"DimensionalData.reorder",href:"#DimensionalData.reorder"},[i("span",{class:"jlbinding"},"DimensionalData.reorder")],-1)),s[115]||(s[115]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[116]||(s[116]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Pair...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union{AbstractDimArray,AbstractDimStack}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, order</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Order</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Reorder every dims index/array to <code>order</code>, or reorder index for the given dimension(s) in <code>order</code>.</p><p><code>order</code> can be an <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a>, <code>Dimension => Order</code> pairs. A Tuple of Dimensions or any object that defines <code>dims</code> can be used in which case the dimensions of this object are used for reordering.</p><p>If no axis reversal is required the same objects will be returned, without allocation.</p><p><strong>Example</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> @@ -428,7 +428,7 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">reorder</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(rev, da) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">==</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> da</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># output</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/utils.jl#L2-L33" target="_blank" rel="noreferrer">source</a></p>`,7))]),s[176]||(s[176]=i("h1",{id:"Global-lookup-strictness-settings",tabindex:"-1"},[a("Global lookup strictness settings "),i("a",{class:"header-anchor",href:"#Global-lookup-strictness-settings","aria-label":'Permalink to "Global lookup strictness settings {#Global-lookup-strictness-settings}"'},"")],-1)),s[177]||(s[177]=i("p",null,[a("Control how strict DimensionalData when comparing "),i("a",{href:"/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"},[i("code",null,"Lookup")]),a("s before doing broadcasts and matrix multipications.")],-1)),s[178]||(s[178]=i("p",null,[a("In some cases (especially "),i("code",null,"DimVector"),a(" and small "),i("code",null,"DimArray"),a(") checking lookup values match may be too costly compared to the operations. You can turn check the current setting and turn them on or off with these methods.")],-1)),i("details",$,[i("summary",null,[s[117]||(s[117]=i("a",{id:"DimensionalData.strict_broadcast",href:"#DimensionalData.strict_broadcast"},[i("span",{class:"jlbinding"},"DimensionalData.strict_broadcast")],-1)),s[118]||(s[118]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[119]||(s[119]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strict broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L16-L22" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",H,[i("summary",null,[s[120]||(s[120]=i("a",{id:"DimensionalData.strict_broadcast!",href:"#DimensionalData.strict_broadcast!"},[i("span",{class:"jlbinding"},"DimensionalData.strict_broadcast!")],-1)),s[121]||(s[121]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[122]||(s[122]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global broadcasting checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/broadcast.jl#L25-L31" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",Q,[i("summary",null,[s[123]||(s[123]=i("a",{id:"DimensionalData.strict_matmul",href:"#DimensionalData.strict_matmul"},[i("span",{class:"jlbinding"},"DimensionalData.strict_matmul")],-1)),s[124]||(s[124]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[125]||(s[125]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strickt broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/matmul.jl#L13-L19" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",_,[i("summary",null,[s[126]||(s[126]=i("a",{id:"DimensionalData.strict_matmul!",href:"#DimensionalData.strict_matmul!"},[i("span",{class:"jlbinding"},"DimensionalData.strict_matmul!")],-1)),s[127]||(s[127]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[128]||(s[128]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global matrix multiplication checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/matmul.jl#L22-L28" target="_blank" rel="noreferrer">source</a></p>',5))]),s[179]||(s[179]=i("p",null,"Base methods",-1)),i("details",ss,[i("summary",null,[s[129]||(s[129]=i("a",{id:"Base.cat",href:"#Base.cat"},[i("span",{class:"jlbinding"},"Base.cat")],-1)),s[130]||(s[130]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[131]||(s[131]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])], dims)</span></span></code></pre></div><p>Concatenate all or a subset of layers for all passed in stacks.</p><p><strong>Keywords</strong></p><ul><li><p><code>keys</code>: <code>Tuple</code> of <code>Symbol</code> for the stack keys to concatenate.</p></li><li><p><code>dims</code>: Dimension of child array to concatenate on.</p></li></ul><p><strong>Example</strong></p><p>Concatenate the :sea_surface_temp and :humidity layers in the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L99-L116" target="_blank" rel="noreferrer">source</a></p>',8))]),i("details",is,[i("summary",null,[s[132]||(s[132]=i("a",{id:"Base.copy!",href:"#Base.copy!"},[i("span",{class:"jlbinding"},"Base.copy!")],-1)),s[133]||(s[133]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[134]||(s[134]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, key</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Key</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Copy the stack layer <code>key</code> to <code>dst</code>, which can be any <code>AbstractArray</code>.</p><p><strong>Example</strong></p><p>Copy the <code>:humidity</code> layer from <code>stack</code> to <code>array</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(array, stack, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L3-L15" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst)])</span></span></code></pre></div><p>Copy all or a subset of layers from one stack to another.</p><p><strong>Example</strong></p><p>Copy just the <code>:sea_surface_temp</code> and <code>:humidity</code> layers from <code>src</code> to <code>dst</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L18-L30" target="_blank" rel="noreferrer">source</a></p>',12))]),i("details",as,[i("summary",null,[s[135]||(s[135]=i("a",{id:"Base.eachslice",href:"#Base.eachslice"},[i("span",{class:"jlbinding"},"Base.eachslice")],-1)),s[136]||(s[136]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[137]||(s[137]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims,drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>A</code>, returning arrays that select all the data from the other dimensions in <code>A</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code> if <code>drop=true</code>. Otherwise it will have the same dimensionality as the underlying array with inner dimensions having size 1.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/methods.jl#L112-L120" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stack</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims, drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>stack</code>, returning stacks that select all the data from the other dimensions in <code>stack</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code>.</p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/utils.jl#L2-L33" target="_blank" rel="noreferrer">source</a></p>`,7))]),s[176]||(s[176]=i("h1",{id:"Global-lookup-strictness-settings",tabindex:"-1"},[a("Global lookup strictness settings "),i("a",{class:"header-anchor",href:"#Global-lookup-strictness-settings","aria-label":'Permalink to "Global lookup strictness settings {#Global-lookup-strictness-settings}"'},"")],-1)),s[177]||(s[177]=i("p",null,[a("Control how strict DimensionalData when comparing "),i("a",{href:"/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"},[i("code",null,"Lookup")]),a("s before doing broadcasts and matrix multipications.")],-1)),s[178]||(s[178]=i("p",null,[a("In some cases (especially "),i("code",null,"DimVector"),a(" and small "),i("code",null,"DimArray"),a(") checking lookup values match may be too costly compared to the operations. You can turn check the current setting and turn them on or off with these methods.")],-1)),i("details",$,[i("summary",null,[s[117]||(s[117]=i("a",{id:"DimensionalData.strict_broadcast",href:"#DimensionalData.strict_broadcast"},[i("span",{class:"jlbinding"},"DimensionalData.strict_broadcast")],-1)),s[118]||(s[118]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[119]||(s[119]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strict broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L16-L22" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",H,[i("summary",null,[s[120]||(s[120]=i("a",{id:"DimensionalData.strict_broadcast!",href:"#DimensionalData.strict_broadcast!"},[i("span",{class:"jlbinding"},"DimensionalData.strict_broadcast!")],-1)),s[121]||(s[121]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[122]||(s[122]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_broadcast!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global broadcasting checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before brodcasting, to ensure that dimensions match closely.</p><p>An exception to this rule is when dimension are of length one, as these is ignored in broadcasts.</p><p>We always check that dimension names match in broadcasts. If you don't want this either, explicitly use <code>parent(A)</code> before broadcasting to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/broadcast.jl#L25-L31" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",Q,[i("summary",null,[s[123]||(s[123]=i("a",{id:"DimensionalData.strict_matmul",href:"#DimensionalData.strict_matmul"},[i("span",{class:"jlbinding"},"DimensionalData.strict_matmul")],-1)),s[124]||(s[124]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[125]||(s[125]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>Check if strickt broadcasting checks are active.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/matmul.jl#L13-L19" target="_blank" rel="noreferrer">source</a></p>',5))]),i("details",_,[i("summary",null,[s[126]||(s[126]=i("a",{id:"DimensionalData.strict_matmul!",href:"#DimensionalData.strict_matmul!"},[i("span",{class:"jlbinding"},"DimensionalData.strict_matmul!")],-1)),s[127]||(s[127]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[128]||(s[128]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">strict_matmul!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Set global matrix multiplication checks to <code>strict</code>, or not for all <code>AbstractDimArray</code>.</p><p>With <code>strict=true</code> we check <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups.Lookup"><code>Lookup</code></a> <a href="/DimensionalData.jl/dev/api/lookuparrays#Order"><code>Order</code></a> and values before attempting matrix multiplication, to ensure that dimensions match closely.</p><p>We always check that dimension names match in matrix multiplication. If you don't want this either, explicitly use <code>parent(A)</code> before multiplying to remove the <code>AbstractDimArray</code> wrapper completely.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/matmul.jl#L22-L28" target="_blank" rel="noreferrer">source</a></p>',5))]),s[179]||(s[179]=i("p",null,"Base methods",-1)),i("details",ss,[i("summary",null,[s[129]||(s[129]=i("a",{id:"Base.cat",href:"#Base.cat"},[i("span",{class:"jlbinding"},"Base.cat")],-1)),s[130]||(s[130]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[131]||(s[131]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])], dims)</span></span></code></pre></div><p>Concatenate all or a subset of layers for all passed in stacks.</p><p><strong>Keywords</strong></p><ul><li><p><code>keys</code>: <code>Tuple</code> of <code>Symbol</code> for the stack keys to concatenate.</p></li><li><p><code>dims</code>: Dimension of child array to concatenate on.</p></li></ul><p><strong>Example</strong></p><p>Concatenate the :sea_surface_temp and :humidity layers in the time dimension:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cat</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stacks</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Ti)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L99-L116" target="_blank" rel="noreferrer">source</a></p>',8))]),i("details",is,[i("summary",null,[s[132]||(s[132]=i("a",{id:"Base.copy!",href:"#Base.copy!"},[i("span",{class:"jlbinding"},"Base.copy!")],-1)),s[133]||(s[133]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[134]||(s[134]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, key</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Key</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Copy the stack layer <code>key</code> to <code>dst</code>, which can be any <code>AbstractArray</code>.</p><p><strong>Example</strong></p><p>Copy the <code>:humidity</code> layer from <code>stack</code> to <code>array</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(array, stack, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L3-L15" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">keys</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst)])</span></span></code></pre></div><p>Copy all or a subset of layers from one stack to another.</p><p><strong>Example</strong></p><p>Copy just the <code>:sea_surface_temp</code> and <code>:humidity</code> layers from <code>src</code> to <code>dst</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">copy!</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dst</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, src</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, keys</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:sea_surface_temp</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:humidity</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L18-L30" target="_blank" rel="noreferrer">source</a></p>',12))]),i("details",as,[i("summary",null,[s[135]||(s[135]=i("a",{id:"Base.eachslice",href:"#Base.eachslice"},[i("span",{class:"jlbinding"},"Base.eachslice")],-1)),s[136]||(s[136]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[137]||(s[137]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims,drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>A</code>, returning arrays that select all the data from the other dimensions in <code>A</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code> if <code>drop=true</code>. Otherwise it will have the same dimensionality as the underlying array with inner dimensions having size 1.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/methods.jl#L112-L120" target="_blank" rel="noreferrer">source</a></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Base</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">eachslice</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(stack</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; dims, drop</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Create a generator that iterates over dimensions <code>dims</code> of <code>stack</code>, returning stacks that select all the data from the other dimensions in <code>stack</code> using views.</p><p>The generator has <code>size</code> and <code>axes</code> equivalent to those of the provided <code>dims</code>.</p><p><strong>Examples</strong></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ds </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">randn</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), Z)),</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">randn</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:x2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), Ti))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ));</span></span> @@ -451,13 +451,13 @@ import{_ as e,c as h,j as i,a,G as t,a4 as l,B as k,o as p}from"./chunks/framewo <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">├──────────────────────────────────────────────── layers ┤</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :x</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> eltype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Float64 dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y size</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> :y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> eltype</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Float64 dims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Y, Ti size</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">×</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────┘</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/methods.jl#L49-L85" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[180]||(s[180]=i("p",null,[a("Most base methods work as expected, using "),i("code",null,"Dimension"),a(" wherever a "),i("code",null,"dims"),a(" keyword is used. They are not all specifically documented here.")],-1)),s[181]||(s[181]=i("h2",{id:"name",tabindex:"-1"},[a("Name "),i("a",{class:"header-anchor",href:"#name","aria-label":'Permalink to "Name"'},"")],-1)),i("details",ns,[i("summary",null,[s[138]||(s[138]=i("a",{id:"DimensionalData.AbstractName",href:"#DimensionalData.AbstractName"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractName")],-1)),s[139]||(s[139]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[140]||(s[140]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractName</span></span></code></pre></div><p>Abstract supertype for name wrappers.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",ts,[i("summary",null,[s[141]||(s[141]=i("a",{id:"DimensionalData.Name",href:"#DimensionalData.Name"},[i("span",{class:"jlbinding"},"DimensionalData.Name")],-1)),s[142]||(s[142]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[143]||(s[143]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">└────────────────────────────────────────────────────────┘</span></span></code></pre></div><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/methods.jl#L49-L85" target="_blank" rel="noreferrer">source</a></p>`,10))]),s[180]||(s[180]=i("p",null,[a("Most base methods work as expected, using "),i("code",null,"Dimension"),a(" wherever a "),i("code",null,"dims"),a(" keyword is used. They are not all specifically documented here.")],-1)),s[181]||(s[181]=i("h2",{id:"name",tabindex:"-1"},[a("Name "),i("a",{class:"header-anchor",href:"#name","aria-label":'Permalink to "Name"'},"")],-1)),i("details",ns,[i("summary",null,[s[138]||(s[138]=i("a",{id:"DimensionalData.AbstractName",href:"#DimensionalData.AbstractName"},[i("span",{class:"jlbinding"},"DimensionalData.AbstractName")],-1)),s[139]||(s[139]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[140]||(s[140]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">AbstractName</span></span></code></pre></div><p>Abstract supertype for name wrappers.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L1-L5" target="_blank" rel="noreferrer">source</a></p>',3))]),i("details",ts,[i("summary",null,[s[141]||(s[141]=i("a",{id:"DimensionalData.Name",href:"#DimensionalData.Name"},[i("span",{class:"jlbinding"},"DimensionalData.Name")],-1)),s[142]||(s[142]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[143]||(s[143]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Union</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{Symbol,Name) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Name</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NoName</span></span></code></pre></div><p>Name wrapper. This lets arrays keep symbol names when the array wrapper needs to be <code>isbits</code>, like for use on GPUs. It makes the name a property of the type. It's not necessary to use in normal use, a symbol is probably easier.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L23-L32" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ls,[i("summary",null,[s[144]||(s[144]=i("a",{id:"DimensionalData.NoName",href:"#DimensionalData.NoName"},[i("span",{class:"jlbinding"},"DimensionalData.NoName")],-1)),s[145]||(s[145]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[146]||(s[146]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoName </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> NoName</span></span></code></pre></div><p>Name wrapper. This lets arrays keep symbol names when the array wrapper needs to be <code>isbits</code>, like for use on GPUs. It makes the name a property of the type. It's not necessary to use in normal use, a symbol is probably easier.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L23-L32" target="_blank" rel="noreferrer">source</a></p>`,3))]),i("details",ls,[i("summary",null,[s[144]||(s[144]=i("a",{id:"DimensionalData.NoName",href:"#DimensionalData.NoName"},[i("span",{class:"jlbinding"},"DimensionalData.NoName")],-1)),s[145]||(s[145]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[146]||(s[146]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">NoName </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> AbstractName</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>NoName specifies an array is not named, and is the default <code>name</code> value for all <code>AbstractDimArray</code>s.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/name.jl#L10-L17" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[182]||(s[182]=i("h2",{id:"Internal-interface",tabindex:"-1"},[a("Internal interface "),i("a",{class:"header-anchor",href:"#Internal-interface","aria-label":'Permalink to "Internal interface {#Internal-interface}"'},"")],-1)),i("details",es,[i("summary",null,[s[147]||(s[147]=i("a",{id:"DimensionalData.DimArrayInterface",href:"#DimensionalData.DimArrayInterface"},[i("span",{class:"jlbinding"},"DimensionalData.DimArrayInterface")],-1)),s[148]||(s[148]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[149]||(s[149]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArrayInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_parent_kw, :rebuild_dims_kw, :rebuild)</code> and optional components <code>(:refdims, :name, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches dimensions of array</p></li><li><p><code>size</code>: length of dims matches dimensions of array</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>name</code>:</p><ul><li><p>rebuild updates name in arg rebuild</p></li><li><p>rebuild updates name in kw rebuild</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p>',11))]),i("details",hs,[i("summary",null,[s[150]||(s[150]=i("a",{id:"DimensionalData.DimStackInterface",href:"#DimensionalData.DimStackInterface"},[i("span",{class:"jlbinding"},"DimensionalData.DimStackInterface")],-1)),s[151]||(s[151]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[152]||(s[152]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStackInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_layerdims, :rebuild_dims_kw, :rebuild_parent_kw, :rebuild_layerdims_kw, :rebuild)</code> and optional components <code>(:refdims, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches ndims of stack</p></li><li><p><code>size</code>: length of dims matches size of stack</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_layerdims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_layerdims_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p>',11))]),i("details",ks,[i("summary",null,[s[153]||(s[153]=i("a",{id:"DimensionalData.rebuild_from_arrays",href:"#DimensionalData.rebuild_from_arrays"},[i("span",{class:"jlbinding"},"DimensionalData.rebuild_from_arrays")],-1)),s[154]||(s[154]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[155]||(s[155]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild_from_arrays</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, das</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NamedTuple{<:Any,<:Tuple{Vararg{AbstractDimArray}}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an <code>AbstractDimStack</code> from a <code>Tuple</code> or <code>NamedTuple</code> of <code>AbstractDimArray</code> and an existing stack.</p><p><strong>Keywords</strong></p><p>Keywords are simply the fields of the stack object:</p><ul><li><p><code>data</code></p></li><li><p><code>dims</code></p></li><li><p><code>refdims</code></p></li><li><p><code>metadata</code></p></li><li><p><code>layerdims</code></p></li><li><p><code>layermetadata</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/stack/stack.jl#L79-L95" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",ps,[i("summary",null,[s[156]||(s[156]=i("a",{id:"DimensionalData.show_main",href:"#DimensionalData.show_main"},[i("span",{class:"jlbinding"},"DimensionalData.show_main")],-1)),s[157]||(s[157]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[158]||(s[158]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding the main part of <code>show</code></p><p>At the least, you likely want to call:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_top</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, mime, A)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/show.jl#L27-L40" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",ds,[i("summary",null,[s[159]||(s[159]=i("a",{id:"DimensionalData.show_after",href:"#DimensionalData.show_after"},[i("span",{class:"jlbinding"},"DimensionalData.show_after")],-1)),s[160]||(s[160]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[161]||(s[161]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding additional <code>show</code> text for AbstractDimArray/AbstractDimStack subtypes.</p><p><em>Always include <code>kw</code> to avoid future breaking changes</em></p><p>Additional keywords may be added at any time.</p><p><code>blockwidth</code> is passed in context</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">blockwidth </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> get</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:blockwidth</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Note - a ANSI box is left unclosed. This method needs to close it, or add more. <code>blockwidth</code> is the maximum length of the inner text.</p><p>Most likely you always want to at least close the show blocks with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_block_close</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, blockwidth)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/array/show.jl#L47-L75" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",rs,[i("summary",null,[s[162]||(s[162]=i("a",{id:"DimensionalData.refdims_title",href:"#DimensionalData.refdims_title"},[i("span",{class:"jlbinding"},"DimensionalData.refdims_title")],-1)),s[163]||(s[163]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[164]||(s[164]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NoName</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span></code></pre></div><p>NoName specifies an array is not named, and is the default <code>name</code> value for all <code>AbstractDimArray</code>s.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/name.jl#L10-L17" target="_blank" rel="noreferrer">source</a></p>`,3))]),s[182]||(s[182]=i("h2",{id:"Internal-interface",tabindex:"-1"},[a("Internal interface "),i("a",{class:"header-anchor",href:"#Internal-interface","aria-label":'Permalink to "Internal interface {#Internal-interface}"'},"")],-1)),i("details",es,[i("summary",null,[s[147]||(s[147]=i("a",{id:"DimensionalData.DimArrayInterface",href:"#DimensionalData.DimArrayInterface"},[i("span",{class:"jlbinding"},"DimensionalData.DimArrayInterface")],-1)),s[148]||(s[148]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[149]||(s[149]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimArrayInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_parent_kw, :rebuild_dims_kw, :rebuild)</code> and optional components <code>(:refdims, :name, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches dimensions of array</p></li><li><p><code>size</code>: length of dims matches dimensions of array</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>name</code>:</p><ul><li><p>rebuild updates name in arg rebuild</p></li><li><p>rebuild updates name in kw rebuild</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p>',11))]),i("details",hs,[i("summary",null,[s[150]||(s[150]=i("a",{id:"DimensionalData.DimStackInterface",href:"#DimensionalData.DimStackInterface"},[i("span",{class:"jlbinding"},"DimensionalData.DimStackInterface")],-1)),s[151]||(s[151]=a()),t(n,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[152]||(s[152]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimStackInterface</span></span></code></pre></div><p>An Interfaces.jl <code>Interface</code> with mandatory components <code>(:dims, :refdims_base, :ndims, :size, :rebuild_parent, :rebuild_dims, :rebuild_layerdims, :rebuild_dims_kw, :rebuild_parent_kw, :rebuild_layerdims_kw, :rebuild)</code> and optional components <code>(:refdims, :metadata)</code>.</p><p>This is an early stage of inteface definition, many things are not yet tested.</p><p>Pass constructed AbstractDimArrays as test data.</p><p>They must not be zero dimensional, and should test at least 1, 2, and 3 dimensions.</p><p><strong>Extended help</strong></p><p><strong>Mandatory keys:</strong></p><ul><li><p><code>dims</code>:</p><ul><li><p>defines a <code>dims</code> method</p></li><li><p>dims are updated on getindex</p></li></ul></li><li><p><code>refdims_base</code>: <code>refdims</code> returns a tuple of Dimension or empty</p></li><li><p><code>ndims</code>: number of dims matches ndims of stack</p></li><li><p><code>size</code>: length of dims matches size of stack</p></li><li><p><code>rebuild_parent</code>: rebuild parent from args</p></li><li><p><code>rebuild_dims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_layerdims</code>: rebuild paaarnet and dims from args</p></li><li><p><code>rebuild_dims_kw</code>: rebuild dims from args</p></li><li><p><code>rebuild_parent_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild_layerdims_kw</code>: rebuild parent from args</p></li><li><p><code>rebuild</code>: all rebuild arguments and keywords are accepted</p></li></ul><p><strong>Optional keys:</strong></p><ul><li><p><code>refdims</code>:</p><ul><li><p>refdims are updated in args rebuild</p></li><li><p>refdims are updated in kw rebuild</p></li><li><p>dropped dimensions are added to refdims</p></li></ul></li><li><p><code>metadata</code>:</p><ul><li><p>rebuild updates metadata in arg rebuild</p></li><li><p>rebuild updates metadata in kw rebuild</p></li></ul></li></ul><p><a href="https://github.com/rafaqz/Interfaces.jl/blob/v0.3.2/src/interface.jl#L86-L94" target="_blank" rel="noreferrer">source</a></p>',11))]),i("details",ks,[i("summary",null,[s[153]||(s[153]=i("a",{id:"DimensionalData.rebuild_from_arrays",href:"#DimensionalData.rebuild_from_arrays"},[i("span",{class:"jlbinding"},"DimensionalData.rebuild_from_arrays")],-1)),s[154]||(s[154]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[155]||(s[155]=l('<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild_from_arrays</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(s</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, das</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">NamedTuple{<:Any,<:Tuple{Vararg{AbstractDimArray}}}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Rebuild an <code>AbstractDimStack</code> from a <code>Tuple</code> or <code>NamedTuple</code> of <code>AbstractDimArray</code> and an existing stack.</p><p><strong>Keywords</strong></p><p>Keywords are simply the fields of the stack object:</p><ul><li><p><code>data</code></p></li><li><p><code>dims</code></p></li><li><p><code>refdims</code></p></li><li><p><code>metadata</code></p></li><li><p><code>layerdims</code></p></li><li><p><code>layermetadata</code></p></li></ul><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/stack/stack.jl#L79-L95" target="_blank" rel="noreferrer">source</a></p>',6))]),i("details",ps,[i("summary",null,[s[156]||(s[156]=i("a",{id:"DimensionalData.show_main",href:"#DimensionalData.show_main"},[i("span",{class:"jlbinding"},"DimensionalData.show_main")],-1)),s[157]||(s[157]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[158]||(s[158]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_main</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding the main part of <code>show</code></p><p>At the least, you likely want to call:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_top</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, mime, A)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/show.jl#L27-L40" target="_blank" rel="noreferrer">source</a></p>`,6))]),i("details",ds,[i("summary",null,[s[159]||(s[159]=i("a",{id:"DimensionalData.show_after",href:"#DimensionalData.show_after"},[i("span",{class:"jlbinding"},"DimensionalData.show_after")],-1)),s[160]||(s[160]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[161]||(s[161]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">show_after</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">IO</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, mime, A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Interface methods for adding additional <code>show</code> text for AbstractDimArray/AbstractDimStack subtypes.</p><p><em>Always include <code>kw</code> to avoid future breaking changes</em></p><p>Additional keywords may be added at any time.</p><p><code>blockwidth</code> is passed in context</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">blockwidth </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> get</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:blockwidth</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Note - a ANSI box is left unclosed. This method needs to close it, or add more. <code>blockwidth</code> is the maximum length of the inner text.</p><p>Most likely you always want to at least close the show blocks with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">print_block_close</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(io, blockwidth)</span></span></code></pre></div><p>But read the DimensionalData.jl <code>show.jl</code> code for details.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/array/show.jl#L47-L75" target="_blank" rel="noreferrer">source</a></p>`,11))]),i("details",rs,[i("summary",null,[s[162]||(s[162]=i("a",{id:"DimensionalData.refdims_title",href:"#DimensionalData.refdims_title"},[i("span",{class:"jlbinding"},"DimensionalData.refdims_title")],-1)),s[163]||(s[163]=a()),t(n,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[164]||(s[164]=l(`<div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">AbstractDimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdims</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Tuple</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> -<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a title string based on reference dimension values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/328e1058f7792f9e7fadee5e07a9e9ddfa64c2cf/src/plotrecipes.jl#L159-L165" target="_blank" rel="noreferrer">source</a></p>`,3))])])}const us=e(d,[["render",os]]);export{ms as __pageData,us as default}; +<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">refdims_title</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(refdim</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">::</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dimension</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Generate a title string based on reference dimension values.</p><p><a href="https://github.com/rafaqz/DimensionalData.jl/blob/7b2193e96c1d42616e027ffacb79238d0f679b24/src/plotrecipes.jl#L159-L165" target="_blank" rel="noreferrer">source</a></p>`,3))])])}const us=e(d,[["render",os]]);export{ms as __pageData,us as default}; diff --git a/dev/assets/app.DAtVKXYd.js b/dev/assets/app.DC0kJGHo.js similarity index 90% rename from dev/assets/app.DAtVKXYd.js rename to dev/assets/app.DC0kJGHo.js index efe3add94..ac0ba290c 100644 --- a/dev/assets/app.DAtVKXYd.js +++ b/dev/assets/app.DC0kJGHo.js @@ -1 +1 @@ -import{R as p}from"./chunks/theme.nAO4pd4Y.js";import{R as o,a5 as u,a6 as c,a7 as l,a8 as f,a9 as d,aa as m,ab as h,ac as g,ad as A,ae as v,d as P,u as R,v as w,s as y,af as C,ag as b,ah as E,ai as S}from"./chunks/framework.C6EFuEL4.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(p),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=R();return w(()=>{y(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function D(){globalThis.__VITEPRESS__=!0;const e=j(),a=_();a.provide(c,e);const t=l(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function _(){return g(T)}function j(){let e=o,a;return A(t=>{let n=v(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&D().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{D as createApp}; +import{R as p}from"./chunks/theme.b8NutB4I.js";import{R as o,a5 as u,a6 as c,a7 as l,a8 as f,a9 as d,aa as m,ab as h,ac as g,ad as A,ae as v,d as P,u as R,v as w,s as y,af as C,ag as b,ah as E,ai as S}from"./chunks/framework.B8l2DGq3.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(p),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=R();return w(()=>{y(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function D(){globalThis.__VITEPRESS__=!0;const e=j(),a=_();a.provide(c,e);const t=l(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function _(){return g(T)}function j(){let e=o,a;return A(t=>{let n=v(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&D().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{D as createApp}; diff --git a/dev/assets/basics.md.D2qsW-mh.js b/dev/assets/basics.md.1otrM5SC.js similarity index 99% rename from dev/assets/basics.md.D2qsW-mh.js rename to dev/assets/basics.md.1otrM5SC.js index 8e0c24393..4705299d3 100644 --- a/dev/assets/basics.md.D2qsW-mh.js +++ b/dev/assets/basics.md.1otrM5SC.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a4 as n,o as h}from"./chunks/framework.C6EFuEL4.js";const y=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"basics.md","filePath":"basics.md","lastUpdated":null}'),l={name:"basics.md"};function k(t,s,e,p,d,r){return h(),a("div",null,s[0]||(s[0]=[n(`<h2 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-label="Permalink to "Installation""></a></h2><p>If you want to use this package you need to install it first. You can do it using the following commands:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># ']' should be pressed</span></span> +import{_ as i,c as a,a4 as n,o as h}from"./chunks/framework.B8l2DGq3.js";const y=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"basics.md","filePath":"basics.md","lastUpdated":null}'),l={name:"basics.md"};function k(t,s,e,p,d,r){return h(),a("div",null,s[0]||(s[0]=[n(`<h2 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-label="Permalink to "Installation""></a></h2><p>If you want to use this package you need to install it first. You can do it using the following commands:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># ']' should be pressed</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> add DimensionalData</span></span></code></pre></div><p>or</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pkg</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">add</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"DimensionalData"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Additionally, it is recommended to check the version that you have installed with the status command.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ]</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> status DimensionalData</span></span></code></pre></div><h2 id="basics" tabindex="-1">Basics <a class="header-anchor" href="#basics" aria-label="Permalink to "Basics""></a></h2><p>Start using the package:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><p>and create your first DimArray</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (a</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, b</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> diff --git a/dev/assets/basics.md.D2qsW-mh.lean.js b/dev/assets/basics.md.1otrM5SC.lean.js similarity index 99% rename from dev/assets/basics.md.D2qsW-mh.lean.js rename to dev/assets/basics.md.1otrM5SC.lean.js index 8e0c24393..4705299d3 100644 --- a/dev/assets/basics.md.D2qsW-mh.lean.js +++ b/dev/assets/basics.md.1otrM5SC.lean.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a4 as n,o as h}from"./chunks/framework.C6EFuEL4.js";const y=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"basics.md","filePath":"basics.md","lastUpdated":null}'),l={name:"basics.md"};function k(t,s,e,p,d,r){return h(),a("div",null,s[0]||(s[0]=[n(`<h2 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-label="Permalink to "Installation""></a></h2><p>If you want to use this package you need to install it first. You can do it using the following commands:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># ']' should be pressed</span></span> +import{_ as i,c as a,a4 as n,o as h}from"./chunks/framework.B8l2DGq3.js";const y=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"basics.md","filePath":"basics.md","lastUpdated":null}'),l={name:"basics.md"};function k(t,s,e,p,d,r){return h(),a("div",null,s[0]||(s[0]=[n(`<h2 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-label="Permalink to "Installation""></a></h2><p>If you want to use this package you need to install it first. You can do it using the following commands:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># ']' should be pressed</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> add DimensionalData</span></span></code></pre></div><p>or</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pkg</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">add</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"DimensionalData"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Additionally, it is recommended to check the version that you have installed with the status command.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ]</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> status DimensionalData</span></span></code></pre></div><h2 id="basics" tabindex="-1">Basics <a class="header-anchor" href="#basics" aria-label="Permalink to "Basics""></a></h2><p>Start using the package:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><p>and create your first DimArray</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (a</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, b</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> diff --git a/dev/assets/broadcasts.md.BtCwjWW3.js b/dev/assets/broadcasts.md.CVzEqDHf.js similarity index 99% rename from dev/assets/broadcasts.md.BtCwjWW3.js rename to dev/assets/broadcasts.md.CVzEqDHf.js index e43af3ed5..25f8fd840 100644 --- a/dev/assets/broadcasts.md.BtCwjWW3.js +++ b/dev/assets/broadcasts.md.CVzEqDHf.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a4 as n,o as e}from"./chunks/framework.C6EFuEL4.js";const g=JSON.parse('{"title":"Dimensional broadcasts with @d and broadcast_dims","description":"","frontmatter":{},"headers":[],"relativePath":"broadcasts.md","filePath":"broadcasts.md","lastUpdated":null}'),h={name:"broadcasts.md"};function l(k,s,t,p,d,f){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="Dimensional-broadcasts-with-@d-and-broadcast_dims" tabindex="-1">Dimensional broadcasts with <code>@d</code> and <code>broadcast_dims</code> <a class="header-anchor" href="#Dimensional-broadcasts-with-@d-and-broadcast_dims" aria-label="Permalink to "Dimensional broadcasts with \`@d\` and \`broadcast_dims\` {#Dimensional-broadcasts-with-@d-and-broadcast_dims}""></a></h1><p>Broadcasting over AbstractDimArray works as usual with Base Julia broadcasts, except that dimensions are checked for compatibility with eachother, and that values match. Strict checks can be turned of globally with <code>strict_broadcast!(false)</code>. To avoid even dimension name checks, broadcast over <code>parent(dimarray)</code>.</p><p>The <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.@d"><code>@d</code></a> macro is a dimension-aware extension to regular dot brodcasting. <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> are analagous to Base julia <code>broadcast</code>.</p><p>Because we know the names of the dimensions, there is no ambiguity in which one we mean to broadcast together. This means we can permute and reshape dims so that broadcasts that would fail with a regular <code>Array</code> just work with a <code>DimArray</code>.</p><p>As an added bonus, <code>broadcast_dims</code> even works on <code>DimStack</code>s. Currently <code>@d</code> does not work on <code>DimStack</code>.</p><h2 id="Example:-scaling-along-the-time-dimension" tabindex="-1">Example: scaling along the time dimension <a class="header-anchor" href="#Example:-scaling-along-the-time-dimension" aria-label="Permalink to "Example: scaling along the time dimension {#Example:-scaling-along-the-time-dimension}""></a></h2><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as i,c as a,a4 as n,o as e}from"./chunks/framework.B8l2DGq3.js";const g=JSON.parse('{"title":"Dimensional broadcasts with @d and broadcast_dims","description":"","frontmatter":{},"headers":[],"relativePath":"broadcasts.md","filePath":"broadcasts.md","lastUpdated":null}'),h={name:"broadcasts.md"};function l(k,s,t,p,d,f){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="Dimensional-broadcasts-with-@d-and-broadcast_dims" tabindex="-1">Dimensional broadcasts with <code>@d</code> and <code>broadcast_dims</code> <a class="header-anchor" href="#Dimensional-broadcasts-with-@d-and-broadcast_dims" aria-label="Permalink to "Dimensional broadcasts with \`@d\` and \`broadcast_dims\` {#Dimensional-broadcasts-with-@d-and-broadcast_dims}""></a></h1><p>Broadcasting over AbstractDimArray works as usual with Base Julia broadcasts, except that dimensions are checked for compatibility with eachother, and that values match. Strict checks can be turned of globally with <code>strict_broadcast!(false)</code>. To avoid even dimension name checks, broadcast over <code>parent(dimarray)</code>.</p><p>The <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.@d"><code>@d</code></a> macro is a dimension-aware extension to regular dot brodcasting. <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> are analagous to Base julia <code>broadcast</code>.</p><p>Because we know the names of the dimensions, there is no ambiguity in which one we mean to broadcast together. This means we can permute and reshape dims so that broadcasts that would fail with a regular <code>Array</code> just work with a <code>DimArray</code>.</p><p>As an added bonus, <code>broadcast_dims</code> even works on <code>DimStack</code>s. Currently <code>@d</code> does not work on <code>DimStack</code>.</p><h2 id="Example:-scaling-along-the-time-dimension" tabindex="-1">Example: scaling along the time dimension <a class="header-anchor" href="#Example:-scaling-along-the-time-dimension" aria-label="Permalink to "Example: scaling along the time dimension {#Example:-scaling-along-the-time-dimension}""></a></h2><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Statistics</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y, t </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">25</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1:100</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1:25</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> diff --git a/dev/assets/broadcasts.md.BtCwjWW3.lean.js b/dev/assets/broadcasts.md.CVzEqDHf.lean.js similarity index 99% rename from dev/assets/broadcasts.md.BtCwjWW3.lean.js rename to dev/assets/broadcasts.md.CVzEqDHf.lean.js index e43af3ed5..25f8fd840 100644 --- a/dev/assets/broadcasts.md.BtCwjWW3.lean.js +++ b/dev/assets/broadcasts.md.CVzEqDHf.lean.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a4 as n,o as e}from"./chunks/framework.C6EFuEL4.js";const g=JSON.parse('{"title":"Dimensional broadcasts with @d and broadcast_dims","description":"","frontmatter":{},"headers":[],"relativePath":"broadcasts.md","filePath":"broadcasts.md","lastUpdated":null}'),h={name:"broadcasts.md"};function l(k,s,t,p,d,f){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="Dimensional-broadcasts-with-@d-and-broadcast_dims" tabindex="-1">Dimensional broadcasts with <code>@d</code> and <code>broadcast_dims</code> <a class="header-anchor" href="#Dimensional-broadcasts-with-@d-and-broadcast_dims" aria-label="Permalink to "Dimensional broadcasts with \`@d\` and \`broadcast_dims\` {#Dimensional-broadcasts-with-@d-and-broadcast_dims}""></a></h1><p>Broadcasting over AbstractDimArray works as usual with Base Julia broadcasts, except that dimensions are checked for compatibility with eachother, and that values match. Strict checks can be turned of globally with <code>strict_broadcast!(false)</code>. To avoid even dimension name checks, broadcast over <code>parent(dimarray)</code>.</p><p>The <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.@d"><code>@d</code></a> macro is a dimension-aware extension to regular dot brodcasting. <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> are analagous to Base julia <code>broadcast</code>.</p><p>Because we know the names of the dimensions, there is no ambiguity in which one we mean to broadcast together. This means we can permute and reshape dims so that broadcasts that would fail with a regular <code>Array</code> just work with a <code>DimArray</code>.</p><p>As an added bonus, <code>broadcast_dims</code> even works on <code>DimStack</code>s. Currently <code>@d</code> does not work on <code>DimStack</code>.</p><h2 id="Example:-scaling-along-the-time-dimension" tabindex="-1">Example: scaling along the time dimension <a class="header-anchor" href="#Example:-scaling-along-the-time-dimension" aria-label="Permalink to "Example: scaling along the time dimension {#Example:-scaling-along-the-time-dimension}""></a></h2><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as i,c as a,a4 as n,o as e}from"./chunks/framework.B8l2DGq3.js";const g=JSON.parse('{"title":"Dimensional broadcasts with @d and broadcast_dims","description":"","frontmatter":{},"headers":[],"relativePath":"broadcasts.md","filePath":"broadcasts.md","lastUpdated":null}'),h={name:"broadcasts.md"};function l(k,s,t,p,d,f){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="Dimensional-broadcasts-with-@d-and-broadcast_dims" tabindex="-1">Dimensional broadcasts with <code>@d</code> and <code>broadcast_dims</code> <a class="header-anchor" href="#Dimensional-broadcasts-with-@d-and-broadcast_dims" aria-label="Permalink to "Dimensional broadcasts with \`@d\` and \`broadcast_dims\` {#Dimensional-broadcasts-with-@d-and-broadcast_dims}""></a></h1><p>Broadcasting over AbstractDimArray works as usual with Base Julia broadcasts, except that dimensions are checked for compatibility with eachother, and that values match. Strict checks can be turned of globally with <code>strict_broadcast!(false)</code>. To avoid even dimension name checks, broadcast over <code>parent(dimarray)</code>.</p><p>The <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.@d"><code>@d</code></a> macro is a dimension-aware extension to regular dot brodcasting. <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> are analagous to Base julia <code>broadcast</code>.</p><p>Because we know the names of the dimensions, there is no ambiguity in which one we mean to broadcast together. This means we can permute and reshape dims so that broadcasts that would fail with a regular <code>Array</code> just work with a <code>DimArray</code>.</p><p>As an added bonus, <code>broadcast_dims</code> even works on <code>DimStack</code>s. Currently <code>@d</code> does not work on <code>DimStack</code>.</p><h2 id="Example:-scaling-along-the-time-dimension" tabindex="-1">Example: scaling along the time dimension <a class="header-anchor" href="#Example:-scaling-along-the-time-dimension" aria-label="Permalink to "Example: scaling along the time dimension {#Example:-scaling-along-the-time-dimension}""></a></h2><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Statistics</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y, t </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">25</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1:100</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1:25</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> diff --git a/dev/assets/chunks/@localSearchIndexroot.BZAoIRmY.js b/dev/assets/chunks/@localSearchIndexroot.BZAoIRmY.js deleted file mode 100644 index 2174d06b0..000000000 --- a/dev/assets/chunks/@localSearchIndexroot.BZAoIRmY.js +++ /dev/null @@ -1 +0,0 @@ -const e='{"documentCount":86,"nextId":86,"documentIds":{"0":"/DimensionalData.jl/dev/api/dimensions#dimensions","1":"/DimensionalData.jl/dev/api/dimensions#Exported-methods","2":"/DimensionalData.jl/dev/api/dimensions#Non-exported-methods","3":"/DimensionalData.jl/dev/api/dimensions#Primitive-methods","4":"/DimensionalData.jl/dev/api/lookuparrays#lookups","5":"/DimensionalData.jl/dev/api/lookuparrays#selectors","6":"/DimensionalData.jl/dev/api/lookuparrays#Lookup-traits","7":"/DimensionalData.jl/dev/api/lookuparrays#order","8":"/DimensionalData.jl/dev/api/lookuparrays#span","9":"/DimensionalData.jl/dev/api/lookuparrays#sampling","10":"/DimensionalData.jl/dev/api/lookuparrays#positions","11":"/DimensionalData.jl/dev/api/lookuparrays#metadata","12":"/DimensionalData.jl/dev/basics#installation","13":"/DimensionalData.jl/dev/basics#basics","14":"/DimensionalData.jl/dev/api/reference#API-Reference","15":"/DimensionalData.jl/dev/api/reference#arrays","16":"/DimensionalData.jl/dev/api/reference#Multi-array-datasets","17":"/DimensionalData.jl/dev/api/reference#Dimension-generators","18":"/DimensionalData.jl/dev/api/reference#Tables.jl/TableTraits.jl-interface","19":"/DimensionalData.jl/dev/api/reference#Group-by-methods","20":"/DimensionalData.jl/dev/api/reference#Utility-methods","21":"/DimensionalData.jl/dev/api/reference#Global-lookup-strictness-settings","22":"/DimensionalData.jl/dev/api/reference#name","23":"/DimensionalData.jl/dev/api/reference#Internal-interface","24":"/DimensionalData.jl/dev/broadcasts#Dimensional-broadcasts-with-@d-and-broadcast_dims","25":"/DimensionalData.jl/dev/broadcasts#Example:-scaling-along-the-time-dimension","26":"/DimensionalData.jl/dev/cuda#CUDA-and-GPUs","27":"/DimensionalData.jl/dev/cuda#GPU-Integration-goals","28":"/DimensionalData.jl/dev/dimarrays#dimarrays","29":"/DimensionalData.jl/dev/dimarrays#Constructing-DimArray-with-arbitrary-dimension-names","30":"/DimensionalData.jl/dev/dimarrays#Dimensional-Indexing","31":"/DimensionalData.jl/dev/dimarrays#Begin-End-indexing","32":"/DimensionalData.jl/dev/dimarrays#dims-keywords","33":"/DimensionalData.jl/dev/dimarrays#performance","34":"/DimensionalData.jl/dev/dimensions#dimensions","35":"/DimensionalData.jl/dev/diskarrays#DiskArrays.jl-compatibility","36":"/DimensionalData.jl/dev/extending_dd#Extending-DimensionalData","37":"/DimensionalData.jl/dev/extending_dd#dims","38":"/DimensionalData.jl/dev/extending_dd#Dimension-axes","39":"/DimensionalData.jl/dev/extending_dd#dims-keywords","40":"/DimensionalData.jl/dev/extending_dd#rebuild","41":"/DimensionalData.jl/dev/extending_dd#format","42":"/DimensionalData.jl/dev/extending_dd#Interfaces.jl-interface-testing","43":"/DimensionalData.jl/dev/get_info#getters","44":"/DimensionalData.jl/dev/get_info#predicates","45":"/DimensionalData.jl/dev/groupby#Group-By","46":"/DimensionalData.jl/dev/groupby#Grouping-functions","47":"/DimensionalData.jl/dev/groupby#Grouping-and-reducing","48":"/DimensionalData.jl/dev/groupby#binning","49":"/DimensionalData.jl/dev/groupby#Select-by-Dimension","50":"/DimensionalData.jl/dev/integrations#integrations","51":"/DimensionalData.jl/dev/integrations#rasters-jl","52":"/DimensionalData.jl/dev/integrations#yaxarrays-jl","53":"/DimensionalData.jl/dev/integrations#climatebase-jl","54":"/DimensionalData.jl/dev/integrations#arviz-jl","55":"/DimensionalData.jl/dev/integrations#jump-jl","56":"/DimensionalData.jl/dev/integrations#cryogrid-jl","57":"/DimensionalData.jl/dev/integrations#dynamicgrids-jl","58":"/DimensionalData.jl/dev/integrations#astroimages-jl","59":"/DimensionalData.jl/dev/integrations#timeseriestools-jl","60":"/DimensionalData.jl/dev/object_modification#Modifying-objects","61":"/DimensionalData.jl/dev/object_modification#modify","62":"/DimensionalData.jl/dev/object_modification#reorder","63":"/DimensionalData.jl/dev/object_modification#mergedims","64":"/DimensionalData.jl/dev/object_modification#rebuild","65":"/DimensionalData.jl/dev/object_modification#rebuild-magic","66":"/DimensionalData.jl/dev/object_modification#set","67":"/DimensionalData.jl/dev/plots#plots-jl","68":"/DimensionalData.jl/dev/plots#makie-jl","69":"/DimensionalData.jl/dev/plots#Test-series-plots","70":"/DimensionalData.jl/dev/plots#default-colormap","71":"/DimensionalData.jl/dev/plots#A-different-colormap","72":"/DimensionalData.jl/dev/plots#with-markers","73":"/DimensionalData.jl/dev/selectors#selectors","74":"/DimensionalData.jl/dev/selectors#lookups","75":"/DimensionalData.jl/dev/selectors#Lookup-autodetection","76":"/DimensionalData.jl/dev/selectors#DimSelector","77":"/DimensionalData.jl/dev/stacks#dimstacks","78":"/DimensionalData.jl/dev/stacks#NamedTuple-like-indexing","79":"/DimensionalData.jl/dev/stacks#Array-like-indexing","80":"/DimensionalData.jl/dev/stacks#Reducing-functions","81":"/DimensionalData.jl/dev/stacks#performance","82":"/DimensionalData.jl/dev/tables#Tables-and-DataFrames","83":"/DimensionalData.jl/dev/tables#example","84":"/DimensionalData.jl/dev/tables#Converting-to-DataFrame","85":"/DimensionalData.jl/dev/tables#Converting-to-CSV"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[1,1,303],"1":[2,1,130],"2":[3,1,134],"3":[2,1,346],"4":[1,1,486],"5":[1,1,329],"6":[2,1,38],"7":[1,3,70],"8":[1,3,90],"9":[1,3,63],"10":[1,3,97],"11":[1,1,144],"12":[1,1,40],"13":[1,1,161],"14":[2,1,1],"15":[1,2,335],"16":[3,2,223],"17":[2,2,230],"18":[4,2,112],"19":[3,1,346],"20":[2,1,407],"21":[4,1,234],"22":[1,4,59],"23":[2,4,179],"24":[7,1,87],"25":[6,7,245],"26":[3,1,176],"27":[3,3,110],"28":[1,1,222],"29":[6,1,75],"30":[2,1,256],"31":[3,1,129],"32":[2,1,118],"33":[1,1,97],"34":[1,1,102],"35":[3,1,77],"36":[2,1,68],"37":[1,2,18],"38":[2,3,55],"39":[2,3,47],"40":[1,2,106],"41":[1,2,54],"42":[4,2,91],"43":[1,1,216],"44":[1,1,59],"45":[2,1,22],"46":[2,2,114],"47":[3,2,207],"48":[1,2,287],"49":[3,2,141],"50":[1,1,1],"51":[2,1,69],"52":[2,1,38],"53":[2,1,12],"54":[2,1,18],"55":[2,1,24],"56":[2,1,18],"57":[2,1,34],"58":[2,1,15],"59":[2,1,9],"60":[2,1,39],"61":[1,2,83],"62":[1,2,82],"63":[1,2,23],"64":[1,2,188],"65":[2,3,51],"66":[1,2,135],"67":[2,1,51],"68":[2,1,66],"69":[3,2,1],"70":[2,5,21],"71":[3,5,32],"72":[2,5,19],"73":[1,1,198],"74":[1,1,215],"75":[2,1,157],"76":[1,1,319],"77":[1,1,89],"78":[3,1,171],"79":[3,1,127],"80":[2,1,139],"81":[1,1,68],"82":[3,1,71],"83":[1,3,115],"84":[3,3,251],"85":[3,3,85]},"averageFieldLength":[2.0232558139534884,1.744186046511628,125.2325581395348],"storedFields":{"0":{"title":"Dimensions","titles":[]},"1":{"title":"Exported methods","titles":["Dimensions"]},"2":{"title":"Non-exported methods","titles":["Dimensions"]},"3":{"title":"Primitive methods","titles":["Dimensions"]},"4":{"title":"Lookups","titles":[]},"5":{"title":"Selectors","titles":["Lookups"]},"6":{"title":"Lookup traits","titles":["Lookups"]},"7":{"title":"Order","titles":["Lookups","Lookup traits"]},"8":{"title":"Span","titles":["Lookups","Lookup traits"]},"9":{"title":"Sampling","titles":["Lookups","Lookup traits"]},"10":{"title":"Positions","titles":["Lookups","Lookup traits"]},"11":{"title":"Metadata","titles":["Lookups"]},"12":{"title":"Installation","titles":[]},"13":{"title":"Basics","titles":[]},"14":{"title":"API Reference","titles":[]},"15":{"title":"Arrays","titles":["API Reference"]},"16":{"title":"Multi-array datasets","titles":["API Reference"]},"17":{"title":"Dimension generators","titles":["API Reference"]},"18":{"title":"Tables.jl/TableTraits.jl interface","titles":["API Reference"]},"19":{"title":"Group by methods","titles":[]},"20":{"title":"Utility methods","titles":[]},"21":{"title":"Global lookup strictness settings","titles":[]},"22":{"title":"Name","titles":["Global lookup strictness settings"]},"23":{"title":"Internal interface","titles":["Global lookup strictness settings"]},"24":{"title":"Dimensional broadcasts with @d and broadcast_dims","titles":[]},"25":{"title":"Example: scaling along the time dimension","titles":["Dimensional broadcasts with @d and broadcast_dims"]},"26":{"title":"CUDA & GPUs","titles":[]},"27":{"title":"GPU Integration goals","titles":["CUDA & GPUs"]},"28":{"title":"DimArrays","titles":[]},"29":{"title":"Constructing DimArray with arbitrary dimension names","titles":["DimArrays"]},"30":{"title":"Dimensional Indexing","titles":["DimArrays"]},"31":{"title":"Begin End indexing","titles":["DimArrays"]},"32":{"title":"dims keywords","titles":["DimArrays"]},"33":{"title":"Performance","titles":["DimArrays"]},"34":{"title":"Dimensions","titles":[]},"35":{"title":"DiskArrays.jl compatibility","titles":[]},"36":{"title":"Extending DimensionalData","titles":[]},"37":{"title":"dims","titles":["Extending DimensionalData"]},"38":{"title":"Dimension axes","titles":["Extending DimensionalData","dims"]},"39":{"title":"dims keywords","titles":["Extending DimensionalData","dims"]},"40":{"title":"rebuild","titles":["Extending DimensionalData"]},"41":{"title":"format","titles":["Extending DimensionalData"]},"42":{"title":"Interfaces.jl interface testing","titles":["Extending DimensionalData"]},"43":{"title":"Getters","titles":[]},"44":{"title":"Predicates","titles":["Getters"]},"45":{"title":"Group By","titles":[]},"46":{"title":"Grouping functions","titles":["Group By"]},"47":{"title":"Grouping and reducing","titles":["Group By"]},"48":{"title":"Binning","titles":["Group By"]},"49":{"title":"Select by Dimension","titles":["Group By"]},"50":{"title":"Integrations","titles":[]},"51":{"title":"Rasters.jl","titles":["Integrations"]},"52":{"title":"YAXArrays.jl","titles":["Integrations"]},"53":{"title":"ClimateBase.jl","titles":["Integrations"]},"54":{"title":"ArviZ.jl","titles":["Integrations"]},"55":{"title":"JuMP.jl","titles":["Integrations"]},"56":{"title":"CryoGrid.jl","titles":["Integrations"]},"57":{"title":"DynamicGrids.jl","titles":["Integrations"]},"58":{"title":"AstroImages.jl","titles":["Integrations"]},"59":{"title":"TimeseriesTools.jl","titles":["Integrations"]},"60":{"title":"Modifying objects","titles":[]},"61":{"title":"modify","titles":["Modifying objects"]},"62":{"title":"reorder","titles":["Modifying objects"]},"63":{"title":"mergedims","titles":["Modifying objects"]},"64":{"title":"rebuild","titles":["Modifying objects"]},"65":{"title":"rebuild magic","titles":["Modifying objects","rebuild"]},"66":{"title":"set","titles":["Modifying objects"]},"67":{"title":"Plots.jl","titles":[]},"68":{"title":"Makie.jl","titles":[]},"69":{"title":"Test series plots","titles":["Makie.jl"]},"70":{"title":"default colormap","titles":["Makie.jl","Test series plots"]},"71":{"title":"A different colormap","titles":["Makie.jl","Test series plots"]},"72":{"title":"with markers","titles":["Makie.jl","Test series plots"]},"73":{"title":"Selectors","titles":[]},"74":{"title":"Lookups","titles":["Selectors"]},"75":{"title":"Lookup autodetection","titles":["Selectors"]},"76":{"title":"DimSelector","titles":["Selectors"]},"77":{"title":"DimStacks","titles":[]},"78":{"title":"NamedTuple-like indexing","titles":["DimStacks"]},"79":{"title":"Array-like indexing","titles":["DimStacks"]},"80":{"title":"Reducing functions","titles":["DimStacks"]},"81":{"title":"Performance","titles":["DimStacks"]},"82":{"title":"Tables and DataFrames","titles":[]},"83":{"title":"Example","titles":["Tables and DataFrames"]},"84":{"title":"Converting to DataFrame","titles":["Tables and DataFrames"]},"85":{"title":"Converting to CSV","titles":["Tables and DataFrames"]}},"dirtCount":0,"index":[["q",{"2":{"84":1}}],["quite",{"2":{"64":1}}],["quick",{"2":{"48":1}}],["quarters",{"2":{"19":1}}],["quantity",{"2":{"5":1}}],["quot",{"2":{"3":2,"6":2,"15":4,"34":2}}],["query",{"2":{"1":16,"3":6,"15":16,"43":1}}],["─────┼──────────────────────────────────────────────────────────────────────────",{"2":{"84":1}}],["──────┼───────────────────────────────────────────",{"2":{"84":1}}],["──────┼───────────────────────────────────────────────",{"2":{"84":1}}],["──────┼──────────────────────────────────",{"2":{"84":1}}],["⋯",{"2":{"84":6}}],["$st",{"2":{"81":2}}],["$da4",{"2":{"33":2}}],["▁",{"2":{"33":1}}],["▆▄",{"2":{"33":1}}],["▆█",{"2":{"33":1}}],["▂",{"2":{"33":4}}],["▃",{"2":{"33":1}}],["██▁▁▁▁▁▁▁▁▁▁▁▁██▁▁▁▁▁▁▁▁▁▁▁▁█▁█▁▁▁▁▁▁▁▁▁▁▁▁██▁▁▁▁▁▁▁▁▁▁▁▁▇",{"2":{"33":1}}],["██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█▁█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█▁█▁▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▇█",{"2":{"33":1}}],["█▆",{"2":{"33":1}}],["█",{"2":{"33":3}}],["▅",{"2":{"33":1}}],["σ",{"2":{"33":4}}],["±",{"2":{"33":8}}],["┊",{"2":{"33":6}}],["~",{"2":{"31":2}}],["└",{"2":{"31":2}}],["└──────────────────────┘",{"2":{"15":4}}],["└─────────────────────────────────┘",{"2":{"29":1,"30":1}}],["└────────────────────────────────────────────────────────┘",{"2":{"21":1}}],["└───────────────────────────────────────────────────────────┘",{"2":{"15":1}}],["└────────────────────────────────────────────────────────────────┘",{"2":{"28":11,"29":1,"30":1,"31":2,"33":1,"61":3,"66":1}}],["└────────────────────────────────────────────────────────────────────┘",{"2":{"26":1}}],["└────────────────────────────────────────────────────────────────────────┘",{"2":{"19":1}}],["└─────────────────────────────────────────────────────────────────────────┘",{"2":{"17":1,"20":3}}],["└───────────────────────────────────────────────────────────────────────────┘",{"2":{"20":1}}],["└──────────────────────────────────────────────────────────────────────────────┘",{"2":{"0":3,"5":1,"13":3,"25":8,"30":2,"32":2,"43":1,"47":8,"48":11,"49":3,"62":2,"64":2,"66":5,"73":15,"74":1,"75":1,"76":5,"77":1,"78":8,"79":1,"80":25,"83":2,"84":1}}],["└──────────────────────────────────────────────────────────────────────────┘",{"2":{"4":1}}],["└───────────────────────────────────────────────────────────────────────┘",{"2":{"19":2}}],["└─────────────────────────────────────────────────────────────────────┘",{"2":{"15":3,"20":1}}],["└─────────────────────────────────────────────────────────────────┘",{"2":{"17":2}}],["└─────────────────────────────────────────────────────────────┘",{"2":{"5":1,"15":1}}],["└────────────────────────────────────────────────────────────┘",{"2":{"5":2}}],["└─────────────────────────────────────────────┘",{"2":{"17":1}}],["└─────────────────────────────┘",{"2":{"18":1}}],["└───────────────────────────┘",{"2":{"1":1,"3":1,"15":1}}],["┌",{"2":{"31":2}}],["⋱",{"2":{"25":5,"26":1,"47":1,"49":2,"76":2,"83":1,"84":1}}],["├───────────────┴────────────────────────────────────────────────────────",{"2":{"77":1,"78":6,"80":24}}],["├────────────────┴───────────────────────────────────────────────────────",{"2":{"84":1}}],["├───────────────────┴────────────────────────────────────────────────────",{"2":{"83":1}}],["├────────────────────┴───────────────────────────────────────────────────",{"2":{"79":1}}],["├─────────────────────┴──────────────────────────────────────────────────",{"2":{"80":1}}],["├──────────────────────┴───────────────────────────────────",{"2":{"61":2}}],["├────────────────────────┴─────────────────────────────────",{"2":{"28":1}}],["├─────────────────────────┴────────────────────────────────",{"2":{"29":1,"31":2,"33":1}}],["├─────────────────────────┴─────────────────────────────────",{"2":{"17":2}}],["├─────────────────────────┴─────────────────────────────────────────",{"2":{"17":1,"20":3}}],["├─────────────────────────┴───────────────────────────────────────────",{"2":{"20":1}}],["├─────────────────────────┴──────────────────────────────────────────────",{"2":{"13":2,"30":1,"73":13,"75":1,"76":3}}],["├─────────────────────────┴──────────────────────────────────────────",{"2":{"4":1}}],["├─────────────────────────┴─────────────────────────────────────",{"2":{"15":3,"20":1}}],["├───────────────────────────┴────────────────────────────────────────────",{"2":{"32":2,"43":1,"76":1}}],["├─────────────────────────────┴────────────────────────────",{"2":{"28":1}}],["├─────────────────────────────┴──────────────────────────────────────────",{"2":{"13":1}}],["├───────────────────────────────┴",{"2":{"29":1,"30":1}}],["├───────────────────────────────┴──────────────────────────",{"2":{"28":2}}],["├───────────────────────────────┴──────────────────────────────",{"2":{"26":1}}],["├───────────────────────────────┴────────────────────────────────────────",{"2":{"25":4,"47":1,"48":3,"73":2}}],["├─────────────────────────────────┴──────────────────────────────────────",{"2":{"47":3,"78":1}}],["├───────────────────────────────────┴────────────────────────────────────",{"2":{"64":1,"83":1}}],["├───────────────────────────────────┴──────────────────────",{"2":{"28":1}}],["├──────────────────────────────────────┴─────────────────────────────────",{"2":{"25":1}}],["├────────────────────────────────────────────┴───────────────────────────",{"2":{"74":1}}],["├──────────────────────────────────────────────────┴─────────────────────",{"2":{"48":7}}],["├────────────────────────────────────────────────────────",{"2":{"61":1}}],["├───────────────────────────────────────────────────────────",{"2":{"19":1}}],["├──────────────────────────────────────────────────────────────────",{"2":{"47":1,"48":8,"49":1}}],["├──────────────────────────────────────────────────────────────────────",{"2":{"77":1,"78":6,"79":1,"80":25,"83":1,"84":1}}],["├────────────────────────────────────────────────────────────────────",{"2":{"47":7,"48":11,"49":2,"64":1}}],["├──────────────────────────────────────────────────────────────",{"2":{"19":1}}],["├─────────────────────────────────────────────────────────────",{"2":{"19":2}}],["├──────────────────────────────────────────────────────┴─────────────────",{"2":{"49":1}}],["├──────────────────────────────────────────────────────",{"2":{"28":5}}],["├───────────────────────────────────────────────────┴────────────────────",{"2":{"47":1,"48":1}}],["├───────────────────────────────────────────────────┴─────────────",{"2":{"19":1}}],["├────────────────────────────────────────────────",{"2":{"21":1}}],["├────────────────────────────────────────┴───────────────────────────────",{"2":{"25":1}}],["├───────────────────────────────────────",{"2":{"17":1}}],["├───────────────────────────────────────┴─────────────",{"2":{"15":1}}],["├───────────────────────────────────────┴───────────────",{"2":{"15":1}}],["├────────────────────────────────┴─────────────────────────",{"2":{"28":1}}],["├────────────────────────────────┴────────────────────────────────",{"2":{"19":1}}],["├────────────────────────────────┴───────────────────────────────────────",{"2":{"0":1,"25":2,"47":3}}],["├────────────────────────────┴───────────────────────────────────────────",{"2":{"0":1,"30":1,"49":2,"76":1,"78":1}}],["├──────────────────────────┴───────────────────────────────",{"2":{"28":5,"30":1,"66":1}}],["├──────────────────────────┴───────────────────────────────────────",{"2":{"19":1}}],["├──────────────────────────┴─────────────────────────────────────────────",{"2":{"0":1,"62":2,"64":1,"66":5}}],["├───────────────────────",{"2":{"18":1}}],["├───────────────────────┴────────────────────────────────────────────────",{"2":{"5":1}}],["├───────────────────────┴───────────────────────────────",{"2":{"5":1}}],["├───────────────────────┴──────────────────────────────",{"2":{"5":2}}],["├─────────────────────",{"2":{"1":1,"3":1,"15":1}}],["├────────────────",{"2":{"15":4}}],["├──────────────┴───────────────────────────────────────────",{"2":{"61":1}}],["├──────────────┴───────────────────────────────────",{"2":{"21":1}}],["╭────────────────╮",{"2":{"84":1}}],["╭───────────────────╮",{"2":{"83":1}}],["╭─────────────────────╮",{"2":{"80":1}}],["╭──────────────────────╮",{"2":{"15":4,"61":2}}],["╭────────────────────────╮",{"2":{"28":1}}],["╭─────────────────────────╮",{"2":{"4":1,"13":2,"15":3,"17":3,"20":5,"29":1,"30":1,"31":2,"33":1,"73":13,"75":1,"76":3}}],["╭───────────────────────────╮",{"2":{"1":1,"3":1,"15":1,"32":2,"43":1,"76":1}}],["╭───────────────────────────────╮",{"2":{"25":4,"26":1,"28":2,"29":1,"30":1,"47":1,"48":3,"73":2}}],["╭─────────────────────────────────╮",{"2":{"47":3,"78":1}}],["╭───────────────────────────────────╮",{"2":{"28":1,"64":1,"83":1}}],["╭──────────────────────────────────────╮",{"2":{"25":1}}],["╭────────────────────────────────────────────╮",{"2":{"74":1}}],["╭──────────────────────────────────────────────────────╮",{"2":{"49":1}}],["╭───────────────────────────────────────────────────╮",{"2":{"19":1,"47":1,"48":1}}],["╭──────────────────────────────────────────────────╮",{"2":{"48":7}}],["╭─────────────────────────────────────────────╮",{"2":{"17":1}}],["╭────────────────────────────────────────╮",{"2":{"25":1}}],["╭───────────────────────────────────────╮",{"2":{"15":2}}],["╭────────────────────────────────╮",{"2":{"0":1,"19":1,"25":2,"28":1,"47":3}}],["╭─────────────────────────────╮",{"2":{"13":1,"18":1,"28":1}}],["╭────────────────────────────╮",{"2":{"0":1,"30":1,"49":2,"76":1,"78":1}}],["╭──────────────────────────╮",{"2":{"0":1,"19":1,"28":5,"30":1,"62":2,"64":1,"66":6}}],["╭───────────────────────╮",{"2":{"5":4}}],["╭────────────────────╮",{"2":{"79":1}}],["╭───────────────╮",{"2":{"77":1,"78":6,"80":24}}],["╭──────────────╮",{"2":{"21":1,"61":1}}],["+",{"2":{"20":3,"80":2}}],["⋮",{"2":{"19":3,"25":10,"26":1,"46":8,"47":9,"48":3,"49":3,"76":3,"79":1,"83":2,"84":24,"85":1}}],["|>",{"2":{"13":1}}],["𝐓",{"2":{"5":2}}],[">=",{"2":{"73":1}}],[">",{"2":{"5":3,"16":1,"48":2,"73":1}}],["94",{"2":{"84":1}}],["9447511416331498",{"2":{"85":1}}],["944751",{"2":{"84":2}}],["94412",{"2":{"30":1}}],["947312",{"2":{"83":1}}],["947741",{"2":{"28":1}}],["9436941638102098",{"2":{"79":1}}],["946655",{"2":{"76":1}}],["946824",{"2":{"43":1}}],["94196",{"2":{"76":1}}],["941133",{"2":{"17":1}}],["942925",{"2":{"75":1}}],["94018e",{"2":{"47":1}}],["948976",{"2":{"43":1}}],["948512",{"2":{"28":3}}],["945371",{"2":{"30":1}}],["949105",{"2":{"28":3}}],["925267535912165",{"2":{"79":1,"81":2}}],["925873",{"2":{"28":3}}],["92",{"2":{"76":1}}],["921567",{"2":{"84":1}}],["921958",{"2":{"83":1,"84":2}}],["921012",{"2":{"43":1}}],["921145",{"2":{"43":1}}],["920736",{"2":{"30":1}}],["92721",{"2":{"26":1}}],["92977",{"2":{"76":1}}],["929995",{"2":{"26":1}}],["929592",{"2":{"25":2}}],["924417",{"2":{"25":3}}],["991119595116132e",{"2":{"80":1}}],["9919365440188083",{"2":{"79":2,"80":2}}],["994295",{"2":{"76":1}}],["994",{"2":{"76":4}}],["990294",{"2":{"76":1}}],["992316",{"2":{"30":1}}],["993498",{"2":{"28":1}}],["999193",{"2":{"47":1}}],["99903",{"2":{"47":1}}],["99999",{"2":{"47":1}}],["999983",{"2":{"47":1}}],["999708",{"2":{"47":1}}],["999815",{"2":{"47":1}}],["999816",{"2":{"28":1}}],["999846",{"2":{"47":1}}],["999678",{"2":{"28":1}}],["999",{"2":{"26":1}}],["9982064541308482",{"2":{"80":2}}],["998",{"2":{"26":1}}],["997672",{"2":{"28":3}}],["997",{"2":{"26":1}}],["99719",{"2":{"25":1}}],["996",{"2":{"26":1}}],["995",{"2":{"26":1}}],["995683",{"2":{"26":1}}],["995899",{"2":{"25":1}}],["99",{"2":{"25":5,"47":1,"49":2,"65":2,"73":1,"84":1}}],["983904",{"2":{"84":1}}],["98893",{"2":{"84":1}}],["985377",{"2":{"83":1,"84":1}}],["98534418543618",{"2":{"80":2}}],["985407",{"2":{"76":1}}],["986606",{"2":{"76":1}}],["987",{"2":{"76":1}}],["981865",{"2":{"47":1}}],["98193",{"2":{"26":1}}],["980256",{"2":{"32":1}}],["98985",{"2":{"43":1}}],["989571",{"2":{"28":3}}],["989952",{"2":{"26":1}}],["982762",{"2":{"26":1}}],["98",{"2":{"25":5,"47":1,"49":2,"76":1,"84":1}}],["9770663775826343",{"2":{"85":1}}],["977066",{"2":{"84":2}}],["973",{"2":{"76":1}}],["973586",{"2":{"76":1}}],["973622",{"2":{"75":1}}],["970459",{"2":{"30":1}}],["97999",{"2":{"25":1}}],["974596",{"2":{"25":3}}],["97",{"2":{"25":3,"47":2,"49":1,"84":1}}],["936495",{"2":{"84":1}}],["938732432349465",{"2":{"79":1}}],["938732",{"2":{"78":1}}],["938771",{"2":{"76":1}}],["93358",{"2":{"78":1}}],["931705",{"2":{"76":1}}],["930699",{"2":{"76":1}}],["930599",{"2":{"49":1}}],["930332",{"2":{"17":1}}],["932968",{"2":{"43":1}}],["934609",{"2":{"30":1}}],["93479",{"2":{"13":1}}],["935096",{"2":{"28":1}}],["909847",{"2":{"84":1}}],["9003647810614493",{"2":{"79":1}}],["900394",{"2":{"26":1}}],["907202",{"2":{"62":2,"64":2,"66":6}}],["904604",{"2":{"30":1}}],["904961",{"2":{"30":2}}],["90251",{"2":{"28":3}}],["90309",{"2":{"26":1}}],["906705",{"2":{"43":1}}],["906838",{"2":{"26":1}}],["90645",{"2":{"26":1}}],["9063",{"2":{"17":2}}],["90u",{"2":{"5":1}}],["951145",{"2":{"84":1}}],["95213",{"2":{"76":1}}],["95217",{"2":{"26":1}}],["952489",{"2":{"76":1}}],["950007",{"2":{"76":1}}],["950143",{"2":{"43":1}}],["950645",{"2":{"30":1}}],["956616",{"2":{"84":1}}],["956031",{"2":{"30":1}}],["95636",{"2":{"13":1}}],["959028",{"2":{"25":3}}],["959434",{"2":{"17":1}}],["95",{"2":{"13":1,"84":1}}],["960726",{"2":{"84":1}}],["963657",{"2":{"83":1}}],["964227",{"2":{"78":1}}],["964964",{"2":{"76":1}}],["966",{"2":{"76":1}}],["966106",{"2":{"28":2}}],["9698812177371097",{"2":{"79":1,"80":2}}],["969881",{"2":{"78":1}}],["969079",{"2":{"73":3}}],["96951",{"2":{"25":1}}],["965831",{"2":{"29":2,"31":2}}],["967865",{"2":{"25":3}}],["96",{"2":{"5":2,"47":2,"49":1,"76":1,"84":1}}],["914911",{"2":{"83":1}}],["91495",{"2":{"26":1}}],["9130495399200352",{"2":{"79":1}}],["91305",{"2":{"78":1}}],["915251",{"2":{"75":1}}],["9155",{"2":{"26":1}}],["91666",{"2":{"76":1}}],["916216",{"2":{"47":1}}],["916702",{"2":{"30":1}}],["917143",{"2":{"76":1}}],["91732",{"2":{"30":1}}],["917457",{"2":{"30":1}}],["917672",{"2":{"28":1}}],["917543",{"2":{"28":3}}],["912065",{"2":{"28":3}}],["919763",{"2":{"13":1}}],["91",{"2":{"5":2,"13":1}}],["9",{"2":{"4":2,"13":2,"17":2,"20":2,"25":3,"43":7,"46":1,"48":18,"74":1,"76":6,"78":3,"83":2,"84":4,"85":2}}],["7×5",{"2":{"75":1}}],["7×3",{"2":{"30":1}}],["750622",{"2":{"76":1}}],["750947",{"2":{"76":1}}],["750906",{"2":{"30":1}}],["753744",{"2":{"76":1}}],["753597",{"2":{"76":1}}],["75275",{"2":{"48":4}}],["758149",{"2":{"75":1}}],["758865",{"2":{"30":1}}],["75847",{"2":{"26":1}}],["754468",{"2":{"29":1,"31":2}}],["75568",{"2":{"26":1}}],["70",{"2":{"75":3}}],["706417",{"2":{"47":1}}],["706267",{"2":{"29":1,"31":2}}],["708321",{"2":{"30":1}}],["704858",{"2":{"28":1}}],["7076921858340348",{"2":{"28":1}}],["707692",{"2":{"28":2}}],["702944",{"2":{"26":1}}],["70597",{"2":{"13":1}}],["738445",{"2":{"84":1}}],["734751",{"2":{"76":1}}],["735973",{"2":{"78":1}}],["73591",{"2":{"26":1}}],["735391",{"2":{"76":1}}],["73",{"2":{"48":1}}],["730",{"2":{"47":2}}],["73011",{"2":{"32":1}}],["736525",{"2":{"47":1}}],["73623",{"2":{"26":1}}],["736214",{"2":{"25":3}}],["739241",{"2":{"30":1}}],["7938317326707394",{"2":{"85":1}}],["793832",{"2":{"84":2}}],["793532",{"2":{"78":1}}],["798655984630017",{"2":{"85":1}}],["798656",{"2":{"84":2}}],["798",{"2":{"76":2}}],["791844",{"2":{"75":1}}],["792553",{"2":{"75":1}}],["792885",{"2":{"25":5}}],["795274",{"2":{"76":1}}],["795",{"2":{"33":1}}],["794017",{"2":{"30":2}}],["794163",{"2":{"30":1}}],["790283",{"2":{"25":3}}],["729706",{"2":{"76":1}}],["728852",{"2":{"76":1}}],["728611",{"2":{"25":2}}],["72217",{"2":{"75":1}}],["727464",{"2":{"76":2}}],["727997",{"2":{"49":1}}],["727149",{"2":{"43":1}}],["727554",{"2":{"30":1}}],["721331",{"2":{"30":1}}],["724709",{"2":{"28":1}}],["723438",{"2":{"28":2}}],["725738",{"2":{"25":3}}],["72",{"2":{"13":1,"48":1}}],["773256",{"2":{"84":1}}],["775634",{"2":{"78":1}}],["770101",{"2":{"76":1}}],["770553",{"2":{"62":2,"64":2,"66":6}}],["777391",{"2":{"76":2}}],["772277",{"2":{"73":5}}],["778122",{"2":{"78":1}}],["778166",{"2":{"28":2}}],["778222",{"2":{"26":1}}],["774092",{"2":{"15":1,"17":1}}],["774731",{"2":{"13":1}}],["77",{"2":{"13":1}}],["74172",{"2":{"83":1,"84":1}}],["74191",{"2":{"28":1}}],["743407",{"2":{"83":1}}],["747615",{"2":{"76":1}}],["748884",{"2":{"76":1}}],["748041",{"2":{"73":8}}],["749553",{"2":{"78":1}}],["749731",{"2":{"75":1}}],["749267",{"2":{"47":1,"49":2}}],["749253",{"2":{"43":1}}],["745856",{"2":{"66":1}}],["745673",{"2":{"15":1,"17":2}}],["742852",{"2":{"49":1}}],["74204",{"2":{"25":2}}],["740523",{"2":{"28":1}}],["740735",{"2":{"28":1}}],["74",{"2":{"13":2}}],["7683418213117802",{"2":{"85":1}}],["768342",{"2":{"84":2}}],["768924169642427",{"2":{"85":1}}],["768924",{"2":{"84":2}}],["768488",{"2":{"73":3}}],["76448",{"2":{"78":1}}],["764613",{"2":{"28":3}}],["767151",{"2":{"76":1}}],["76547e",{"2":{"47":1}}],["762533",{"2":{"47":1}}],["762794",{"2":{"13":1}}],["760111",{"2":{"32":1}}],["760205",{"2":{"28":3}}],["761212",{"2":{"30":1}}],["76163",{"2":{"25":3}}],["769313",{"2":{"30":1}}],["76",{"2":{"13":2}}],["713814",{"2":{"84":1}}],["7140841681506571",{"2":{"79":1}}],["714084",{"2":{"78":1}}],["714286",{"2":{"29":1,"31":2}}],["717841",{"2":{"76":1}}],["717006",{"2":{"76":1}}],["712342",{"2":{"76":2}}],["712711",{"2":{"28":1}}],["715102",{"2":{"43":1}}],["711133",{"2":{"73":12}}],["711714",{"2":{"32":1}}],["71194",{"2":{"28":1}}],["719779",{"2":{"84":1}}],["719495",{"2":{"30":1}}],["719974",{"2":{"26":1}}],["710967",{"2":{"28":3}}],["71",{"2":{"13":2}}],["789667",{"2":{"84":1}}],["789637",{"2":{"49":2}}],["781497",{"2":{"78":1}}],["788252",{"2":{"76":1}}],["785",{"2":{"33":1}}],["786147",{"2":{"30":1}}],["7802406914680406",{"2":{"79":1}}],["78028",{"2":{"26":1}}],["780196",{"2":{"28":1}}],["780132",{"2":{"28":2}}],["78",{"2":{"13":3,"33":1}}],["7",{"2":{"4":4,"5":5,"13":1,"25":5,"28":102,"30":6,"43":9,"46":10,"47":1,"48":5,"74":1,"75":1,"78":3,"80":21,"83":1,"84":12,"85":2}}],["rows",{"2":{"84":4}}],["row",{"2":{"84":4}}],["rot180",{"2":{"80":2}}],["rotr90",{"2":{"80":2}}],["rotl90",{"2":{"80":2}}],["rotated",{"2":{"4":1,"80":1}}],["rotations",{"2":{"3":1}}],["runtime",{"2":{"33":1}}],["running",{"2":{"26":1,"48":1}}],["rule",{"2":{"21":2}}],["r",{"2":{"15":2,"84":1}}],["right",{"2":{"13":3,"66":2,"68":2}}],["rtol=nothing",{"2":{"5":1}}],["rainclouds",{"2":{"68":1}}],["raw",{"2":{"48":1}}],["rarely",{"2":{"35":1}}],["rasterization",{"2":{"51":1}}],["rasterize",{"2":{"5":1}}],["raster",{"2":{"36":1,"51":3}}],["rasterstack",{"2":{"36":1,"51":1}}],["rasters",{"0":{"51":1},"2":{"4":3,"20":1,"35":1,"36":1,"51":2,"52":1}}],["randn",{"2":{"21":2}}],["random",{"2":{"15":3}}],["rand",{"2":{"4":3,"13":3,"15":9,"17":3,"19":1,"20":1,"25":1,"26":1,"28":6,"29":1,"30":1,"32":1,"42":4,"43":1,"47":1,"62":1,"68":1,"70":1,"73":1,"75":1,"76":3,"78":3,"83":2}}],["ranges",{"2":{"5":1,"19":1,"31":1,"48":6,"73":3,"75":4}}],["range",{"2":{"4":2,"5":4,"15":2,"20":1,"33":2,"41":1,"46":2,"48":1,"51":1,"73":1,"75":1}}],["rather",{"2":{"3":1,"4":2,"5":1,"9":1,"19":2,"27":1,"60":1,"62":1}}],["red",{"2":{"71":1,"72":1}}],["reductions",{"2":{"15":1,"35":1}}],["reducing",{"0":{"47":1,"80":1},"2":{"15":1,"19":3}}],["reduce",{"2":{"3":1,"19":2,"32":1,"80":2}}],["reduced",{"2":{"3":1}}],["reducedims",{"2":{"3":1}}],["receive",{"2":{"40":1}}],["reconstruction",{"2":{"15":1,"40":1}}],["recommended",{"2":{"12":1}}],["rev",{"2":{"20":2}}],["reversal",{"2":{"20":1}}],["reverseordered",{"2":{"4":5,"7":3,"43":15,"44":14,"48":1,"62":5,"75":2,"76":2,"80":8}}],["reverse",{"2":{"4":1,"7":1,"20":4,"32":1,"43":1,"62":1,"80":1}}],["reversed",{"2":{"4":1}}],["reordering",{"2":{"20":1}}],["reorder",{"0":{"62":1},"2":{"20":8,"62":4,"68":1}}],["relationships",{"2":{"35":1}}],["related",{"2":{"27":1}}],["relying",{"2":{"19":1}}],["reliable",{"2":{"4":1}}],["reasons",{"2":{"51":1}}],["reason",{"2":{"27":1,"51":1}}],["readlines",{"2":{"85":1}}],["read",{"2":{"23":2}}],["reading",{"2":{"19":1}}],["real",{"2":{"4":1}}],["really",{"2":{"3":1,"65":1}}],["remove",{"2":{"21":4}}],["removed",{"2":{"5":1}}],["removing",{"2":{"16":1}}],["reshape",{"2":{"24":1,"63":1}}],["reshaping",{"2":{"20":2}}],["restored",{"2":{"20":1}}],["resshape",{"2":{"20":1}}],["resolve",{"2":{"16":1,"31":1}}],["result",{"2":{"5":1,"16":1,"20":3,"26":1,"31":1,"82":1}}],["results",{"2":{"5":2,"19":2,"67":1}}],["rebuilt",{"2":{"15":1,"20":1,"60":1}}],["rebuilding",{"2":{"20":1}}],["rebuild",{"0":{"40":1,"64":1,"65":1},"1":{"65":1},"2":{"4":2,"15":3,"16":2,"20":6,"23":54,"27":1,"36":1,"40":7,"42":40,"64":6,"65":2,"66":1}}],["requires",{"2":{"39":1,"48":1}}],["require",{"2":{"9":1}}],["required",{"2":{"0":1,"3":1,"11":1,"18":1,"20":4,"27":1}}],["repl",{"2":{"74":1}}],["replaces",{"2":{"3":1,"27":1}}],["replaced",{"2":{"3":1,"8":1}}],["replace",{"2":{"3":2,"20":1,"61":1}}],["represents",{"2":{"38":1,"77":1}}],["representing",{"2":{"4":1}}],["represent",{"2":{"4":1,"10":1}}],["refdim",{"2":{"23":1}}],["refdims=refdims",{"2":{"16":1}}],["refdims=",{"2":{"15":1}}],["refdims",{"2":{"15":9,"20":2,"23":21,"40":1,"42":12,"64":2}}],["refence",{"2":{"15":1}}],["reference",{"0":{"14":1},"1":{"15":1,"16":1,"17":1,"18":1},"2":{"3":2,"15":3,"23":1,"36":1}}],["refer",{"2":{"0":1,"9":1}}],["ref",{"2":{"3":1}}],["rewraps",{"2":{"3":1}}],["retrieved",{"2":{"34":1}}],["retrieves",{"2":{"5":1,"43":1}}],["retrieve",{"2":{"2":1,"5":1,"43":1}}],["returning",{"2":{"3":1,"11":1,"21":2,"80":1}}],["returns",{"2":{"2":1,"3":3,"5":1,"11":2,"15":3,"16":2,"17":1,"19":1,"23":2,"42":2,"43":1,"48":3,"79":1}}],["returned",{"2":{"1":1,"3":2,"4":1,"11":1,"15":1,"19":2,"20":4,"34":1,"44":1}}],["return",{"2":{"1":3,"3":3,"4":8,"5":2,"15":6,"16":7,"19":7,"20":7,"37":1,"38":2,"39":2,"43":1,"44":1,"46":1,"79":2,"81":1}}],["regular",{"2":{"0":5,"2":1,"4":7,"5":4,"8":4,"10":2,"13":4,"15":5,"17":2,"18":1,"19":2,"20":9,"21":1,"24":2,"25":19,"26":3,"30":2,"36":1,"39":1,"43":30,"44":28,"47":2,"48":1,"49":5,"62":2,"64":2,"66":5,"73":7,"74":3,"75":3,"76":6,"77":2,"78":15,"79":1,"80":49,"83":4,"84":2}}],["k",{"2":{"84":1}}],["kind",{"2":{"46":1}}],["kinds",{"2":{"15":4,"28":1}}],["knowing",{"2":{"30":1}}],["knows",{"2":{"25":1,"36":1}}],["know",{"2":{"19":1,"24":1,"64":1,"65":1}}],["known",{"2":{"4":5,"10":1,"30":1}}],["kw",{"2":{"3":5,"4":1,"5":1,"11":1,"15":10,"16":5,"20":3,"23":17,"40":2,"42":10,"64":2}}],["kernels",{"2":{"27":1}}],["kernelabstractions",{"2":{"27":1}}],["kernel",{"2":{"27":1}}],["keeping",{"2":{"3":1}}],["keep",{"2":{"3":1,"20":2,"22":1,"48":1}}],["key",{"2":{"21":3,"36":1,"82":1}}],["keys=",{"2":{"21":2}}],["keys=keys",{"2":{"21":2}}],["keys",{"2":{"0":1,"11":2,"16":1,"21":2,"23":4,"48":1,"78":2}}],["keywords",{"0":{"32":1,"39":1},"2":{"3":2,"4":2,"15":4,"17":2,"18":1,"19":5,"20":1,"21":1,"23":5,"29":1,"31":1,"32":1,"40":1,"41":1,"42":2,"64":4,"65":1}}],["keyword",{"2":{"0":1,"4":3,"5":1,"15":1,"16":1,"19":1,"20":2,"21":1,"39":1,"40":2,"65":1}}],["kept",{"2":{"0":1,"3":1}}],["┤",{"2":{"1":1,"3":1,"15":5,"17":1,"18":1,"19":4,"21":1,"28":5,"47":8,"48":19,"49":3,"61":1,"64":1,"77":1,"78":6,"79":1,"80":25,"83":1,"84":1}}],["u",{"2":{"84":1}}],["utility",{"0":{"20":1}}],["updating",{"2":{"40":1}}],["update",{"2":{"20":3}}],["updates",{"2":{"15":1,"23":6,"42":6}}],["updated",{"2":{"3":2,"20":4,"23":6,"42":6}}],["upperbound",{"2":{"8":1}}],["upper",{"2":{"5":1,"8":1}}],["unrolled",{"2":{"82":1}}],["unambiguous",{"2":{"43":1}}],["unaltered",{"2":{"4":1}}],["unaligned",{"2":{"4":4}}],["unclosed",{"2":{"23":1}}],["unmerged",{"2":{"20":1}}],["unmergedims",{"2":{"20":2}}],["unmatched",{"2":{"1":1,"15":1}}],["unknown",{"2":{"17":1,"75":1}}],["underneath",{"2":{"65":1}}],["underlying",{"2":{"1":1,"15":1,"21":1}}],["undefined",{"2":{"4":1,"15":2,"19":1,"41":1}}],["unless",{"2":{"4":4,"5":1,"31":1,"75":1,"82":1}}],["unlike",{"2":{"3":2,"11":1,"17":1,"66":1}}],["unordered",{"2":{"4":6,"7":3,"48":3,"66":2,"74":2,"75":2}}],["unitrange",{"2":{"19":2,"48":3,"73":2}}],["unit",{"2":{"11":2}}],["unitful",{"2":{"5":3}}],["units",{"2":{"2":1,"11":5}}],["unionall",{"2":{"3":1}}],["union",{"2":{"2":1,"3":1,"4":5,"5":1,"11":3,"19":2,"20":2,"22":1}}],["usual",{"2":{"24":1}}],["usually",{"2":{"0":1,"3":2,"15":1,"39":1,"46":1,"66":1,"73":1,"74":2,"81":1}}],["us",{"2":{"11":1,"30":1,"34":1,"66":1}}],["user",{"2":{"35":1}}],["uses",{"2":{"4":1,"8":1,"27":2,"34":1,"56":1,"59":1,"64":1}}],["useful",{"2":{"1":1,"3":3,"4":6,"17":1,"20":1,"43":1,"61":1,"64":1}}],["use",{"2":{"0":3,"3":1,"4":2,"5":3,"7":1,"11":1,"12":1,"15":2,"16":3,"17":1,"20":3,"21":4,"22":3,"25":1,"26":1,"29":1,"30":1,"31":1,"40":1,"44":1,"47":1,"48":5,"64":1,"73":1,"76":1,"82":1}}],["used",{"2":{"0":7,"2":1,"3":4,"4":7,"5":6,"6":1,"8":1,"9":1,"10":7,"16":2,"17":4,"19":9,"20":4,"21":1,"30":2,"31":2,"32":1,"34":1,"35":1,"40":3,"43":1,"46":1,"47":1,"57":1,"64":1,"68":1,"74":1,"75":3}}],["using",{"2":{"0":2,"1":4,"3":1,"4":5,"5":3,"11":2,"12":2,"13":1,"15":10,"16":1,"17":2,"18":2,"19":1,"20":6,"21":3,"25":2,"27":1,"28":1,"29":1,"31":1,"32":1,"33":1,"34":1,"40":2,"42":1,"43":3,"46":2,"47":1,"61":1,"62":1,"73":2,"74":1,"77":1,"81":1,"83":2,"84":2}}],["v",{"2":{"84":1}}],["visualise",{"2":{"58":1}}],["via",{"2":{"35":1}}],["views",{"2":{"21":2,"56":1}}],["view",{"2":{"3":1,"15":1,"16":2,"17":1,"31":1}}],["very",{"2":{"16":2,"52":1,"64":1,"81":1}}],["versions",{"2":{"40":2}}],["version",{"2":{"12":1,"16":1,"20":2,"40":1,"64":1,"65":1,"82":1}}],["vectors",{"2":{"3":1,"30":1,"73":3}}],["vector",{"2":{"0":1,"4":2,"5":6,"16":1,"19":11,"20":2,"30":2,"43":2,"46":8,"48":4,"73":5,"74":3,"79":2,"85":1}}],["var",{"2":{"32":1,"80":2}}],["variable",{"2":{"20":1,"60":1,"68":1}}],["vararg",{"2":{"1":4,"2":3,"3":6,"4":5,"15":10,"16":2,"18":1,"20":3,"23":1,"30":1}}],["valtype",{"2":{"3":1}}],["valid",{"2":{"3":1}}],["val",{"2":{"2":2,"3":1,"4":4,"11":1,"20":5,"34":2,"39":2,"43":3,"64":4}}],["val=",{"2":{"0":5}}],["value",{"2":{"0":1,"3":2,"4":2,"5":15,"8":1,"9":1,"10":1,"15":5,"16":3,"17":1,"19":7,"22":1,"28":1,"29":1,"34":1,"43":2,"73":4,"81":1}}],["values=autovalues",{"2":{"4":1}}],["values",{"2":{"0":1,"2":1,"3":4,"4":15,"5":17,"7":1,"9":2,"10":6,"15":1,"16":3,"17":5,"19":8,"20":3,"21":5,"23":1,"24":1,"38":1,"40":1,"46":1,"48":5,"60":1,"63":1,"64":1,"66":2,"67":1,"73":5,"74":5,"75":3,"76":1,"79":2}}],["nanoseconds",{"2":{"81":1}}],["names",{"0":{"29":1},"2":{"18":1,"20":2,"21":4,"22":1,"24":1,"29":1,"34":2,"43":1,"73":1,"74":1}}],["name=nothing",{"2":{"16":1}}],["name=noname",{"2":{"15":1}}],["name=",{"2":{"15":1,"16":3,"20":1,"25":1,"28":5,"64":1,"83":1}}],["name2dim",{"2":{"3":3}}],["name",{"0":{"22":1},"2":{"2":1,"15":10,"18":2,"20":4,"22":11,"23":4,"24":1,"27":3,"29":1,"34":2,"40":1,"42":4,"64":2,"73":1,"77":1,"78":2,"82":2}}],["namedtuple",{"0":{"78":1},"2":{"11":3,"16":12,"20":3,"23":2,"25":1,"77":2,"78":1,"79":4,"81":1}}],["named",{"2":{"0":1,"10":2,"22":1,"28":1,"31":1,"34":1,"55":1,"71":1}}],["n=rand",{"2":{"78":1}}],["nt",{"2":{"65":2}}],["ntuple",{"2":{"1":3,"2":3,"15":5}}],["night",{"2":{"48":4}}],["nice",{"2":{"48":1}}],["ncdatasets",{"2":{"35":1}}],["ns",{"2":{"33":14,"81":2}}],["ndims",{"2":{"23":5,"42":3}}],["nvidia",{"2":{"20":1}}],["neighbor",{"2":{"76":1}}],["neighbour",{"2":{"17":1}}],["necessary",{"2":{"22":1}}],["necessarily",{"2":{"20":1}}],["netcdf",{"2":{"10":1,"35":1}}],["next",{"2":{"5":1}}],["needed",{"2":{"27":1,"64":1,"75":1}}],["needs",{"2":{"22":1,"23":1}}],["need",{"2":{"4":1,"12":1,"16":3,"19":1,"20":4,"27":3}}],["nearly",{"2":{"36":1}}],["nearsest",{"2":{"5":1}}],["nearest",{"2":{"5":3,"17":1,"76":1}}],["near",{"2":{"4":2,"5":7,"15":2,"17":2,"73":3,"76":2}}],["newdim",{"2":{"3":4}}],["newdims",{"2":{"3":4}}],["new",{"2":{"0":1,"3":5,"4":1,"15":2,"18":1,"20":13,"36":1,"40":1,"80":1}}],["nosampling",{"2":{"66":1}}],["nospan",{"2":{"66":1}}],["nov",{"2":{"48":4,"74":1}}],["now",{"2":{"46":1,"48":1,"55":1,"74":1,"79":1}}],["normalization",{"2":{"49":1}}],["normal",{"2":{"7":1,"22":1}}],["nometadata",{"2":{"4":3,"11":2,"15":1}}],["nolookup",{"2":{"4":11,"15":4,"20":1,"66":2,"74":9,"75":1}}],["no",{"2":{"2":1,"3":3,"4":2,"11":1,"20":2,"24":1,"33":1,"35":1,"66":1,"74":1,"75":1,"81":1}}],["noname",{"2":{"20":1,"22":5}}],["non",{"0":{"2":1},"2":{"15":2,"16":1}}],["notice",{"2":{"17":1,"19":1}}],["notably",{"2":{"16":2,"57":1}}],["note",{"2":{"5":1,"19":1,"20":1,"23":1,"48":2}}],["notes",{"2":{"4":1,"20":1}}],["nothing",{"2":{"1":1,"3":3,"4":1,"5":1,"8":2,"11":4,"15":1,"75":4}}],["not",{"2":{"0":1,"1":1,"3":4,"4":6,"5":8,"10":3,"11":4,"15":1,"17":2,"19":1,"20":7,"21":3,"22":2,"23":4,"24":1,"25":1,"27":1,"30":1,"31":2,"40":1,"41":1,"43":1,"48":3,"51":1,"62":1,"64":3,"66":1,"67":1,"73":4,"74":2,"75":1,"78":3,"79":1,"80":1,"82":1}}],["number",{"2":{"1":1,"3":1,"4":1,"15":1,"19":5,"23":2,"42":2,"64":1,"75":1}}],["n",{"2":{"1":1,"2":3,"3":1,"4":3,"15":3,"48":1,"62":5,"64":4,"66":6,"78":3,"84":1}}],["`refdims`",{"2":{"42":2}}],["`dims`",{"2":{"42":2}}],["`da`",{"2":{"20":1}}],["`cuarray`",{"2":{"26":1}}],["`modify`",{"2":{"26":1}}],["`openinterval",{"2":{"5":1}}],["`",{"2":{"0":1,"20":2}}],["822008",{"2":{"76":1}}],["824659",{"2":{"76":1}}],["823123",{"2":{"76":1}}],["823656",{"2":{"15":1}}],["825204",{"2":{"75":1}}],["8288995877624121",{"2":{"85":1}}],["8289",{"2":{"84":2}}],["828161",{"2":{"83":1}}],["828515",{"2":{"49":2}}],["828395",{"2":{"30":1}}],["829714",{"2":{"43":1}}],["82",{"2":{"33":1}}],["8219054655873324",{"2":{"79":1}}],["821",{"2":{"33":1}}],["827852",{"2":{"32":1}}],["832538",{"2":{"76":1}}],["834418",{"2":{"76":1}}],["835674",{"2":{"76":1}}],["835288",{"2":{"26":1}}],["831617",{"2":{"43":1}}],["837335",{"2":{"30":1}}],["836107",{"2":{"30":2}}],["839618",{"2":{"30":1}}],["830187",{"2":{"28":1}}],["83056",{"2":{"26":1}}],["8146121812750928",{"2":{"85":1}}],["8136963000324107",{"2":{"85":1}}],["813696",{"2":{"84":2}}],["819605",{"2":{"83":1,"84":1}}],["819928",{"2":{"47":1}}],["811917",{"2":{"76":1}}],["815253",{"2":{"76":1}}],["815365",{"2":{"28":2}}],["810377",{"2":{"76":1}}],["8107",{"2":{"28":1}}],["81253",{"2":{"28":1}}],["81708",{"2":{"26":1}}],["818644",{"2":{"25":3}}],["884385",{"2":{"84":1}}],["887294",{"2":{"83":1}}],["887979",{"2":{"76":1}}],["882656",{"2":{"75":1}}],["882085",{"2":{"66":1}}],["883323",{"2":{"75":1}}],["883222",{"2":{"73":9}}],["885929",{"2":{"29":1,"31":2}}],["885914",{"2":{"28":3}}],["888721",{"2":{"83":1}}],["88841",{"2":{"29":1,"31":2}}],["88869",{"2":{"26":1}}],["881149",{"2":{"26":1}}],["880853",{"2":{"76":1}}],["880796",{"2":{"30":2}}],["88092",{"2":{"26":1}}],["88058",{"2":{"26":1}}],["88",{"2":{"13":1,"76":1}}],["894053",{"2":{"84":1}}],["890574",{"2":{"83":1}}],["891596",{"2":{"76":1}}],["899356",{"2":{"76":1}}],["899864",{"2":{"47":1,"49":1}}],["899632",{"2":{"43":1}}],["89862",{"2":{"30":1}}],["895608",{"2":{"28":2}}],["896624",{"2":{"76":1}}],["896257",{"2":{"75":1}}],["89618",{"2":{"25":2}}],["896315",{"2":{"25":3}}],["893537",{"2":{"17":1}}],["89",{"2":{"13":1}}],["849707",{"2":{"84":1}}],["849576",{"2":{"66":1}}],["8428656510212863",{"2":{"85":1}}],["842866",{"2":{"84":2}}],["842029",{"2":{"78":1}}],["842792",{"2":{"47":1}}],["847872",{"2":{"76":1}}],["847018",{"2":{"30":1}}],["84475",{"2":{"76":2}}],["844547",{"2":{"13":1}}],["848624",{"2":{"76":1}}],["846736",{"2":{"76":1}}],["846",{"2":{"31":2}}],["84",{"2":{"13":1,"76":1}}],["8719143923648308",{"2":{"85":1}}],["871914",{"2":{"84":2}}],["87656",{"2":{"78":1}}],["876112",{"2":{"43":1}}],["878565",{"2":{"76":1}}],["873218",{"2":{"76":1}}],["87255",{"2":{"73":3}}],["875108",{"2":{"49":1}}],["875221",{"2":{"25":3}}],["870348",{"2":{"75":1}}],["870276",{"2":{"30":2}}],["870485",{"2":{"17":1}}],["879774",{"2":{"30":1}}],["87436",{"2":{"26":1}}],["87",{"2":{"13":3,"47":1}}],["868917",{"2":{"84":1}}],["868966",{"2":{"43":1}}],["868587",{"2":{"84":1}}],["8612776980335002",{"2":{"85":1}}],["861278",{"2":{"84":2}}],["86112",{"2":{"84":1}}],["86174",{"2":{"26":1}}],["8632634208267141",{"2":{"79":2}}],["865713",{"2":{"76":1}}],["865233",{"2":{"30":2}}],["865298",{"2":{"28":2}}],["869012",{"2":{"73":3}}],["864128",{"2":{"43":1}}],["864765",{"2":{"30":1}}],["864856",{"2":{"17":1}}],["860933",{"2":{"28":2}}],["867547",{"2":{"15":1,"17":1}}],["86",{"2":{"13":1}}],["8560905731682101",{"2":{"85":1}}],["856091",{"2":{"84":2}}],["853553",{"2":{"30":1}}],["8542391508438596",{"2":{"79":1}}],["854239",{"2":{"78":1}}],["854076",{"2":{"28":2}}],["854739",{"2":{"26":1}}],["85",{"2":{"13":1,"84":1}}],["80023",{"2":{"78":1}}],["808889",{"2":{"76":1}}],["806495",{"2":{"76":1}}],["802776",{"2":{"73":4}}],["802122",{"2":{"30":1}}],["804846",{"2":{"62":2,"64":2,"66":6}}],["80455",{"2":{"26":1}}],["8030281996030815",{"2":{"79":1}}],["803446",{"2":{"62":2,"64":2,"66":6}}],["803293",{"2":{"30":1}}],["803192",{"2":{"13":1}}],["80",{"2":{"4":1,"13":1,"48":1}}],["8",{"2":{"0":1,"4":1,"5":2,"13":1,"16":1,"25":1,"30":4,"43":7,"46":1,"47":2,"48":11,"73":8,"74":2,"76":7,"78":3,"83":2,"84":12,"85":2}}],["6×10",{"2":{"78":1,"80":30}}],["6×6",{"2":{"76":3}}],["6×3",{"2":{"73":2}}],["6am",{"2":{"48":1}}],["648179",{"2":{"84":1}}],["64534",{"2":{"84":1}}],["645678",{"2":{"83":1}}],["645795",{"2":{"47":1,"49":2}}],["6445457662038467",{"2":{"79":2}}],["640974",{"2":{"78":1}}],["640311",{"2":{"43":1}}],["642187",{"2":{"76":1}}],["642908",{"2":{"26":1}}],["647225",{"2":{"75":1}}],["64",{"2":{"48":1}}],["634377",{"2":{"84":1}}],["634499",{"2":{"30":1}}],["636476",{"2":{"83":1}}],["631878",{"2":{"76":1}}],["63",{"2":{"47":1}}],["639499",{"2":{"47":1}}],["639212",{"2":{"43":1}}],["633956",{"2":{"43":1}}],["635963",{"2":{"43":1}}],["637077",{"2":{"15":2}}],["6730273352488979",{"2":{"85":1}}],["673027",{"2":{"84":2}}],["673966",{"2":{"30":1}}],["670607",{"2":{"83":1,"84":1}}],["6702922824659258",{"2":{"79":2}}],["674061",{"2":{"83":1}}],["674881",{"2":{"43":1}}],["675459",{"2":{"76":1}}],["675435",{"2":{"13":1}}],["677543",{"2":{"76":2}}],["679296",{"2":{"76":1}}],["679221",{"2":{"30":2}}],["679453",{"2":{"75":1}}],["679632",{"2":{"84":1}}],["6796",{"2":{"49":2}}],["678022",{"2":{"30":1}}],["622735",{"2":{"84":1}}],["620473",{"2":{"83":1}}],["620055",{"2":{"29":1,"31":2}}],["621527",{"2":{"76":1}}],["621662",{"2":{"75":1}}],["621603",{"2":{"73":4}}],["623124",{"2":{"76":1}}],["625435",{"2":{"30":1}}],["625296",{"2":{"28":3}}],["625257",{"2":{"28":3}}],["624685",{"2":{"13":1}}],["6150940338022266",{"2":{"85":1}}],["615094",{"2":{"84":2}}],["615764",{"2":{"30":1}}],["6146564273146751",{"2":{"85":1}}],["614656",{"2":{"84":2}}],["61781",{"2":{"76":1}}],["613895",{"2":{"76":1}}],["610173",{"2":{"76":1}}],["61025",{"2":{"26":1}}],["611961",{"2":{"28":1}}],["612779",{"2":{"25":3}}],["687921",{"2":{"75":1}}],["68781",{"2":{"43":1}}],["687223",{"2":{"25":3}}],["683795",{"2":{"75":1}}],["683712",{"2":{"47":1}}],["683091",{"2":{"30":1}}],["683696",{"2":{"30":1}}],["680987",{"2":{"75":1}}],["68072e",{"2":{"47":1}}],["680352",{"2":{"30":1}}],["680225",{"2":{"30":2}}],["684587",{"2":{"28":1}}],["686287",{"2":{"25":2}}],["699976",{"2":{"76":1}}],["694278906020718",{"2":{"85":1}}],["694279",{"2":{"84":2}}],["694066",{"2":{"83":1}}],["69461",{"2":{"62":2,"64":2,"66":6}}],["694796",{"2":{"47":1,"49":1}}],["691687",{"2":{"78":1}}],["691887",{"2":{"32":1}}],["691162",{"2":{"17":1}}],["690695",{"2":{"30":1}}],["69506",{"2":{"26":1}}],["69635",{"2":{"25":3}}],["692209",{"2":{"17":2}}],["692235",{"2":{"15":1}}],["69",{"2":{"13":1}}],["666938",{"2":{"84":1}}],["66622",{"2":{"26":1}}],["66996622586129",{"2":{"79":1}}],["669966",{"2":{"78":1}}],["669021",{"2":{"30":1}}],["668226",{"2":{"78":1}}],["668984",{"2":{"62":2,"64":2,"66":6}}],["661444",{"2":{"76":1}}],["662413",{"2":{"76":1}}],["662833",{"2":{"76":1}}],["660657",{"2":{"76":1}}],["667841",{"2":{"75":1}}],["664642",{"2":{"76":1}}],["664038",{"2":{"43":1}}],["6642",{"2":{"29":1,"31":2}}],["665742",{"2":{"26":1}}],["66",{"2":{"13":1}}],["656243",{"2":{"84":1}}],["650842",{"2":{"76":1}}],["657054",{"2":{"76":1}}],["657441",{"2":{"28":3}}],["655684",{"2":{"25":3}}],["651784",{"2":{"25":3}}],["652353",{"2":{"25":3}}],["65",{"2":{"13":5,"48":1}}],["608366",{"2":{"84":1}}],["600816",{"2":{"49":1}}],["602631",{"2":{"78":1}}],["602",{"2":{"76":1}}],["602315",{"2":{"43":1}}],["602923",{"2":{"28":1}}],["605324",{"2":{"30":1}}],["605217",{"2":{"28":1}}],["60111",{"2":{"25":2}}],["60",{"2":{"4":1,"5":1,"75":1,"79":1}}],["6",{"2":{"0":1,"4":2,"5":18,"13":1,"16":1,"17":4,"20":4,"25":6,"26":1,"43":7,"46":11,"47":6,"48":20,"73":14,"74":1,"76":3,"77":1,"78":12,"79":4,"80":19,"84":12,"85":2}}],["436605",{"2":{"83":1}}],["436168",{"2":{"76":1}}],["43471177733076",{"2":{"80":2}}],["434061",{"2":{"49":1}}],["439711995898844",{"2":{"79":1}}],["43915",{"2":{"76":1}}],["433769",{"2":{"78":1}}],["433955",{"2":{"32":1}}],["433527",{"2":{"28":1}}],["417756",{"2":{"76":1,"84":1}}],["412078",{"2":{"76":1}}],["415714",{"2":{"73":3}}],["41",{"2":{"48":1}}],["418968",{"2":{"43":1}}],["411",{"2":{"33":1}}],["411529",{"2":{"29":1,"31":2}}],["410463",{"2":{"28":2}}],["41334",{"2":{"26":1}}],["462859",{"2":{"76":1}}],["462981",{"2":{"26":1}}],["461631",{"2":{"62":2,"64":2,"66":6}}],["464482",{"2":{"43":1}}],["464554",{"2":{"26":1}}],["460775",{"2":{"76":1}}],["460633",{"2":{"47":1,"49":2}}],["460",{"2":{"33":1}}],["467484",{"2":{"30":1}}],["465631",{"2":{"29":1,"31":2}}],["46668",{"2":{"28":1}}],["469388",{"2":{"28":1}}],["468968",{"2":{"30":1}}],["468184",{"2":{"28":1}}],["468066",{"2":{"28":1}}],["449491",{"2":{"83":1,"84":2}}],["4492",{"2":{"26":1}}],["4408839264303761",{"2":{"79":2}}],["440884",{"2":{"78":1}}],["44818",{"2":{"76":1}}],["442111",{"2":{"75":1}}],["442542",{"2":{"47":1}}],["444708",{"2":{"30":1}}],["441181",{"2":{"75":1}}],["44119",{"2":{"28":2}}],["441735",{"2":{"29":1,"31":2}}],["44104",{"2":{"28":1}}],["443494",{"2":{"15":1,"17":1}}],["456688",{"2":{"84":1}}],["45655",{"2":{"83":1}}],["457841",{"2":{"83":1,"84":1}}],["457891",{"2":{"30":1}}],["450701",{"2":{"83":1,"84":2}}],["450109",{"2":{"62":2,"64":2,"66":6}}],["45983648216629247",{"2":{"80":1}}],["4526944925375208",{"2":{"79":1}}],["452694",{"2":{"78":1}}],["454047",{"2":{"76":1}}],["454886",{"2":{"28":2}}],["455255",{"2":{"76":1}}],["458427",{"2":{"76":1}}],["45804",{"2":{"26":1}}],["45152471334016764",{"2":{"79":1}}],["451525",{"2":{"78":1}}],["451425",{"2":{"30":1}}],["4518",{"2":{"28":2}}],["453973",{"2":{"25":3}}],["4×6",{"2":{"17":1}}],["4×5",{"2":{"13":1}}],["48952511607945026",{"2":{"85":1}}],["489525",{"2":{"84":2}}],["489762",{"2":{"25":1}}],["4802202427553709",{"2":{"79":10,"80":2}}],["48022",{"2":{"78":1}}],["484929",{"2":{"78":1}}],["4854948068259556",{"2":{"79":1}}],["485952",{"2":{"76":1}}],["485687",{"2":{"17":1}}],["48240020633837055",{"2":{"79":1}}],["482654",{"2":{"76":1}}],["48275",{"2":{"26":1}}],["488473",{"2":{"84":1}}],["488458",{"2":{"47":1}}],["48889263023704055",{"2":{"79":1}}],["48817",{"2":{"30":1}}],["487563",{"2":{"47":1}}],["487578",{"2":{"13":1}}],["487601",{"2":{"26":1}}],["48124",{"2":{"76":1}}],["481184",{"2":{"30":1}}],["48113",{"2":{"25":1}}],["48101",{"2":{"25":1}}],["48",{"2":{"13":1,"48":1}}],["4278264986513013",{"2":{"85":1}}],["427328",{"2":{"15":1,"17":1}}],["429822",{"2":{"84":1}}],["422318",{"2":{"76":1}}],["428951",{"2":{"43":1}}],["42833",{"2":{"25":1}}],["423798",{"2":{"43":1}}],["4231",{"2":{"30":1}}],["421525",{"2":{"76":1}}],["42151",{"2":{"26":1}}],["421692",{"2":{"30":1}}],["420756",{"2":{"17":1}}],["42",{"2":{"13":1}}],["474535",{"2":{"78":1}}],["476387",{"2":{"76":2}}],["476495",{"2":{"28":2}}],["471877",{"2":{"43":1}}],["475569",{"2":{"43":1}}],["479126",{"2":{"26":1}}],["47963",{"2":{"25":2}}],["47",{"2":{"13":1,"48":2}}],["495624",{"2":{"76":1}}],["497346",{"2":{"30":1}}],["49795",{"2":{"25":1}}],["49224",{"2":{"76":1}}],["492332",{"2":{"47":1}}],["492377",{"2":{"25":1}}],["492141",{"2":{"28":3}}],["493065",{"2":{"84":1}}],["493417",{"2":{"28":2}}],["493708",{"2":{"25":1}}],["49057852962217935",{"2":{"80":1}}],["49097",{"2":{"26":1}}],["490968",{"2":{"25":1}}],["49029",{"2":{"25":2}}],["496665",{"2":{"25":1}}],["496201",{"2":{"25":1}}],["496108",{"2":{"25":2}}],["491767",{"2":{"25":3}}],["49853441854361796",{"2":{"80":1}}],["498465",{"2":{"47":1}}],["498669",{"2":{"47":1}}],["498606",{"2":{"19":1}}],["498996",{"2":{"47":1}}],["498388",{"2":{"47":1,"48":1}}],["498895",{"2":{"47":1}}],["498832",{"2":{"47":1,"48":1}}],["498801",{"2":{"19":1}}],["498764",{"2":{"30":1}}],["498704",{"2":{"19":1}}],["498145",{"2":{"19":1}}],["499307",{"2":{"76":1}}],["49935",{"2":{"48":1}}],["499474",{"2":{"48":1}}],["499687",{"2":{"48":1}}],["499667",{"2":{"47":1}}],["499218",{"2":{"47":1}}],["499298",{"2":{"19":1}}],["49973",{"2":{"76":1}}],["499719",{"2":{"25":1}}],["499762",{"2":{"19":1}}],["499594",{"2":{"19":1}}],["499985",{"2":{"19":1}}],["49",{"2":{"13":2,"48":1}}],["405912",{"2":{"76":1}}],["40584",{"2":{"26":1}}],["403836",{"2":{"76":1}}],["406397",{"2":{"62":2,"64":2,"66":6}}],["40687",{"2":{"32":1}}],["409622",{"2":{"30":2}}],["40409",{"2":{"26":1}}],["40065",{"2":{"25":1}}],["40",{"2":{"4":1,"15":3,"48":1,"75":1}}],["4",{"2":{"0":5,"3":1,"4":5,"5":12,"13":6,"15":6,"16":2,"17":2,"19":1,"20":14,"21":3,"25":9,"26":2,"30":5,"32":1,"43":7,"46":1,"47":6,"48":8,"73":18,"74":1,"76":2,"78":1,"80":2,"81":3,"83":1,"84":12,"85":2}}],["09300753748828394",{"2":{"85":1}}],["0930075",{"2":{"84":2}}],["09016703141346892",{"2":{"80":1}}],["0905873",{"2":{"76":1}}],["0983553",{"2":{"76":1}}],["0980829",{"2":{"43":1}}],["09245174474290706",{"2":{"80":1}}],["092494",{"2":{"28":1}}],["0923954",{"2":{"76":1}}],["09558e",{"2":{"47":1}}],["095",{"2":{"33":1}}],["0959455",{"2":{"25":3}}],["0963009",{"2":{"78":1}}],["096",{"2":{"33":1}}],["0965083",{"2":{"28":3}}],["0967863",{"2":{"17":1}}],["0992684",{"2":{"30":1}}],["0999314",{"2":{"28":2}}],["0991336",{"2":{"17":2}}],["09764",{"2":{"25":2}}],["09",{"2":{"0":1,"25":5,"49":1,"74":1}}],["08553143289483933",{"2":{"79":1}}],["0852624",{"2":{"78":1}}],["08512",{"2":{"25":2}}],["0821229",{"2":{"76":1}}],["0831822",{"2":{"76":1}}],["0803513146650122",{"2":{"80":1}}],["0804518",{"2":{"26":1}}],["0802658",{"2":{"15":1}}],["08",{"2":{"0":1,"25":3,"49":1,"74":1,"76":1}}],["0768485",{"2":{"78":1}}],["0760101",{"2":{"76":1}}],["0760848",{"2":{"30":1}}],["07217595907727536",{"2":{"79":1}}],["072176",{"2":{"78":1}}],["07277",{"2":{"26":1}}],["0758114",{"2":{"78":1}}],["0787968",{"2":{"76":1}}],["0702987",{"2":{"62":2,"64":2,"66":6}}],["07151",{"2":{"32":1}}],["0778416",{"2":{"30":1}}],["0779205",{"2":{"28":1}}],["0740736",{"2":{"28":2}}],["07",{"2":{"0":1,"25":3,"49":1,"74":1}}],["0670357162417285e",{"2":{"80":1}}],["06317733925981239",{"2":{"79":2,"80":2}}],["0630398",{"2":{"76":1}}],["0661958",{"2":{"76":1}}],["0669452",{"2":{"28":1}}],["0653496",{"2":{"73":12}}],["061892",{"2":{"84":1}}],["0610019",{"2":{"32":1}}],["0613839",{"2":{"28":1}}],["06474",{"2":{"32":1}}],["0641884",{"2":{"30":1}}],["0649391",{"2":{"26":1}}],["06834164575276236",{"2":{"79":1}}],["0683416",{"2":{"78":1}}],["0684698",{"2":{"29":1,"31":2}}],["068913",{"2":{"25":3}}],["0609271",{"2":{"28":1}}],["062795",{"2":{"84":1}}],["0628947",{"2":{"76":1}}],["062593",{"2":{"43":1}}],["0621546",{"2":{"28":3}}],["0622255",{"2":{"28":2}}],["0697249",{"2":{"28":3}}],["06",{"2":{"0":1,"25":3,"49":1,"74":1}}],["053158",{"2":{"84":1}}],["051776",{"2":{"84":1}}],["054083",{"2":{"76":1}}],["0540645",{"2":{"30":3}}],["0506805",{"2":{"76":1}}],["0502944",{"2":{"25":3}}],["0574938",{"2":{"76":1}}],["05t03",{"2":{"49":4}}],["0559616",{"2":{"30":1}}],["0558987",{"2":{"28":1}}],["0557598",{"2":{"26":1}}],["0599431",{"2":{"26":1}}],["05",{"2":{"0":1,"25":3,"49":1,"73":1,"74":1}}],["0445446",{"2":{"84":1}}],["0446036",{"2":{"47":1}}],["0417586",{"2":{"76":2}}],["0416986",{"2":{"25":3}}],["0426808",{"2":{"76":1}}],["0429074",{"2":{"75":1}}],["0425477",{"2":{"28":2}}],["0474302",{"2":{"30":2}}],["04599641808658339",{"2":{"85":1}}],["0459964",{"2":{"84":2}}],["0450386",{"2":{"29":1,"31":2}}],["0458864",{"2":{"28":1}}],["0463176",{"2":{"29":2,"31":2}}],["04060837507113502",{"2":{"79":10}}],["0406084",{"2":{"78":1}}],["0403793",{"2":{"47":1,"49":2}}],["0400372",{"2":{"28":2}}],["04046",{"2":{"25":2}}],["04",{"2":{"0":1,"25":5,"49":1,"74":1,"76":3}}],["03613547354359734",{"2":{"80":1}}],["0315018",{"2":{"76":1}}],["0387029",{"2":{"76":1}}],["0300922",{"2":{"76":1}}],["0303789",{"2":{"17":1}}],["0372362",{"2":{"43":1}}],["0375522",{"2":{"30":1}}],["0375769",{"2":{"28":1}}],["0325131",{"2":{"83":1}}],["0323182",{"2":{"30":1}}],["0320967",{"2":{"17":1}}],["0347024",{"2":{"28":1}}],["03",{"2":{"0":1,"25":5,"47":1,"49":2,"74":1}}],["023646798570656102",{"2":{"85":1}}],["0236468",{"2":{"84":2}}],["0239356",{"2":{"28":2}}],["022593",{"2":{"84":2}}],["027",{"2":{"81":2}}],["0275306",{"2":{"30":1}}],["0299112",{"2":{"78":1}}],["02976",{"2":{"25":1}}],["021",{"2":{"76":1}}],["0205228",{"2":{"30":1}}],["0282382",{"2":{"13":1}}],["02",{"2":{"0":2,"25":5,"47":1,"49":2,"74":1}}],["0",{"2":{"0":60,"1":6,"3":8,"4":28,"5":8,"13":20,"15":92,"16":16,"17":81,"18":240,"19":19,"20":176,"25":178,"26":69,"28":546,"29":28,"30":148,"31":50,"32":12,"33":25,"43":175,"44":42,"46":2,"47":63,"48":20,"49":53,"61":105,"62":50,"64":48,"66":141,"73":147,"74":7,"75":35,"76":243,"77":16,"78":133,"79":89,"80":155,"81":12,"83":48,"84":150,"85":36}}],["00816974",{"2":{"84":1}}],["00832284",{"2":{"43":1}}],["005163666306917225",{"2":{"85":1}}],["00516367",{"2":{"84":2}}],["00508449",{"2":{"43":1}}],["0019198597596568057",{"2":{"85":1}}],["00191986",{"2":{"84":2}}],["00110588",{"2":{"83":1}}],["006378200703587189",{"2":{"79":1,"80":2}}],["00686195",{"2":{"76":1}}],["007",{"2":{"76":3}}],["00337686",{"2":{"29":1,"31":2}}],["00",{"2":{"0":42,"25":140,"33":10,"46":4,"47":10,"49":37,"74":32}}],["015759978623873905",{"2":{"80":2}}],["01576",{"2":{"78":1}}],["0171909",{"2":{"78":1}}],["013144",{"2":{"78":1}}],["013967",{"2":{"49":2}}],["0164892",{"2":{"76":1}}],["0141696",{"2":{"78":1}}],["0149561",{"2":{"76":1}}],["014",{"2":{"76":1}}],["0143204",{"2":{"76":2}}],["0140644",{"2":{"28":3}}],["0184746",{"2":{"49":1}}],["011",{"2":{"48":2}}],["01t03",{"2":{"49":2}}],["01t02",{"2":{"49":1}}],["01t01",{"2":{"47":1,"49":2}}],["01t00",{"2":{"0":21,"25":70,"46":1,"47":2,"49":7,"74":16}}],["0192911",{"2":{"30":1}}],["0196808",{"2":{"30":1}}],["0197492",{"2":{"26":1}}],["012300334322905893",{"2":{"85":1}}],["0123003",{"2":{"84":2}}],["0120967",{"2":{"83":1}}],["0127924",{"2":{"28":3}}],["01282",{"2":{"25":1}}],["010277581356302745",{"2":{"80":2}}],["0102776",{"2":{"78":1}}],["010",{"2":{"20":2}}],["01",{"2":{"0":5,"25":14,"46":1,"47":6,"49":21,"74":3}}],["↗",{"2":{"0":1,"1":1,"3":1,"13":1,"15":1,"18":1,"19":1,"20":1,"25":6,"30":1,"32":2,"34":1,"83":3}}],["→",{"2":{"0":4,"1":3,"3":2,"4":2,"5":8,"13":4,"15":13,"16":1,"17":12,"18":1,"19":3,"20":12,"21":2,"25":11,"26":2,"28":11,"29":1,"30":7,"31":2,"32":2,"33":1,"34":2,"43":7,"44":11,"47":3,"48":8,"49":5,"61":3,"62":4,"64":4,"66":11,"73":26,"75":2,"76":10,"77":2,"78":8,"80":24,"83":4,"84":1}}],["↓",{"2":{"0":5,"1":4,"3":3,"4":2,"5":8,"13":5,"15":16,"16":1,"17":12,"18":1,"19":5,"20":12,"21":2,"25":14,"26":2,"28":11,"29":2,"30":8,"31":2,"32":2,"33":1,"34":2,"43":12,"44":15,"47":10,"48":19,"49":6,"61":3,"62":4,"64":4,"66":11,"73":28,"74":1,"75":2,"76":10,"77":2,"78":9,"79":1,"80":25,"83":4,"84":1}}],["┐",{"2":{"0":3,"4":1,"5":4,"13":3,"15":5,"17":3,"19":3,"20":5,"21":1,"25":8,"26":1,"28":11,"29":2,"30":4,"31":2,"32":2,"33":1,"43":1,"47":8,"48":11,"49":3,"61":3,"62":2,"64":2,"66":6,"73":15,"74":1,"75":1,"76":5,"77":1,"78":8,"79":1,"80":25,"83":2,"84":1}}],["│",{"2":{"0":6,"1":2,"3":2,"4":2,"5":8,"13":6,"15":20,"17":8,"18":2,"19":6,"20":10,"21":2,"25":16,"26":2,"28":22,"29":4,"30":8,"31":4,"32":4,"33":2,"43":2,"47":16,"48":22,"49":6,"61":6,"62":4,"64":4,"66":12,"73":30,"74":2,"75":2,"76":10,"77":2,"78":16,"79":2,"80":50,"83":4,"84":74}}],["5201836703588896",{"2":{"79":1}}],["520184",{"2":{"78":1}}],["5203602669427675",{"2":{"79":1}}],["52036",{"2":{"78":1}}],["52735",{"2":{"78":1}}],["528009",{"2":{"76":1}}],["528669",{"2":{"28":1}}],["522989",{"2":{"47":1}}],["526688",{"2":{"30":1}}],["526295",{"2":{"28":2}}],["521021",{"2":{"30":2}}],["521762",{"2":{"28":1}}],["580091",{"2":{"83":1}}],["58054",{"2":{"25":2}}],["581131",{"2":{"83":1,"84":2}}],["581748",{"2":{"47":1,"49":1}}],["584048",{"2":{"76":1}}],["585756",{"2":{"43":1}}],["585057",{"2":{"28":1}}],["589895",{"2":{"30":1}}],["587556",{"2":{"28":3}}],["588506",{"2":{"28":2}}],["535124",{"2":{"84":1}}],["537046",{"2":{"78":1}}],["537469",{"2":{"49":1}}],["539197",{"2":{"76":1}}],["539076",{"2":{"17":1}}],["531012",{"2":{"76":1}}],["533041",{"2":{"76":1}}],["536911",{"2":{"73":6}}],["53",{"2":{"47":1}}],["530653",{"2":{"43":1}}],["534655",{"2":{"28":1}}],["534915",{"2":{"28":2}}],["5×1",{"2":{"73":1}}],["5×10",{"2":{"28":13}}],["5×5",{"2":{"29":1,"31":2}}],["5×4",{"2":{"4":1}}],["5663088629322468",{"2":{"79":2}}],["566574",{"2":{"43":1}}],["566557",{"2":{"25":3}}],["564657",{"2":{"76":1}}],["564589",{"2":{"25":3}}],["56",{"2":{"48":1}}],["561611",{"2":{"47":1}}],["563623",{"2":{"30":1}}],["567383",{"2":{"28":1}}],["568763",{"2":{"76":1}}],["568302",{"2":{"25":3}}],["568131",{"2":{"25":3}}],["516313",{"2":{"83":1}}],["51621",{"2":{"83":1}}],["516268",{"2":{"76":1}}],["517175",{"2":{"83":1}}],["5176046469253345",{"2":{"79":1}}],["517605",{"2":{"78":1}}],["5128894732327488",{"2":{"79":1}}],["512083",{"2":{"15":1,"17":1}}],["515445",{"2":{"78":1}}],["515061",{"2":{"25":3}}],["518483",{"2":{"78":1}}],["514714",{"2":{"28":1}}],["511078",{"2":{"28":1}}],["511086",{"2":{"25":3}}],["51",{"2":{"13":1}}],["5434869639181522",{"2":{"79":2}}],["543616",{"2":{"28":1}}],["545522",{"2":{"76":1}}],["545129",{"2":{"28":3}}],["54822",{"2":{"26":1}}],["54853",{"2":{"25":2}}],["54483",{"2":{"25":2}}],["54",{"2":{"13":1}}],["541806",{"2":{"13":1}}],["5501481631111826",{"2":{"85":1}}],["550148",{"2":{"84":2}}],["5514523568721104",{"2":{"79":2}}],["55114",{"2":{"25":2}}],["552153",{"2":{"76":1}}],["559878",{"2":{"47":1}}],["55745",{"2":{"32":1}}],["5573",{"2":{"30":1}}],["553558",{"2":{"28":3}}],["55351",{"2":{"25":1}}],["554791",{"2":{"28":3}}],["555456",{"2":{"25":3}}],["55",{"2":{"13":1}}],["597843",{"2":{"84":1}}],["59705",{"2":{"26":1}}],["599789",{"2":{"84":1}}],["599558",{"2":{"13":1}}],["590188929977547",{"2":{"80":2}}],["590953",{"2":{"76":1}}],["5962",{"2":{"32":1}}],["59",{"2":{"13":1}}],["574619",{"2":{"76":1}}],["574678",{"2":{"76":1}}],["578329",{"2":{"76":1}}],["578253",{"2":{"76":1}}],["578989",{"2":{"32":1}}],["575727",{"2":{"76":1}}],["575595",{"2":{"75":1}}],["575698",{"2":{"30":2}}],["571281",{"2":{"28":1}}],["571602",{"2":{"28":1}}],["570254",{"2":{"28":1}}],["57019",{"2":{"26":1}}],["57",{"2":{"5":1,"48":1}}],["5040228055200978",{"2":{"85":1}}],["504023",{"2":{"84":2}}],["5081446040814137e",{"2":{"80":1}}],["506221",{"2":{"75":1}}],["5055",{"2":{"48":4}}],["505946",{"2":{"25":1}}],["502391",{"2":{"47":1}}],["5074",{"2":{"32":1}}],["503183",{"2":{"76":1}}],["503561",{"2":{"47":1}}],["503967",{"2":{"28":1}}],["503823",{"2":{"28":1}}],["503719",{"2":{"25":1}}],["501732",{"2":{"47":1}}],["501369",{"2":{"47":1}}],["501379",{"2":{"19":1}}],["501068",{"2":{"25":1}}],["501643",{"2":{"19":1}}],["501105",{"2":{"19":1}}],["500769",{"2":{"49":2}}],["500757",{"2":{"47":1,"48":2}}],["500333",{"2":{"48":1}}],["500405",{"2":{"47":1}}],["50047",{"2":{"19":1}}],["500627",{"2":{"47":1}}],["500642",{"2":{"29":1,"31":2}}],["500644",{"2":{"19":1}}],["500277",{"2":{"47":1}}],["500913",{"2":{"47":1}}],["500157",{"2":{"28":3}}],["5008",{"2":{"25":2}}],["500874",{"2":{"19":1}}],["500533",{"2":{"19":1}}],["500032",{"2":{"48":1}}],["500093",{"2":{"47":1}}],["500083",{"2":{"19":1}}],["500064",{"2":{"19":1}}],["50",{"2":{"5":3,"15":9,"75":1}}],["5u",{"2":{"5":1}}],["5",{"2":{"0":1,"4":3,"5":21,"13":5,"15":2,"16":1,"17":1,"20":7,"21":1,"25":6,"26":1,"28":10,"29":2,"30":6,"32":1,"43":9,"46":1,"47":2,"48":5,"61":3,"73":7,"74":2,"75":1,"77":3,"78":11,"79":1,"80":35,"84":12,"85":2}}],["331147",{"2":{"76":1}}],["33985840915074383",{"2":{"73":1}}],["339858",{"2":{"73":12}}],["339888",{"2":{"30":1}}],["338844",{"2":{"62":2,"64":2,"66":6}}],["336376",{"2":{"83":1}}],["336",{"2":{"48":1}}],["33",{"2":{"48":2}}],["337",{"2":{"48":1}}],["337182",{"2":{"30":1}}],["337576",{"2":{"28":1}}],["330777",{"2":{"30":2}}],["334152",{"2":{"15":1,"17":1}}],["371583",{"2":{"76":1}}],["376",{"2":{"48":3}}],["370194",{"2":{"78":1}}],["370454",{"2":{"76":1}}],["370",{"2":{"48":2}}],["375166",{"2":{"43":1}}],["375182",{"2":{"30":1}}],["37963",{"2":{"26":1}}],["3793",{"2":{"25":2}}],["374026",{"2":{"26":1}}],["369225",{"2":{"78":1}}],["369",{"2":{"48":3}}],["368",{"2":{"48":3}}],["361536",{"2":{"76":1}}],["361",{"2":{"48":3}}],["362",{"2":{"47":1}}],["363442",{"2":{"84":1}}],["363373",{"2":{"84":1}}],["363918",{"2":{"76":1}}],["363",{"2":{"47":2}}],["365",{"2":{"47":2}}],["365341",{"2":{"30":1}}],["366873",{"2":{"76":1}}],["366",{"2":{"47":3}}],["364097",{"2":{"84":2}}],["364",{"2":{"46":18,"47":3}}],["364488",{"2":{"25":3}}],["367",{"2":{"33":1}}],["360",{"2":{"4":2,"48":1}}],["319496",{"2":{"76":1}}],["312",{"2":{"48":1}}],["31",{"2":{"47":1}}],["313361",{"2":{"76":1}}],["313",{"2":{"48":1}}],["313711",{"2":{"47":1}}],["313279",{"2":{"47":1}}],["315591",{"2":{"43":1}}],["31572",{"2":{"32":1}}],["314535",{"2":{"43":1}}],["31468",{"2":{"32":1}}],["3162",{"2":{"30":1}}],["31065",{"2":{"25":3}}],["311448",{"2":{"15":1}}],["3a",{"2":{"16":1}}],["3×2",{"2":{"73":1}}],["3×14",{"2":{"62":2,"64":2,"66":6}}],["3×5",{"2":{"21":2,"61":10}}],["3×5×12",{"2":{"0":1}}],["3×4×1",{"2":{"32":1}}],["3×4×5",{"2":{"32":1}}],["3×4",{"2":{"20":5}}],["3×3",{"2":{"15":3,"17":1,"33":1,"73":3}}],["307616",{"2":{"84":1}}],["30391",{"2":{"76":1}}],["301659",{"2":{"75":1}}],["30t22",{"2":{"49":1}}],["30t23",{"2":{"46":1,"47":2,"49":2}}],["30×17520",{"2":{"48":3}}],["305",{"2":{"48":1}}],["309301",{"2":{"43":1}}],["30923",{"2":{"26":1}}],["306208",{"2":{"30":1}}],["30405878501189054",{"2":{"80":1}}],["304266",{"2":{"76":1}}],["30427",{"2":{"26":1}}],["3047",{"2":{"74":1}}],["304688",{"2":{"26":1}}],["3002782566445145",{"2":{"80":1}}],["300285",{"2":{"76":1}}],["300304",{"2":{"76":2}}],["300",{"2":{"20":1}}],["300768",{"2":{"13":1}}],["30",{"2":{"15":1,"16":2,"17":4,"20":9,"46":18,"47":2,"66":2,"75":1,"76":1}}],["3434655288098666",{"2":{"85":1}}],["343493",{"2":{"28":1}}],["34882573131206984",{"2":{"79":1}}],["348826",{"2":{"78":1}}],["341133",{"2":{"83":1}}],["341976",{"2":{"73":4}}],["341835",{"2":{"30":1}}],["340557",{"2":{"62":2,"64":2,"66":6}}],["34589",{"2":{"76":1}}],["345",{"2":{"48":1}}],["345501",{"2":{"26":1}}],["344",{"2":{"48":1}}],["344408",{"2":{"28":3}}],["346013",{"2":{"47":1}}],["34",{"2":{"13":1}}],["359194",{"2":{"84":1}}],["359421",{"2":{"83":1}}],["35100608350331053",{"2":{"85":1}}],["351006",{"2":{"84":2}}],["351413",{"2":{"30":2}}],["358513",{"2":{"76":1}}],["358535",{"2":{"76":1}}],["358625",{"2":{"30":1}}],["357367",{"2":{"75":1}}],["353968",{"2":{"83":1}}],["353",{"2":{"48":1}}],["353691",{"2":{"30":1}}],["354046",{"2":{"30":1}}],["354868",{"2":{"17":1}}],["352592",{"2":{"62":2,"64":2,"66":6}}],["352",{"2":{"48":1}}],["352138",{"2":{"30":1}}],["352614",{"2":{"26":1}}],["350024",{"2":{"84":1}}],["350422",{"2":{"29":1,"31":2}}],["350104",{"2":{"28":2}}],["350546",{"2":{"17":1}}],["35",{"2":{"13":1,"15":1}}],["3266527246823143",{"2":{"79":1}}],["32669",{"2":{"26":1}}],["3258728635315493",{"2":{"79":2,"81":2}}],["329",{"2":{"48":1}}],["329515",{"2":{"29":1,"31":2}}],["328",{"2":{"48":1}}],["32806",{"2":{"28":1}}],["321",{"2":{"48":1}}],["320",{"2":{"48":1}}],["320667",{"2":{"30":1}}],["322005",{"2":{"43":1}}],["322115",{"2":{"30":1}}],["32",{"2":{"13":2,"48":2,"80":1}}],["38167574879167476",{"2":{"85":1}}],["3863063388395396",{"2":{"79":1}}],["386306",{"2":{"78":1}}],["386433",{"2":{"28":3}}],["38714",{"2":{"49":2}}],["38795",{"2":{"25":2}}],["388768",{"2":{"76":1}}],["388907",{"2":{"32":1}}],["388243",{"2":{"13":1}}],["380161",{"2":{"30":1}}],["389839",{"2":{"28":1}}],["383632",{"2":{"13":1}}],["399",{"2":{"76":1}}],["399781",{"2":{"76":1}}],["397386",{"2":{"76":1}}],["395053",{"2":{"76":1}}],["395594",{"2":{"32":1}}],["391307",{"2":{"76":1}}],["391155",{"2":{"28":3}}],["394576",{"2":{"76":1}}],["394703",{"2":{"30":1}}],["396585",{"2":{"75":1}}],["392334",{"2":{"76":1}}],["392377",{"2":{"30":1}}],["392848",{"2":{"28":3}}],["390081",{"2":{"26":1}}],["390033",{"2":{"25":3}}],["39",{"2":{"2":2,"3":1,"4":2,"17":1,"21":4,"22":1,"30":2,"31":1,"33":1,"35":1,"52":1,"64":1,"65":1,"66":1,"67":6,"75":1,"76":1}}],["3",{"2":{"0":4,"1":3,"3":1,"4":7,"5":8,"13":9,"15":3,"16":1,"17":12,"18":2,"19":6,"20":11,"21":6,"23":2,"25":17,"26":2,"29":2,"30":10,"32":6,"33":7,"34":2,"43":7,"46":1,"47":7,"48":23,"49":3,"61":3,"62":5,"64":4,"66":10,"73":3,"74":2,"76":1,"78":1,"80":1,"83":3,"84":8,"85":2}}],["145293",{"2":{"76":1}}],["144422",{"2":{"76":1}}],["143×23",{"2":{"76":1}}],["143704",{"2":{"29":2,"31":2}}],["14203",{"2":{"76":1}}],["140817",{"2":{"76":1}}],["140",{"2":{"43":6,"66":6}}],["14",{"2":{"33":1,"76":2,"78":1}}],["147478",{"2":{"28":2}}],["175544",{"2":{"84":1}}],["17520",{"2":{"46":8,"49":1}}],["173013",{"2":{"84":1}}],["173513",{"2":{"30":1}}],["17715541586710937",{"2":{"79":1}}],["177423",{"2":{"26":1}}],["17",{"2":{"46":1,"48":2}}],["170",{"2":{"43":6}}],["176766",{"2":{"83":1}}],["17673",{"2":{"26":1}}],["176024",{"2":{"83":1}}],["17666e",{"2":{"47":1}}],["176197",{"2":{"28":1}}],["17645",{"2":{"26":1}}],["182707",{"2":{"84":1}}],["186811",{"2":{"84":1}}],["18969721875656995",{"2":{"80":1}}],["18",{"2":{"46":1,"76":6}}],["188976",{"2":{"76":1}}],["188",{"2":{"33":1}}],["180397",{"2":{"76":1}}],["18035",{"2":{"26":1}}],["180",{"2":{"43":7}}],["180894",{"2":{"30":1}}],["184309",{"2":{"30":2}}],["183103",{"2":{"62":2,"64":2,"66":6}}],["183637",{"2":{"26":1}}],["183555",{"2":{"17":1}}],["1a",{"2":{"16":1}}],["132989",{"2":{"84":1}}],["132894",{"2":{"28":2}}],["1381833125394196",{"2":{"80":2}}],["138819",{"2":{"62":2,"64":2,"66":6}}],["13525245310587153",{"2":{"79":1}}],["13589",{"2":{"25":2}}],["133475",{"2":{"76":1}}],["133195",{"2":{"30":1}}],["130252",{"2":{"78":1}}],["130",{"2":{"43":6,"66":2}}],["13035",{"2":{"32":1}}],["139067",{"2":{"30":1}}],["137131",{"2":{"29":1,"31":2}}],["137619",{"2":{"28":2}}],["134246",{"2":{"28":2}}],["134208",{"2":{"25":2}}],["134186",{"2":{"26":1}}],["136551",{"2":{"17":1}}],["131798",{"2":{"17":1}}],["13",{"2":{"13":1,"33":1,"74":2,"76":1}}],["16484",{"2":{"83":1}}],["164724",{"2":{"25":3}}],["168617",{"2":{"76":2}}],["168291",{"2":{"28":2}}],["166425",{"2":{"76":1}}],["16545e",{"2":{"47":1}}],["160352",{"2":{"84":1}}],["160403",{"2":{"76":1}}],["160",{"2":{"43":6}}],["161393",{"2":{"30":1}}],["167104",{"2":{"30":2}}],["167745",{"2":{"28":3}}],["162553",{"2":{"30":1}}],["162919",{"2":{"26":1}}],["16×16×3",{"2":{"18":1}}],["16",{"2":{"13":1,"18":2,"46":1,"48":4,"76":3}}],["1u",{"2":{"5":2}}],["1985699519321249",{"2":{"85":1}}],["19857",{"2":{"84":2}}],["194849",{"2":{"83":1,"84":2}}],["194465",{"2":{"28":2}}],["193109",{"2":{"78":1}}],["193179",{"2":{"76":1}}],["195938",{"2":{"84":1}}],["195897",{"2":{"76":1}}],["195774",{"2":{"30":1}}],["197423",{"2":{"76":1}}],["196478",{"2":{"75":1}}],["191934",{"2":{"83":1,"84":2}}],["19122366809754",{"2":{"79":1}}],["191494",{"2":{"73":9}}],["191×20×30",{"2":{"19":1}}],["191×20×31",{"2":{"19":2}}],["191×20×32",{"2":{"19":1}}],["191×20×28",{"2":{"19":1}}],["190482",{"2":{"83":1}}],["19009332850891253",{"2":{"80":1}}],["190225",{"2":{"43":1}}],["190",{"2":{"43":7}}],["199484",{"2":{"83":1}}],["1999",{"2":{"26":1}}],["19995",{"2":{"25":2}}],["1998",{"2":{"26":1}}],["192183",{"2":{"25":3}}],["19",{"2":{"5":5,"46":1,"47":1,"76":3}}],["1×3",{"2":{"73":2}}],["1×2",{"2":{"5":3}}],["1×12",{"2":{"0":1}}],["153753",{"2":{"84":1}}],["153219",{"2":{"43":1}}],["15945803739833375",{"2":{"85":1}}],["159458",{"2":{"84":2}}],["15905863317294833",{"2":{"79":3}}],["15952e",{"2":{"47":1}}],["156538",{"2":{"73":3}}],["152765",{"2":{"29":1,"31":2}}],["15055904027841316",{"2":{"79":1}}],["150559",{"2":{"78":1}}],["150126",{"2":{"30":1}}],["150155",{"2":{"17":1}}],["150",{"2":{"15":3,"43":6}}],["15",{"2":{"5":3,"13":4,"46":1}}],["11925244363082943",{"2":{"85":1}}],["11996",{"2":{"30":2}}],["114915",{"2":{"84":1}}],["11115487324489237",{"2":{"79":1}}],["111155",{"2":{"78":1}}],["11773734015093373",{"2":{"79":1}}],["117737",{"2":{"78":1}}],["11787",{"2":{"76":1}}],["11×17520",{"2":{"48":1}}],["11311",{"2":{"78":1}}],["113",{"2":{"13":1}}],["1151003460971078e",{"2":{"80":1}}],["115",{"2":{"13":2}}],["118632",{"2":{"25":2}}],["118",{"2":{"13":2}}],["110425",{"2":{"84":1}}],["110998",{"2":{"30":1}}],["110",{"2":{"13":2,"43":7}}],["112054",{"2":{"49":2}}],["112836",{"2":{"28":1}}],["112",{"2":{"13":1}}],["11",{"2":{"0":1,"4":1,"13":2,"17":2,"19":6,"25":8,"43":1,"47":6,"74":1,"76":3}}],["12452",{"2":{"75":1}}],["1227",{"2":{"47":1}}],["12764",{"2":{"84":1}}],["12713970284423626",{"2":{"79":1,"81":2}}],["12714",{"2":{"78":1}}],["127489",{"2":{"28":1}}],["12731",{"2":{"25":2}}],["12×100×25",{"2":{"25":2}}],["12×2",{"2":{"19":1}}],["128827",{"2":{"83":1}}],["128932",{"2":{"43":1}}],["128",{"2":{"13":1,"33":1}}],["125477",{"2":{"84":1}}],["125287",{"2":{"17":1}}],["125",{"2":{"13":2}}],["12668",{"2":{"75":1}}],["126",{"2":{"13":2}}],["121746",{"2":{"84":1}}],["121186",{"2":{"28":1}}],["121",{"2":{"13":2}}],["1208",{"2":{"47":1}}],["120",{"2":{"13":2,"43":6,"66":2}}],["123",{"2":{"13":2,"15":1}}],["12",{"2":{"0":9,"4":1,"15":3,"16":1,"19":10,"20":1,"25":21,"46":28,"47":15,"48":8,"49":3,"74":7,"76":5}}],["1",{"2":{"0":13,"1":8,"3":14,"4":26,"5":12,"13":14,"15":32,"16":3,"17":21,"18":241,"19":19,"20":16,"21":5,"23":2,"25":60,"26":52,"28":101,"29":1,"30":4,"31":1,"32":6,"33":12,"34":10,"43":44,"44":28,"46":73,"47":48,"48":91,"49":30,"62":9,"64":12,"65":2,"66":18,"67":1,"73":98,"74":7,"76":51,"77":7,"78":24,"79":1,"80":80,"81":1,"83":14,"84":42,"85":10}}],["105273",{"2":{"49":2}}],["10×10",{"2":{"83":1,"84":27}}],["10×10×26",{"2":{"83":3}}],["10×1",{"2":{"80":30}}],["10×11",{"2":{"43":1}}],["10×6",{"2":{"77":3,"78":18,"80":12}}],["10×5",{"2":{"30":1}}],["10×7×5",{"2":{"30":1}}],["104763",{"2":{"83":1}}],["104261",{"2":{"78":1}}],["10454",{"2":{"76":1}}],["10447",{"2":{"25":2}}],["104",{"2":{"13":1}}],["10748",{"2":{"47":1}}],["107475",{"2":{"30":1}}],["1076",{"2":{"26":1}}],["107",{"2":{"13":1}}],["106224",{"2":{"28":1}}],["106",{"2":{"13":1}}],["101231",{"2":{"73":5}}],["101×34",{"2":{"49":2}}],["101×384",{"2":{"48":2}}],["101×8030",{"2":{"48":1}}],["101×8760",{"2":{"48":1}}],["101×2856",{"2":{"48":1}}],["101×2928",{"2":{"48":3}}],["101×240",{"2":{"48":1}}],["101×0",{"2":{"48":1}}],["101×4416",{"2":{"48":5}}],["101×4320",{"2":{"48":2}}],["101×4392",{"2":{"48":2}}],["101×4368",{"2":{"48":3}}],["101×4344",{"2":{"48":2}}],["101×1",{"2":{"49":5}}],["101×1464",{"2":{"47":1}}],["101×1440",{"2":{"47":1}}],["101×1488",{"2":{"47":2}}],["101×1368",{"2":{"47":1}}],["101×17520",{"2":{"47":1}}],["101",{"2":{"13":2}}],["108592",{"2":{"25":3}}],["108",{"2":{"13":4}}],["102405",{"2":{"13":1}}],["10u",{"2":{"5":1}}],["100×28",{"2":{"84":1}}],["100×25×12",{"2":{"25":3}}],["1000×2000",{"2":{"26":1}}],["1000",{"2":{"26":3,"33":2}}],["10000",{"2":{"23":1,"33":2}}],["100u",{"2":{"5":2}}],["100",{"2":{"0":1,"3":1,"4":3,"15":10,"20":8,"25":13,"43":26,"44":14,"49":1,"68":1,"70":1,"74":2,"84":1}}],["10",{"2":{"0":7,"1":9,"3":6,"4":5,"5":19,"13":6,"15":15,"16":5,"17":4,"19":2,"20":34,"25":8,"28":10,"30":1,"42":9,"43":47,"44":28,"47":2,"64":2,"66":10,"67":1,"68":2,"70":2,"74":7,"75":5,"76":14,"77":7,"78":21,"79":1,"80":61,"83":10,"84":34,"85":10}}],["271591",{"2":{"84":1}}],["27181",{"2":{"25":3}}],["270915",{"2":{"84":1}}],["27",{"2":{"80":3}}],["276742",{"2":{"76":1}}],["27206",{"2":{"76":1}}],["278077",{"2":{"78":1}}],["27802",{"2":{"25":2}}],["27863",{"2":{"28":1}}],["227082",{"2":{"84":1}}],["227865",{"2":{"76":1}}],["226699",{"2":{"76":1}}],["229792",{"2":{"76":1}}],["229418",{"2":{"75":1}}],["228415",{"2":{"84":1}}],["228081",{"2":{"76":1}}],["228248",{"2":{"75":1}}],["228964",{"2":{"28":3}}],["225583",{"2":{"32":1}}],["225865",{"2":{"30":1}}],["221163",{"2":{"30":1}}],["222482",{"2":{"28":2}}],["224375",{"2":{"26":1}}],["22",{"2":{"17":2,"46":1,"47":2,"84":1}}],["2a",{"2":{"16":1}}],["243195",{"2":{"76":1}}],["243803",{"2":{"43":1}}],["248873",{"2":{"76":1}}],["24524306337289326",{"2":{"85":1}}],["245671",{"2":{"83":1}}],["245638",{"2":{"76":1}}],["245",{"2":{"73":2}}],["24575",{"2":{"26":1}}],["2402",{"2":{"47":1}}],["2415",{"2":{"47":1}}],["2412",{"2":{"47":1}}],["241056",{"2":{"30":1}}],["24625",{"2":{"76":1}}],["246886",{"2":{"75":1}}],["2463",{"2":{"47":1}}],["246162",{"2":{"30":1}}],["246796",{"2":{"25":3}}],["247586",{"2":{"78":1}}],["247976",{"2":{"76":1}}],["247032",{"2":{"47":1,"49":2}}],["247198",{"2":{"28":1}}],["24737",{"2":{"28":2}}],["247683",{"2":{"13":1}}],["24",{"2":{"13":1,"19":1,"25":3,"46":1,"47":2,"48":2}}],["294893",{"2":{"84":1}}],["294486",{"2":{"83":1}}],["296092",{"2":{"84":1}}],["296639",{"2":{"30":1}}],["291555",{"2":{"83":1}}],["291577",{"2":{"32":1}}],["29205",{"2":{"76":1}}],["293126",{"2":{"43":1}}],["290734",{"2":{"30":2}}],["299799",{"2":{"28":1}}],["295319",{"2":{"28":3}}],["295548",{"2":{"25":5}}],["298179",{"2":{"28":3}}],["298383",{"2":{"26":1}}],["297023",{"2":{"17":1}}],["29",{"2":{"13":1,"47":2,"76":2,"80":2}}],["28346307460586856",{"2":{"80":1}}],["2868262581079416",{"2":{"79":1}}],["286",{"2":{"76":1}}],["28035",{"2":{"62":2,"64":2,"66":6}}],["2855663183499576",{"2":{"79":1}}],["2858",{"2":{"32":1}}],["285965",{"2":{"26":1}}],["28438",{"2":{"32":1}}],["284399",{"2":{"29":1,"31":2}}],["28405",{"2":{"26":1}}],["28708",{"2":{"25":3}}],["28",{"2":{"13":1,"47":1,"76":2}}],["2601",{"2":{"85":1}}],["2600×5",{"2":{"84":1}}],["2600×4",{"2":{"84":2}}],["2600",{"2":{"84":3}}],["26069",{"2":{"28":3}}],["266342",{"2":{"83":1}}],["266013",{"2":{"76":1}}],["26×11",{"2":{"76":1}}],["263531",{"2":{"76":1}}],["269905",{"2":{"78":1}}],["269685",{"2":{"30":1}}],["26917",{"2":{"26":1}}],["268319",{"2":{"25":3}}],["26",{"2":{"13":2}}],["216905",{"2":{"76":1}}],["216524",{"2":{"13":1}}],["21316",{"2":{"62":2,"64":2,"66":6}}],["213826",{"2":{"30":1}}],["214909",{"2":{"47":1,"49":1}}],["215458",{"2":{"30":1}}],["215049",{"2":{"26":1}}],["219583",{"2":{"29":1,"31":2}}],["21149",{"2":{"28":1}}],["2115",{"2":{"25":2}}],["21714",{"2":{"25":3}}],["218579",{"2":{"17":1}}],["21",{"2":{"5":4,"13":1,"17":2,"46":1,"47":1,"74":1}}],["256817",{"2":{"84":1}}],["2599",{"2":{"84":3}}],["2598",{"2":{"84":3}}],["2597",{"2":{"84":3}}],["2596",{"2":{"84":3}}],["2595",{"2":{"84":3}}],["259597",{"2":{"76":1}}],["2594",{"2":{"84":3}}],["2571287355813575",{"2":{"79":1,"81":2}}],["257129",{"2":{"78":1}}],["257822",{"2":{"29":1,"31":2}}],["2585",{"2":{"84":3}}],["258764",{"2":{"76":1}}],["25825",{"2":{"48":4}}],["255579",{"2":{"76":1}}],["255916",{"2":{"30":1}}],["253984",{"2":{"28":1}}],["253849",{"2":{"15":2,"17":1}}],["25243",{"2":{"28":1}}],["2504949184379115",{"2":{"79":2}}],["250913",{"2":{"28":1}}],["250752",{"2":{"25":5}}],["25",{"2":{"5":2,"13":1,"25":10,"48":2,"73":2}}],["236866",{"2":{"84":1}}],["23502",{"2":{"76":1}}],["23546",{"2":{"25":3}}],["233997",{"2":{"84":1}}],["233685",{"2":{"76":1}}],["233778",{"2":{"43":1}}],["231283",{"2":{"49":2}}],["2379",{"2":{"47":1}}],["23788",{"2":{"26":1}}],["230047",{"2":{"30":1}}],["239878",{"2":{"28":1}}],["234458",{"2":{"30":1}}],["2344",{"2":{"25":3}}],["23",{"2":{"5":1,"13":1,"25":3,"46":2,"47":2}}],["20636222545147498",{"2":{"85":1}}],["206362",{"2":{"84":2}}],["206406",{"2":{"30":1}}],["203",{"2":{"76":2}}],["203703",{"2":{"25":2}}],["201129",{"2":{"75":1}}],["201",{"2":{"73":1}}],["201734",{"2":{"25":3}}],["20758428874582302",{"2":{"85":1}}],["207584",{"2":{"84":2}}],["207735",{"2":{"76":1}}],["20779",{"2":{"26":1}}],["207882",{"2":{"62":2,"64":2,"66":6}}],["208365",{"2":{"30":1}}],["208384",{"2":{"28":1}}],["205929",{"2":{"28":1}}],["204879",{"2":{"84":1}}],["204084",{"2":{"78":1}}],["20412",{"2":{"28":1}}],["204559",{"2":{"28":1}}],["204551",{"2":{"25":5}}],["202035",{"2":{"49":2}}],["202743",{"2":{"28":2}}],["2026",{"2":{"25":2}}],["2021",{"2":{"0":25}}],["2005",{"2":{"74":1}}],["20051",{"2":{"29":1,"31":2}}],["2003",{"2":{"19":1}}],["2000",{"2":{"19":1,"25":72,"26":3,"46":32,"47":21,"49":16,"74":18}}],["2001",{"2":{"15":4,"46":28,"47":17,"49":3}}],["200",{"2":{"5":1,"15":9,"43":26,"44":14}}],["20",{"2":{"4":4,"5":18,"15":3,"19":2,"20":12,"33":1,"46":1,"66":2,"75":1,"76":8,"79":1}}],["2×3",{"2":{"73":3}}],["2×3×2",{"2":{"1":1,"15":1}}],["2×2",{"2":{"17":2,"73":1}}],["2×10×3",{"2":{"13":2}}],["2×4",{"2":{"5":1,"15":4}}],["2×4×2",{"2":{"3":1}}],["2",{"2":{"0":10,"1":4,"3":3,"4":3,"5":14,"8":3,"13":6,"15":16,"16":1,"17":10,"19":9,"20":8,"21":4,"23":2,"25":13,"26":5,"28":12,"29":1,"30":8,"31":2,"32":5,"33":8,"34":2,"43":8,"46":2,"47":17,"48":24,"49":6,"61":2,"62":4,"64":6,"65":3,"66":11,"73":62,"74":2,"75":1,"76":21,"78":2,"79":2,"80":5,"83":2,"84":8,"85":2}}],["==",{"2":{"20":1,"30":1,"49":1}}],["=>",{"2":{"1":10,"2":10,"3":15,"4":22,"11":6,"15":29,"19":4,"20":29,"22":2,"47":7,"48":18,"49":2,"62":1,"64":6,"66":7,"73":1,"84":1}}],["=",{"2":{"0":15,"1":4,"3":4,"4":10,"5":11,"13":7,"15":7,"16":9,"17":4,"18":1,"19":7,"20":13,"21":2,"23":1,"25":5,"26":3,"28":3,"29":1,"30":2,"32":1,"33":1,"43":7,"46":3,"47":2,"48":1,"49":2,"61":3,"62":1,"64":3,"65":8,"68":1,"70":1,"73":2,"74":7,"75":1,"76":3,"77":2,"78":4,"79":84,"80":37,"81":8,"83":4}}],["few",{"2":{"64":2}}],["feb",{"2":{"48":6,"74":1}}],["fact",{"2":{"77":1}}],["facing",{"2":{"35":1}}],["facilitate",{"2":{"11":2,"74":1}}],["fails",{"2":{"25":1}}],["fail",{"2":{"24":1}}],["favours",{"2":{"68":1}}],["favour",{"2":{"20":1}}],["fale",{"2":{"44":1}}],["fallback",{"2":{"11":1}}],["falls",{"2":{"5":2,"73":1}}],["fall",{"2":{"5":2}}],["falses",{"2":{"61":1}}],["false",{"2":{"1":1,"3":5,"11":1,"15":1,"19":2,"20":1,"24":1,"44":27}}],["far",{"2":{"4":1}}],["fast",{"2":{"4":1,"74":1,"81":1}}],["fri",{"2":{"74":2}}],["friendly",{"2":{"27":1}}],["frequency",{"2":{"33":2}}],["freely",{"2":{"17":1}}],["freeunits",{"2":{"5":1}}],["free",{"2":{"3":1,"30":1}}],["fraction",{"2":{"19":1}}],["from",{"2":{"0":3,"1":1,"2":1,"3":3,"4":10,"5":3,"8":1,"15":3,"16":3,"17":1,"18":1,"19":6,"20":1,"21":5,"23":13,"25":1,"30":1,"34":1,"36":1,"37":1,"38":1,"41":1,"42":10,"43":7,"51":1,"64":1,"73":1,"74":2,"75":1,"76":2,"81":1,"84":1}}],["further",{"2":{"40":1,"48":1}}],["future",{"2":{"4":1,"5":1,"20":1,"23":1,"72":1}}],["full",{"2":{"3":1,"4":3}}],["functionality",{"2":{"52":1}}],["functional",{"2":{"27":1}}],["functions",{"0":{"46":1,"80":1},"2":{"15":1,"19":2,"27":1,"32":1,"46":2,"64":1,"67":1,"68":1,"80":2}}],["function",{"2":{"3":1,"4":2,"5":2,"19":12,"20":2,"40":1,"45":2,"46":2,"47":2,"48":4,"49":1,"73":1,"74":1}}],["foo",{"2":{"64":3}}],["follow",{"2":{"46":1,"67":1}}],["following",{"2":{"12":1}}],["four",{"2":{"19":2}}],["found",{"2":{"3":1,"7":1,"20":3,"31":2,"78":1}}],["forms",{"2":{"27":1}}],["formats",{"2":{"10":1}}],["format",{"0":{"41":1},"2":{"2":2,"8":1,"11":1,"36":1,"41":2}}],["forward",{"2":{"4":1,"7":1,"15":2}}],["forwardordered",{"2":{"0":6,"3":1,"4":6,"5":8,"7":3,"13":6,"15":8,"17":6,"19":4,"20":10,"21":1,"25":18,"26":2,"43":15,"44":14,"47":9,"48":7,"49":5,"62":1,"64":4,"66":9,"73":28,"74":3,"75":6,"76":8,"77":2,"78":15,"79":1,"80":41,"83":6,"84":2}}],["for",{"2":{"0":12,"1":3,"2":2,"3":7,"4":40,"5":19,"7":2,"8":3,"10":1,"11":4,"15":17,"16":10,"17":5,"18":3,"19":12,"20":8,"21":4,"22":3,"23":5,"24":1,"25":1,"27":1,"28":2,"29":1,"30":1,"34":1,"39":1,"40":5,"42":6,"43":3,"45":1,"48":4,"51":3,"53":1,"54":1,"56":1,"57":2,"59":1,"61":1,"68":1,"72":1,"73":1,"74":1,"75":6,"77":2,"78":1,"79":2,"82":1,"84":3}}],["flexible",{"2":{"40":1}}],["float32",{"2":{"26":4}}],["float64",{"2":{"0":3,"1":1,"3":1,"4":1,"5":1,"13":1,"15":9,"17":7,"18":1,"19":3,"20":13,"21":2,"25":7,"26":2,"28":12,"29":2,"30":4,"31":2,"32":2,"33":1,"43":18,"44":14,"47":9,"48":18,"49":5,"62":4,"64":4,"66":11,"73":30,"74":1,"75":1,"76":12,"77":6,"78":39,"79":9,"80":141,"83":3,"84":36}}],["flags",{"2":{"3":1}}],["final",{"2":{"48":1}}],["find",{"2":{"74":1}}],["findfirst",{"2":{"7":1}}],["finds",{"2":{"7":1}}],["fix",{"2":{"20":1}}],["fixed",{"2":{"8":1}}],["field",{"2":{"11":1,"15":1,"20":5,"40":1,"66":1}}],["fields",{"2":{"2":1,"3":1,"4":1,"6":1,"20":5,"23":1,"27":2,"40":3,"41":1}}],["firstindex",{"2":{"32":1}}],["first",{"2":{"3":3,"12":1,"13":1,"16":8,"21":1,"31":1,"43":2,"46":1,"48":1,"73":2}}],["filter",{"2":{"43":1,"44":1,"73":1}}],["filters",{"2":{"5":1}}],["fill",{"2":{"15":4,"20":2,"28":4,"41":1,"74":1}}],["filled",{"2":{"2":1,"10":1}}],["file",{"2":{"0":1,"11":2,"51":1}}],["f",{"2":{"1":5,"3":10,"4":2,"5":1,"13":1,"15":5,"17":3,"19":11,"20":11,"70":1,"73":1,"84":1}}],["gc",{"2":{"33":6}}],["goals",{"0":{"27":1},"2":{"27":1}}],["got",{"2":{"25":1}}],["good",{"2":{"16":1}}],["globally",{"2":{"24":1}}],["global",{"0":{"21":1},"1":{"22":1,"23":1},"2":{"21":2}}],["gpus",{"0":{"26":1},"1":{"27":1},"2":{"22":1,"26":1,"57":1}}],["gpu",{"0":{"27":1},"2":{"20":2,"26":4,"27":7,"61":1}}],["gribdatasets",{"2":{"35":1}}],["grid",{"2":{"4":1}}],["gridded",{"2":{"4":1}}],["groupmeans",{"2":{"19":2}}],["grouped",{"2":{"19":1,"49":1}}],["groups",{"2":{"19":12,"47":2,"48":4}}],["groupings",{"2":{"46":1}}],["groupingfunction",{"2":{"19":2}}],["grouping",{"0":{"46":1,"47":1},"2":{"19":9,"45":4,"48":2,"49":1}}],["groupby",{"2":{"19":13,"45":1,"47":13,"48":21,"49":4}}],["group",{"0":{"19":1,"45":1},"1":{"46":1,"47":1,"48":1,"49":1},"2":{"19":9,"46":1,"47":3,"48":13,"49":2}}],["gis",{"2":{"51":2}}],["giving",{"2":{"5":1,"82":1}}],["given",{"2":{"20":1,"82":1}}],["give",{"2":{"3":1,"4":1,"5":1,"15":1,"28":1,"78":1}}],["gives",{"2":{"0":1,"16":2,"66":1}}],["github",{"2":{"4":1,"66":1}}],["guide",{"2":{"45":1}}],["guarantee",{"2":{"11":1}}],["guaranteed",{"2":{"3":1,"15":1}}],["guessed",{"2":{"2":1,"8":2}}],["guess",{"2":{"0":1,"46":1}}],["gt",{"2":{"1":2,"3":3,"5":1,"15":2,"19":1,"20":2}}],["g",{"2":{"0":1,"3":1,"4":2,"5":1,"13":1,"15":1,"19":1,"36":1,"61":1,"65":1,"70":1,"84":1}}],["geotiff",{"2":{"10":1}}],["geospatial",{"2":{"4":3,"51":1}}],["gets",{"2":{"73":2}}],["getting",{"2":{"15":1,"48":1}}],["getters",{"0":{"43":1},"1":{"44":1}}],["getter",{"2":{"4":1}}],["get",{"2":{"1":3,"2":1,"3":1,"11":3,"15":4,"18":1,"23":1,"29":1,"43":7,"73":2,"74":1,"79":1}}],["getindex",{"2":{"0":1,"3":2,"16":3,"17":1,"23":2,"31":1,"42":2}}],["generator",{"2":{"21":4}}],["generators",{"0":{"17":1},"2":{"35":1}}],["generates",{"2":{"19":7}}],["generate",{"2":{"3":1,"19":2,"23":1}}],["generated",{"2":{"3":1,"18":1,"40":1}}],["general",{"2":{"11":1}}],["generally",{"2":{"0":1}}],["generic",{"2":{"0":1,"4":1,"65":1}}],["p",{"2":{"84":1}}],["pythons",{"2":{"35":1}}],["permafrost",{"2":{"56":1}}],["permutation",{"2":{"80":1}}],["permuting",{"2":{"20":2}}],["permute",{"2":{"20":1,"24":1,"68":1}}],["permuteddimsarray",{"2":{"80":2}}],["permutedims",{"2":{"32":1,"80":3}}],["permuted",{"2":{"20":1}}],["periods",{"2":{"19":3}}],["perform",{"2":{"32":1}}],["performed",{"2":{"4":1}}],["performance",{"0":{"33":1,"81":1},"2":{"4":3,"16":1,"51":1}}],["pkg",{"2":{"12":2}}],["pkg>",{"2":{"12":2}}],["put",{"2":{"11":1}}],["pixels",{"2":{"5":1}}],["powerful",{"2":{"55":1,"61":1}}],["polygon",{"2":{"51":1}}],["positions",{"0":{"10":1}}],["position",{"2":{"4":1,"9":1,"10":6}}],["possible",{"2":{"4":2,"5":1,"7":1,"20":1,"26":1,"32":1,"66":1,"67":1}}],["point",{"2":{"0":1,"4":2,"5":1,"9":1,"17":1,"74":1}}],["points",{"2":{"0":6,"4":7,"5":12,"8":2,"9":4,"13":4,"15":5,"17":5,"19":4,"20":9,"21":1,"25":18,"26":2,"43":32,"44":28,"47":9,"48":4,"49":5,"62":2,"64":2,"66":4,"73":9,"74":1,"75":4,"76":10,"77":2,"78":15,"79":1,"80":49,"83":4,"84":2}}],["planned",{"2":{"72":1}}],["plasma",{"2":{"71":2}}],["places",{"2":{"68":2}}],["place",{"2":{"27":1,"60":1}}],["placed",{"2":{"20":1}}],["please",{"2":{"4":1}}],["plus",{"2":{"4":1}}],["plots",{"0":{"67":1,"69":1},"1":{"70":1,"71":1,"72":1},"2":{"0":1,"3":1,"11":1,"15":2,"67":2,"68":1,"72":1}}],["plotted",{"2":{"0":1,"4":1,"7":1,"9":1,"10":1}}],["plotting",{"2":{"0":1}}],["plot",{"2":{"0":3,"2":2,"67":2,"68":2}}],["printing",{"2":{"74":1}}],["principles",{"2":{"46":1}}],["prior",{"2":{"20":1}}],["primarily",{"2":{"3":1}}],["primitives",{"2":{"31":2}}],["primitive",{"0":{"3":1}}],["process",{"2":{"57":1,"65":1}}],["providing",{"2":{"51":1}}],["provides",{"2":{"43":1,"45":1,"58":1,"82":1}}],["provide",{"2":{"4":2}}],["provided",{"2":{"4":5,"5":3,"8":1,"21":2,"74":1}}],["projected",{"2":{"36":1,"51":1}}],["prod",{"2":{"32":1,"80":2}}],["probably",{"2":{"22":1,"46":1}}],["problems",{"2":{"4":1}}],["property",{"2":{"22":1}}],["properties",{"2":{"2":2,"20":1,"25":1,"41":1,"74":1,"75":2}}],["programmatically",{"2":{"15":1}}],["predicates",{"0":{"44":1},"2":{"44":1}}],["predefined",{"2":{"34":1}}],["prefereble",{"2":{"19":1}}],["preserved",{"2":{"20":1}}],["present",{"2":{"5":1,"17":1,"35":1}}],["pressed",{"2":{"12":1}}],["previously",{"2":{"20":1}}],["previous",{"2":{"3":1,"5":1}}],["precedence",{"2":{"0":1}}],["paaarnet",{"2":{"23":3,"42":3}}],["padding",{"2":{"48":1}}],["pad",{"2":{"19":5}}],["past",{"2":{"15":1}}],["pass",{"2":{"11":1,"16":1,"20":3,"23":2,"41":1,"48":1,"66":1}}],["passing",{"2":{"3":2,"4":1,"19":1,"20":1,"25":1}}],["passed",{"2":{"0":1,"2":1,"3":5,"5":3,"17":1,"20":6,"21":1,"23":1,"27":1,"40":1,"73":2}}],["partly",{"2":{"76":1}}],["part",{"2":{"23":1,"66":1}}],["parentheses",{"2":{"20":1}}],["parent",{"2":{"15":1,"20":5,"21":4,"23":13,"24":1,"26":2,"27":1,"33":2,"41":1,"42":9,"61":5,"81":1}}],["parameters",{"2":{"3":1}}],["parameter",{"2":{"0":1,"11":1}}],["pair",{"2":{"11":1,"19":1,"20":4}}],["pairs",{"2":{"11":1,"19":1,"20":8}}],["packages",{"2":{"35":2,"36":1,"46":1,"67":1,"82":1}}],["package",{"2":{"4":1,"12":1,"13":1,"19":1,"52":1,"54":1,"55":1}}],["d=rand",{"2":{"77":1}}],["dynamicgrids",{"0":{"57":1},"2":{"27":1,"57":2}}],["dropdims",{"2":{"32":1,"80":1}}],["dropped",{"2":{"23":2,"42":2}}],["drop=true",{"2":{"21":3}}],["dd",{"2":{"5":3,"20":3,"34":1,"39":2,"46":1,"51":1,"53":1,"65":2,"66":1,"68":1,"82":1}}],["da4",{"2":{"33":1}}],["da5",{"2":{"32":2}}],["das",{"2":{"23":1}}],["daily",{"2":{"19":1}}],["dayofyear",{"2":{"46":2,"48":3}}],["dayofweek",{"2":{"46":1}}],["day",{"2":{"19":3,"46":2,"48":4}}],["days",{"2":{"4":1,"48":1}}],["da3",{"2":{"16":2}}],["da2",{"2":{"16":2,"20":7,"30":5}}],["da1",{"2":{"16":2,"20":7,"29":2,"30":1,"31":2}}],["da",{"2":{"4":2,"20":10,"28":2,"30":2}}],["dataframe",{"0":{"84":1},"2":{"84":8}}],["dataframes",{"0":{"82":1},"1":{"83":1,"84":1,"85":1},"2":{"5":1,"82":1,"83":1}}],["data2",{"2":{"83":1,"84":2,"85":1}}],["data2=rand",{"2":{"83":1}}],["data1",{"2":{"83":2,"84":2,"85":1}}],["dataset",{"2":{"36":2,"54":1}}],["datasets",{"0":{"16":1},"2":{"4":1,"52":1}}],["dataapi",{"2":{"19":1}}],["data=autovalues",{"2":{"4":1}}],["data",{"2":{"0":2,"1":1,"2":1,"4":17,"11":1,"13":2,"15":5,"16":6,"18":1,"19":2,"20":6,"21":2,"23":3,"25":8,"26":2,"27":2,"34":1,"35":1,"40":2,"48":1,"51":2,"52":1,"53":1,"56":1,"57":1,"59":1,"61":1,"64":3,"82":1,"83":2,"84":2,"85":1}}],["date",{"2":{"4":2,"74":1}}],["datetime",{"2":{"0":13,"5":1,"15":4,"19":2,"25":28,"46":5,"47":3,"49":11,"74":10,"75":1}}],["dates",{"2":{"0":15,"4":2,"15":1,"19":1,"25":36,"46":4,"47":4,"49":12,"74":9,"83":1}}],["d",{"0":{"24":1},"1":{"25":1},"2":{"3":2,"4":2,"13":1,"17":1,"20":12,"24":2,"25":6,"64":2,"70":1,"75":3,"77":1,"78":6,"79":23,"80":28,"81":2,"84":2}}],["dsl",{"2":{"55":1}}],["dst",{"2":{"21":6}}],["ds",{"2":{"3":1,"4":2,"20":2,"21":2}}],["docs",{"2":{"42":2}}],["documented",{"2":{"21":1}}],["dot",{"2":{"24":1}}],["dotview",{"2":{"3":1}}],["doing",{"2":{"17":1,"21":1,"48":1,"64":1,"76":1}}],["do",{"2":{"4":2,"11":1,"12":1,"19":1,"20":3,"32":1,"48":1,"62":1,"66":2}}],["doesn",{"2":{"17":1,"30":1,"31":1,"65":1}}],["does",{"2":{"4":1,"20":1,"24":1,"40":1,"46":1,"48":1,"78":1,"80":1,"82":1}}],["done",{"2":{"15":1,"20":1,"82":1}}],["don",{"2":{"2":1,"4":1,"21":4,"30":1,"64":1,"66":1}}],["direct",{"2":{"35":1}}],["directly",{"2":{"17":1,"33":1,"35":1,"48":1,"81":1,"85":1}}],["difficult",{"2":{"27":1}}],["different",{"0":{"71":1},"2":{"3":1,"5":3,"10":1,"11":1,"20":1,"43":1}}],["divide",{"2":{"19":1}}],["di",{"2":{"17":2}}],["dicts",{"2":{"27":1,"60":1}}],["dict",{"2":{"4":4,"11":3,"15":1,"19":3,"20":1,"28":5,"47":7,"48":11,"49":2,"64":2}}],["dictates",{"2":{"2":1}}],["discrete",{"2":{"48":1}}],["discarded",{"2":{"5":1,"15":1}}],["distinguishing",{"2":{"43":1}}],["distance",{"2":{"4":2,"5":1}}],["diskarray",{"2":{"52":1}}],["diskarrays",{"0":{"35":1},"2":{"19":1,"35":2}}],["disk",{"2":{"35":1}}],["dispatch",{"2":{"0":1,"11":1}}],["dimmatrix",{"2":{"68":1}}],["dimvector",{"2":{"21":1}}],["dimgroupbyarray",{"2":{"19":6,"47":1,"48":8,"49":1}}],["dimname",{"2":{"19":1}}],["dimnum",{"2":{"1":4,"15":4,"39":1}}],["dimcolumn",{"2":{"18":1}}],["dimtype",{"2":{"19":1}}],["dimtable",{"2":{"18":4,"84":4}}],["dimtuple",{"2":{"16":1,"43":4}}],["dimpoints",{"2":{"17":4}}],["dimindices",{"2":{"17":9,"30":2,"38":1,"76":1}}],["dimz",{"2":{"5":2,"16":4}}],["dimselector",{"0":{"76":1}}],["dimselectors",{"2":{"17":7,"76":3}}],["dimsmatch",{"2":{"3":2}}],["dimstoreduce",{"2":{"3":1}}],["dimstacks",{"0":{"77":1},"1":{"78":1,"79":1,"80":1,"81":1},"2":{"24":1}}],["dimstackinterface",{"2":{"23":2,"42":6}}],["dimstack",{"2":{"2":1,"16":19,"20":1,"21":2,"24":1,"42":7,"43":1,"61":2,"77":3,"78":11,"79":2,"80":25,"82":1,"83":2,"84":2,"85":2}}],["dims2indices",{"2":{"2":1}}],["dims=",{"2":{"20":3,"21":1,"25":4}}],["dims=ti",{"2":{"0":1,"16":2,"19":1,"21":1,"32":1}}],["dims=z",{"2":{"0":1}}],["dims=y",{"2":{"0":1,"20":1,"80":11}}],["dims=x",{"2":{"0":1}}],["dims",{"0":{"24":1,"32":1,"37":1,"39":1},"1":{"25":1,"38":1,"39":1},"2":{"0":4,"1":11,"2":8,"3":13,"4":18,"5":6,"11":2,"13":3,"15":42,"16":3,"17":14,"18":1,"19":9,"20":33,"21":13,"23":26,"24":4,"25":10,"26":1,"28":11,"29":3,"30":5,"31":4,"32":4,"33":1,"34":1,"36":1,"37":1,"38":1,"39":5,"40":2,"41":2,"42":17,"43":24,"44":29,"47":9,"48":19,"49":6,"61":5,"62":2,"64":4,"66":6,"73":15,"74":1,"75":1,"76":5,"77":5,"78":30,"79":5,"80":114,"83":4,"84":27}}],["dimarrays",{"0":{"28":1},"1":{"29":1,"30":1,"31":1,"32":1,"33":1},"2":{"28":1}}],["dimarrayinterface",{"2":{"23":2,"42":6}}],["dimarray",{"0":{"29":1},"2":{"0":4,"1":5,"2":1,"3":2,"4":6,"5":11,"13":7,"15":37,"16":11,"17":6,"18":2,"19":10,"20":10,"21":1,"24":2,"25":11,"26":2,"27":1,"28":17,"29":4,"30":4,"31":2,"32":2,"33":1,"42":4,"43":7,"47":13,"48":39,"49":8,"56":1,"59":1,"61":3,"62":2,"64":2,"66":6,"73":16,"74":4,"75":2,"76":5,"77":1,"78":3,"83":1,"84":1}}],["dim",{"2":{"0":11,"1":2,"2":4,"3":9,"4":12,"11":2,"15":7,"18":3,"20":16,"29":1,"32":1,"34":3,"38":1,"83":1}}],["dimensionmismatch",{"2":{"25":1,"78":1}}],["dimensionality",{"2":{"21":1}}],["dimensional",{"0":{"24":1,"30":1},"1":{"25":1},"2":{"0":1,"3":1,"16":1,"20":1,"23":2,"38":1,"45":1,"79":1}}],["dimensionaldata",{"0":{"36":1},"1":{"37":1,"38":1,"39":1,"40":1,"41":1,"42":1},"2":{"0":22,"1":9,"2":5,"3":20,"4":35,"5":21,"6":1,"7":6,"8":5,"9":3,"10":6,"11":4,"12":3,"13":1,"15":20,"16":3,"17":3,"18":4,"19":10,"20":20,"21":5,"22":3,"23":8,"25":1,"26":2,"27":3,"28":1,"31":6,"34":3,"35":1,"36":1,"37":1,"40":1,"41":2,"42":10,"43":3,"45":1,"46":2,"51":1,"52":1,"60":1,"61":1,"62":1,"64":1,"68":1,"73":2,"74":1,"77":1,"82":1,"83":1}}],["dimension",{"0":{"17":1,"25":1,"29":1,"38":1,"49":1},"2":{"0":21,"1":27,"2":11,"3":32,"4":24,"5":3,"10":2,"11":2,"15":75,"16":3,"17":9,"18":7,"19":2,"20":33,"21":9,"23":4,"24":2,"25":3,"28":2,"30":3,"31":1,"32":3,"34":3,"38":1,"39":5,"40":1,"41":2,"42":2,"43":6,"45":1,"47":1,"49":2,"62":1,"63":1,"64":4,"66":1,"73":2,"74":2,"75":1,"77":1,"79":1,"80":1,"82":2,"84":2}}],["dimensions",{"0":{"0":1,"34":1},"1":{"1":1,"2":1,"3":1},"2":{"0":30,"1":13,"2":7,"3":32,"4":39,"5":11,"6":1,"7":6,"8":5,"9":3,"10":8,"11":5,"15":25,"16":3,"17":5,"18":1,"19":3,"20":24,"21":9,"23":6,"24":2,"25":1,"28":1,"30":4,"31":4,"33":1,"34":7,"37":2,"38":1,"42":4,"43":3,"44":2,"49":2,"63":2,"64":1,"68":1,"73":1,"75":1,"77":1,"78":1,"79":1,"82":2,"83":1,"84":2}}],["during",{"2":{"0":1,"35":1,"57":1}}],["declarative",{"2":{"62":1}}],["dec",{"2":{"48":4,"74":1}}],["december",{"2":{"19":2}}],["demo",{"2":{"46":1}}],["developers",{"2":{"40":1,"52":1}}],["development",{"2":{"35":1,"67":1}}],["devicebuffer",{"2":{"26":1}}],["dest",{"2":{"20":4}}],["descriptive",{"2":{"19":1}}],["designed",{"2":{"35":1,"36":1}}],["design",{"2":{"16":2}}],["deprecated",{"2":{"20":1,"67":1}}],["depreciated",{"2":{"5":1}}],["dependencies",{"2":{"51":1}}],["dependency",{"2":{"35":1}}],["dependent",{"2":{"0":1}}],["dependentdim",{"2":{"0":4}}],["depending",{"2":{"1":1,"15":1}}],["detect",{"2":{"4":2,"15":4,"41":1}}],["detected",{"2":{"4":4,"41":1,"74":2,"75":5}}],["determine",{"2":{"7":1,"74":1}}],["determined",{"2":{"4":1}}],["determines",{"2":{"3":1,"17":1}}],["details",{"2":{"0":1,"23":2,"34":1}}],["definition",{"2":{"23":2,"42":2}}],["defining",{"2":{"4":2}}],["defines",{"2":{"4":1,"8":1,"17":1,"20":1,"23":2,"42":3,"43":1,"55":1}}],["defined",{"2":{"3":1,"4":1,"16":1,"20":3,"34":1,"40":1,"47":1}}],["define",{"2":{"0":1,"3":1,"4":1,"9":1,"19":1,"25":1,"28":1,"43":1,"47":1,"75":1,"76":1,"83":1}}],["default",{"0":{"70":1},"2":{"0":1,"1":3,"3":11,"4":7,"10":1,"15":4,"17":2,"19":5,"22":1,"67":1,"68":1}}],["w",{"2":{"84":1}}],["would",{"2":{"17":2,"24":1,"43":1,"48":1}}],["works",{"2":{"4":1,"20":1,"24":2,"31":2,"48":2,"57":1,"78":2}}],["work",{"2":{"2":1,"4":4,"5":1,"10":2,"11":1,"15":1,"16":1,"19":1,"20":1,"21":1,"24":2,"27":3,"31":3,"34":1,"40":2,"46":1,"52":1,"65":1,"67":1,"68":2,"74":1,"80":1}}],["working",{"2":{"1":1,"16":2}}],["word",{"2":{"0":1}}],["want",{"2":{"12":1,"21":4,"23":2,"43":1,"48":2,"62":1,"66":2}}],["way",{"2":{"4":1,"20":1,"25":1,"40":1,"64":1,"66":1}}],["warning",{"2":{"3":1,"31":2,"64":1}}],["warn",{"2":{"3":1}}],["whose",{"2":{"20":3}}],["whole",{"2":{"5":2}}],["what",{"2":{"20":1,"43":2,"46":1,"48":1,"62":1,"64":1,"66":1}}],["whatever",{"2":{"17":1,"43":1}}],["which",{"2":{"3":1,"4":1,"19":1,"20":4,"21":1,"24":1,"32":1,"43":1,"51":1,"71":1,"73":3,"76":1}}],["whichever",{"2":{"3":1}}],["while",{"2":{"3":1,"11":1,"16":2,"17":1}}],["wherever",{"2":{"21":1,"48":1}}],["where",{"2":{"3":4,"4":9,"5":7,"7":1,"8":2,"9":1,"10":2,"11":1,"16":1,"20":4,"32":1,"43":1,"48":1,"61":1,"64":1,"73":4,"75":1}}],["whether",{"2":{"1":1,"15":1}}],["whenever",{"2":{"27":1}}],["when",{"2":{"0":5,"2":1,"4":6,"5":2,"11":1,"16":2,"17":1,"19":3,"20":1,"21":3,"22":1,"27":1,"30":1,"31":1,"38":1,"41":1,"48":1,"74":1,"75":1,"78":1}}],["write",{"2":{"85":2}}],["written",{"2":{"20":1}}],["writing",{"2":{"3":1,"20":1}}],["wraps",{"2":{"38":1}}],["wrapping",{"2":{"3":1,"4":1,"43":5,"52":1,"74":4}}],["wrapper",{"2":{"4":4,"11":1,"19":1,"20":2,"21":4,"22":2,"34":1,"48":1,"64":1}}],["wrappers",{"2":{"0":2,"4":1,"5":1,"11":2,"22":1,"28":2,"30":1,"61":1}}],["wrapped",{"2":{"3":2,"19":1,"20":1,"34":1,"65":1}}],["wrap",{"2":{"0":2,"19":3,"34":3,"74":1}}],["weds",{"2":{"74":2}}],["were",{"2":{"31":2}}],["well",{"2":{"18":1,"30":1,"73":2}}],["weeks",{"2":{"4":1}}],["week",{"2":{"4":1}}],["we",{"2":{"0":1,"4":3,"5":1,"16":1,"17":2,"19":2,"20":2,"21":8,"24":3,"25":1,"28":2,"29":1,"30":2,"34":1,"42":2,"43":1,"46":1,"47":3,"48":13,"49":2,"52":1,"62":2,"73":3,"74":6,"75":1,"76":4,"78":2,"79":3,"84":2,"85":1}}],["winter",{"2":{"48":1}}],["wish",{"2":{"5":1}}],["wider",{"2":{"41":1}}],["wide",{"2":{"4":1,"51":1,"82":1}}],["widely",{"2":{"1":1}}],["within",{"2":{"5":1,"17":1,"73":2}}],["without",{"2":{"3":1,"4":2,"11":1,"16":1,"20":2,"30":1,"40":1,"61":1,"65":1,"74":1,"79":1}}],["with",{"0":{"24":1,"29":1,"72":1},"1":{"25":1},"2":{"0":3,"1":5,"2":2,"3":10,"4":13,"5":10,"7":1,"8":1,"10":8,"11":1,"12":1,"15":12,"16":8,"17":7,"18":1,"19":7,"20":14,"21":6,"23":3,"24":5,"25":3,"26":1,"27":1,"28":1,"29":1,"30":3,"31":2,"32":1,"33":3,"34":5,"35":1,"38":1,"40":2,"42":2,"43":1,"44":1,"45":3,"47":8,"48":11,"49":3,"52":2,"53":1,"61":2,"63":1,"64":5,"65":1,"67":2,"68":1,"73":10,"74":1,"75":2,"76":3,"78":5,"79":2,"80":1,"81":1,"82":1,"84":1}}],["will",{"2":{"0":7,"1":1,"2":2,"3":7,"4":13,"5":9,"7":2,"8":2,"10":3,"11":2,"15":10,"16":7,"18":1,"19":5,"20":15,"21":1,"30":2,"39":2,"40":2,"43":1,"45":1,"46":2,"64":1,"65":1,"67":1,"68":3,"73":1,"74":2,"80":1,"84":2}}],["btime",{"2":{"81":2}}],["blue",{"2":{"71":1,"72":1}}],["block",{"2":{"23":1}}],["blocks",{"2":{"23":1,"48":2}}],["blockwidth",{"2":{"23":4}}],["b=rand",{"2":{"77":1}}],["b=falses",{"2":{"61":1}}],["b=1",{"2":{"13":1,"29":1}}],["building",{"2":{"35":1}}],["but",{"2":{"0":1,"1":2,"3":9,"4":4,"5":1,"8":1,"11":1,"15":2,"16":3,"17":3,"19":6,"20":1,"23":2,"25":1,"26":1,"30":2,"31":1,"35":2,"36":1,"43":1,"46":1,"48":1,"49":1,"51":1,"55":1,"62":1,"63":1,"64":2,"65":1,"66":1,"68":1,"73":1,"74":2,"75":1,"76":1}}],["bin",{"2":{"48":4}}],["binning",{"0":{"48":1},"2":{"19":2}}],["bins",{"2":{"19":15,"45":1,"48":5}}],["bitmatrix",{"2":{"61":2}}],["bit",{"2":{"13":1}}],["bar",{"2":{"64":3}}],["bayesian",{"2":{"54":1}}],["band",{"2":{"18":2}}],["backend",{"2":{"27":1}}],["back",{"2":{"5":1,"11":1}}],["basic",{"2":{"31":1}}],["basics",{"0":{"13":1}}],["basically",{"2":{"3":1,"19":1,"64":1}}],["base",{"2":{"3":2,"5":1,"15":10,"16":3,"19":1,"20":1,"21":7,"23":4,"24":2,"27":1,"31":1,"42":2,"74":2,"80":1}}],["basetypeof",{"2":{"3":5}}],["basedims",{"2":{"3":2}}],["based",{"2":{"2":1,"23":1,"35":1,"64":1}}],["brackets",{"2":{"64":1}}],["break",{"2":{"48":1}}],["breaking",{"2":{"4":1,"23":1,"65":1}}],["broken",{"2":{"66":1}}],["brought",{"2":{"34":1}}],["brodcasting",{"2":{"21":2,"24":1}}],["broadcasts",{"0":{"24":1},"1":{"25":1},"2":{"21":5,"24":2,"27":1,"80":1}}],["broadcast",{"0":{"24":1},"1":{"25":1},"2":{"19":3,"20":11,"21":4,"24":7,"25":7,"26":1,"35":1,"80":2}}],["broadcasting",{"2":{"3":1,"20":2,"21":5,"24":1,"47":1}}],["bonus",{"2":{"24":1}}],["box",{"2":{"23":1,"67":1}}],["boundaries",{"2":{"5":1}}],["bounds",{"2":{"4":9,"8":6,"43":8,"74":1,"75":2}}],["both",{"2":{"3":1,"4":1,"35":2,"52":1,"63":1,"78":1}}],["bool",{"2":{"1":3,"3":5,"4":2,"5":1,"15":11,"19":1,"21":2,"61":7,"73":2}}],["bytes",{"2":{"33":2,"81":2}}],["by",{"0":{"19":1,"45":1,"49":1},"1":{"46":1,"47":1,"48":1,"49":1},"2":{"0":1,"1":2,"3":13,"4":8,"5":4,"9":1,"15":2,"17":1,"19":8,"20":2,"25":2,"29":1,"33":2,"34":1,"35":1,"40":2,"47":2,"48":2,"49":3,"68":1,"71":1,"73":4}}],["b",{"2":{"0":7,"3":4,"4":2,"5":11,"13":3,"15":9,"16":3,"17":1,"20":4,"29":3,"31":2,"34":2,"49":3,"61":2,"62":2,"64":5,"65":3,"66":3,"67":1,"68":1,"70":2,"71":1,"73":27,"75":3,"76":3,"77":1,"78":4,"79":23,"80":40,"81":2,"84":2}}],["best",{"2":{"66":1}}],["benchmarktools",{"2":{"33":3,"81":1}}],["benchmark",{"2":{"33":3}}],["before",{"2":{"21":9}}],["become",{"2":{"84":1}}],["becomes",{"2":{"18":2}}],["because",{"2":{"19":2,"24":1}}],["behaves",{"2":{"17":2,"36":1}}],["behaviour",{"2":{"4":4,"5":1,"6":1,"16":2,"19":1,"20":1,"41":1,"67":1,"74":1,"77":1}}],["behaviours",{"2":{"4":1,"52":1,"65":1}}],["begin+1",{"2":{"31":1}}],["beginendsteprange",{"2":{"10":2}}],["beginendrange",{"2":{"10":2}}],["begin",{"0":{"31":1},"2":{"10":4,"31":2}}],["better",{"2":{"5":1}}],["between",{"2":{"0":1,"4":5,"5":21,"10":1,"11":1,"15":1,"16":2}}],["been",{"2":{"2":1,"3":1,"16":1,"20":1}}],["be",{"2":{"0":5,"1":5,"2":4,"3":11,"4":33,"5":17,"6":1,"7":2,"8":3,"10":4,"11":3,"12":1,"15":10,"16":4,"17":3,"19":8,"20":16,"21":2,"22":1,"23":3,"24":1,"25":1,"27":4,"30":3,"31":1,"32":1,"34":3,"36":1,"38":1,"40":1,"41":1,"46":1,"48":1,"60":1,"61":2,"62":1,"64":1,"66":1,"73":2,"74":3,"75":2,"78":1,"80":1}}],["ecosystem",{"2":{"82":1}}],["edges",{"2":{"48":1}}],["edge",{"2":{"19":1}}],["equally",{"2":{"19":1}}],["equivalent",{"2":{"16":1,"17":1,"21":2}}],["estimate",{"2":{"33":4}}],["essentially",{"2":{"17":1,"19":1}}],["especially",{"2":{"17":1,"21":1,"68":1}}],["effects",{"2":{"15":2}}],["enforce",{"2":{"77":1}}],["entries",{"2":{"64":2}}],["entry",{"2":{"19":3,"47":7,"48":11,"49":2}}],["engine",{"2":{"57":1}}],["ensure",{"2":{"21":4}}],["enables",{"2":{"35":1}}],["enable",{"2":{"8":1}}],["end",{"0":{"31":1},"2":{"5":4,"9":1,"10":6,"19":3,"20":1,"31":3,"43":1}}],["evaluations",{"2":{"33":2}}],["evaluated",{"2":{"5":1}}],["everything",{"2":{"36":1,"60":1,"64":1}}],["everywhere",{"2":{"34":1}}],["every",{"2":{"4":1,"5":1,"8":1,"20":2}}],["even",{"2":{"4":1,"17":1,"24":2,"31":1,"65":1,"74":1,"80":1}}],["error",{"2":{"3":2,"5":2,"25":1,"30":2,"64":1,"78":1}}],["errors",{"2":{"2":1,"3":1}}],["empty",{"2":{"3":1,"15":2,"23":2,"42":2,"75":1}}],["eltype",{"2":{"21":2,"61":2,"77":4,"78":22,"79":4,"80":88,"83":2,"84":26}}],["else",{"2":{"2":1,"19":1,"60":1,"64":1}}],["element",{"2":{"0":1,"2":1,"13":1,"15":2,"19":2,"25":3,"29":1,"30":2,"31":1,"43":2,"46":8,"47":7,"48":13,"49":1,"73":3,"74":3,"78":1,"79":2,"80":1,"85":1}}],["either",{"2":{"1":1,"2":1,"3":1,"4":2,"11":1,"15":2,"17":1,"19":4,"21":4}}],["early",{"2":{"23":2}}],["easiest",{"2":{"40":1}}],["easier",{"2":{"22":1,"39":1}}],["easily",{"2":{"0":1,"4":1,"36":2,"64":1}}],["eachindex",{"2":{"38":2}}],["eachother",{"2":{"24":1}}],["eachslice",{"2":{"21":4,"25":2,"32":1,"49":1}}],["each",{"2":{"0":1,"3":2,"4":5,"5":2,"8":1,"16":1,"17":2,"18":1,"19":1,"20":1,"25":1,"43":2,"47":1,"67":1,"74":1,"79":1,"81":1,"84":3}}],["except",{"2":{"24":1,"27":1}}],["exception",{"2":{"21":2}}],["exact",{"2":{"4":1,"9":1,"17":2,"19":1}}],["exactly",{"2":{"4":1,"5":1,"48":1,"73":1}}],["examples",{"2":{"0":2,"20":1,"21":1,"36":2}}],["example",{"0":{"25":1,"83":1},"2":{"0":5,"1":4,"3":2,"4":5,"5":7,"15":12,"16":2,"17":2,"18":1,"19":2,"20":5,"21":3,"25":1,"27":1,"40":1,"43":1}}],["extrema",{"2":{"32":1,"80":2}}],["extra",{"2":{"0":1,"75":1}}],["extent",{"2":{"43":9}}],["extents",{"2":{"43":2}}],["extensible",{"2":{"36":1,"40":1}}],["extension",{"2":{"24":1,"55":1}}],["extends",{"2":{"51":1,"53":1}}],["extend",{"2":{"16":1}}],["extended",{"2":{"4":1,"23":2,"36":2}}],["extending",{"0":{"36":1},"1":{"37":1,"38":1,"39":1,"40":1,"41":1,"42":1},"2":{"4":3,"20":1,"37":1}}],["exploratory",{"2":{"54":1}}],["explicit",{"2":{"4":1,"8":1,"42":1}}],["explicitly",{"2":{"4":2,"8":1,"19":1,"20":2,"21":4}}],["expected",{"2":{"21":1}}],["expression",{"2":{"20":1}}],["exported",{"0":{"1":1,"2":1}}],["existing",{"2":{"5":1,"20":1,"23":1,"45":1}}],["exists",{"2":{"3":1,"51":1}}],["exist",{"2":{"2":1,"60":1}}],["e",{"2":{"0":1,"3":1,"4":2,"5":2,"13":1,"15":1,"17":1,"19":1,"36":1,"49":1,"61":1,"65":1,"70":1,"71":1,"75":3,"78":2,"84":1}}],["etc",{"2":{"0":2,"3":1,"16":1,"20":2}}],["l",{"2":{"43":2,"62":2,"64":2,"66":3,"74":9,"84":1}}],["lj",{"2":{"35":1}}],["lick",{"2":{"73":1}}],["line",{"2":{"67":1}}],["linearmap",{"2":{"4":1}}],["list",{"2":{"19":1,"71":1}}],["listed",{"2":{"8":1,"44":1,"64":1}}],["little",{"2":{"5":1,"13":1}}],["lies",{"2":{"16":2}}],["lie",{"2":{"5":1}}],["likely",{"2":{"4":1,"23":2}}],["like",{"0":{"78":1,"79":1},"2":{"0":1,"3":2,"4":5,"5":2,"15":1,"16":1,"17":4,"19":2,"20":3,"22":1,"30":3,"32":1,"34":1,"38":1,"41":1,"43":2,"48":3,"51":1,"62":1,"63":1,"64":1,"66":1,"73":6,"75":1,"76":2,"77":1,"78":1,"80":1}}],["legend",{"2":{"67":1}}],["less",{"2":{"48":1}}],["letting",{"2":{"34":1}}],["let",{"2":{"33":1}}],["lets",{"2":{"11":1,"22":1,"41":1,"46":2,"47":1,"48":1}}],["left",{"2":{"13":3,"23":1}}],["leans",{"2":{"26":1}}],["leave",{"2":{"15":1}}],["leaves",{"2":{"3":1}}],["leap",{"2":{"4":1}}],["least",{"2":{"3":1,"23":4}}],["level",{"2":{"3":2}}],["length=365",{"2":{"46":1}}],["lengths",{"2":{"3":1,"25":1,"78":1}}],["length",{"2":{"0":1,"3":6,"4":5,"8":1,"15":4,"19":4,"21":2,"23":3,"38":1,"42":2,"82":1}}],["lazily",{"2":{"82":1}}],["lazy",{"2":{"18":1,"35":1}}],["largest",{"2":{"80":1,"82":1}}],["large",{"2":{"52":1}}],["larger",{"2":{"25":1}}],["language",{"2":{"26":1}}],["lastindex",{"2":{"32":1}}],["last",{"2":{"19":2,"31":1,"43":1}}],["layermetadata",{"2":{"23":1,"64":1}}],["layerdims",{"2":{"23":5,"42":2,"64":1}}],["layernames=nothing",{"2":{"18":1}}],["layered",{"2":{"16":2}}],["layer",{"2":{"16":5,"21":2,"27":2,"30":1,"79":1,"80":1,"82":2,"84":1}}],["layersfrom=",{"2":{"84":2}}],["layersfrom=nothing",{"2":{"16":1,"18":1}}],["layersfrom",{"2":{"18":1}}],["layers",{"2":{"16":9,"18":1,"20":1,"21":5,"61":2,"77":4,"78":9,"79":2,"80":28,"81":2,"82":2,"83":1,"84":1}}],["layout",{"2":{"0":1}}],["later",{"2":{"19":1}}],["latitude",{"2":{"0":1}}],["lat",{"2":{"0":1}}],["labelled",{"2":{"67":1}}],["labelling",{"2":{"15":1}}],["labels=x",{"2":{"48":2}}],["labels",{"2":{"11":1,"19":21,"68":1}}],["label",{"2":{"0":3,"2":5,"34":1}}],["lt",{"2":{"0":12,"1":2,"3":4,"5":1,"15":2,"39":3,"57":1,"58":1,"79":1}}],["lot",{"2":{"48":1,"72":1}}],["log",{"2":{"33":2}}],["losing",{"2":{"19":1,"61":1}}],["looping",{"2":{"82":1}}],["loop",{"2":{"82":1}}],["look",{"2":{"46":1}}],["lookuparray",{"2":{"66":1}}],["lookupdim",{"2":{"20":1}}],["lookupcomponent",{"2":{"20":1}}],["lookuptrait",{"2":{"6":1,"7":1,"8":1,"9":1,"10":1,"20":1}}],["lookups",{"0":{"4":1,"74":1},"1":{"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1},"2":{"2":3,"3":2,"4":34,"5":11,"6":1,"7":6,"8":5,"9":3,"10":6,"11":4,"15":1,"17":2,"20":3,"21":1,"28":1,"34":2,"38":1,"43":1,"51":1,"62":1,"73":1,"74":4,"75":1,"76":1}}],["lookup",{"0":{"6":1,"21":1,"75":1},"1":{"7":1,"8":1,"9":1,"10":1,"22":1,"23":1},"2":{"0":4,"1":1,"2":13,"3":2,"4":52,"5":4,"6":2,"7":6,"9":1,"10":4,"15":9,"17":2,"19":2,"20":14,"21":5,"36":3,"38":1,"41":3,"43":18,"44":8,"48":2,"63":1,"64":1,"66":1,"73":2,"74":10,"75":4,"77":1}}],["loosely",{"2":{"6":1}}],["location",{"2":{"9":1}}],["located",{"2":{"5":1}}],["locus",{"2":{"0":1,"4":13,"5":3,"9":2,"10":5,"43":6}}],["lowerbound",{"2":{"8":1}}],["lower",{"2":{"5":1,"8":1}}],["low",{"2":{"3":1}}],["long",{"2":{"39":1,"40":1,"81":1}}],["longitudes",{"2":{"4":1}}],["longitude",{"2":{"0":1}}],["longer",{"2":{"0":1,"3":1,"4":1}}],["lon",{"2":{"0":1}}],["loading",{"2":{"0":1}}],["load",{"2":{"0":1,"4":1,"46":1,"51":1,"58":1}}],["csv",{"0":{"85":1},"2":{"82":1,"85":5}}],["c=rand",{"2":{"77":1}}],["cryogridoutput",{"2":{"56":1}}],["cryogrid",{"0":{"56":1},"2":{"56":2}}],["crs",{"2":{"51":1}}],["create",{"2":{"4":2,"10":2,"13":1,"15":4,"19":1,"20":1,"21":2,"26":1,"46":2,"66":1,"73":1,"74":5}}],["created",{"2":{"0":1}}],["creating",{"2":{"0":1,"28":1}}],["climate",{"2":{"53":1}}],["climatebase",{"0":{"53":1},"2":{"53":1}}],["cloud",{"2":{"35":1}}],["closest",{"2":{"73":1}}],["close",{"2":{"23":3,"73":1}}],["closely",{"2":{"21":4,"52":1}}],["closed",{"2":{"5":3,"48":35}}],["closedinterval",{"2":{"5":1}}],["clashes",{"2":{"0":1,"5":1}}],["cycling",{"2":{"4":1}}],["cyclical",{"2":{"74":1}}],["cyclicbins",{"2":{"19":4}}],["cyclic",{"2":{"4":5,"19":1,"74":5}}],["cycle=month",{"2":{"74":1}}],["cycle=24",{"2":{"48":1}}],["cycle=12",{"2":{"48":3}}],["cycles",{"2":{"19":1,"74":1}}],["cycled",{"2":{"4":3}}],["cycle",{"2":{"4":9,"19":5}}],["cua2",{"2":{"26":2}}],["cua",{"2":{"26":2}}],["cuarray",{"2":{"20":1,"26":2,"61":1}}],["cuda",{"0":{"26":1},"1":{"27":1},"2":{"26":2,"27":1}}],["currently",{"2":{"24":1}}],["current",{"2":{"4":1,"15":1,"21":1}}],["curresponding",{"2":{"4":2}}],["customise",{"2":{"65":1}}],["custom=dd",{"2":{"20":1}}],["custom=10",{"2":{"20":1}}],["custom",{"2":{"0":4,"3":1,"18":2,"19":1,"20":9,"27":1,"36":2,"49":1}}],["center",{"2":{"5":5,"9":2,"10":4,"43":7,"66":1,"75":1}}],["central",{"2":{"0":1}}],["cellular",{"2":{"57":1}}],["cells",{"2":{"9":1,"10":1,"73":1}}],["cell",{"2":{"3":1,"5":1}}],["choosing",{"2":{"73":1}}],["choose",{"2":{"40":1,"67":1}}],["chosen",{"2":{"2":1,"17":1,"19":1}}],["child",{"2":{"21":1}}],["chunked",{"2":{"35":1}}],["chunk",{"2":{"19":1}}],["channel",{"2":{"13":1}}],["channel=",{"2":{"13":1}}],["changing",{"2":{"4":1,"20":1,"65":1}}],["changes",{"2":{"23":1}}],["change",{"2":{"3":1,"4":4,"20":5,"66":1}}],["changed",{"2":{"3":1}}],["char",{"2":{"0":1,"3":1,"4":1,"13":1,"17":2,"62":2,"64":2,"66":3,"75":1,"83":2,"84":3}}],["checked",{"2":{"24":1}}],["checks",{"2":{"21":4,"24":2}}],["checking",{"2":{"21":1}}],["check=true",{"2":{"3":1}}],["check",{"2":{"1":2,"3":1,"4":1,"5":1,"12":1,"15":2,"20":1,"21":11,"64":1}}],["cost",{"2":{"33":1}}],["costly",{"2":{"21":1}}],["cover",{"2":{"45":1}}],["cov",{"2":{"32":1}}],["core",{"2":{"64":1}}],["cor",{"2":{"32":1}}],["correctly",{"2":{"42":2}}],["correct",{"2":{"4":2,"5":1,"10":1,"27":1}}],["corresponding",{"2":{"4":1}}],["correspond",{"2":{"3":1,"10":3}}],["coordinate",{"2":{"36":1}}],["coordinatetransformations",{"2":{"4":2}}],["coordination",{"2":{"35":1}}],["coords",{"2":{"20":2}}],["copy",{"2":{"20":1,"21":7}}],["code",{"2":{"16":2,"23":2,"26":1}}],["coded",{"2":{"6":1}}],["could",{"2":{"5":1,"25":1,"48":1}}],["counted",{"2":{"5":1}}],["colours",{"2":{"71":1}}],["color=",{"2":{"71":2,"72":1}}],["color",{"2":{"71":1}}],["colormap",{"0":{"70":1,"71":1},"2":{"71":2}}],["colormap=",{"2":{"68":1}}],["colon",{"2":{"2":2,"3":1,"16":1}}],["collected",{"2":{"82":1}}],["collection",{"2":{"77":1}}],["collect",{"2":{"61":1}}],["column",{"2":{"18":2,"84":3}}],["columns",{"2":{"1":1,"8":1,"15":1,"18":3,"82":2,"84":3}}],["command",{"2":{"12":1}}],["commands",{"2":{"12":1}}],["commondatamodel",{"2":{"35":1}}],["commondims",{"2":{"3":5}}],["commonly",{"2":{"4":1}}],["common",{"2":{"0":2,"4":1,"19":1,"25":1,"46":1,"51":1,"64":1}}],["compile",{"2":{"81":1}}],["compilation",{"2":{"81":1}}],["components",{"2":{"23":4,"42":4}}],["completely",{"2":{"21":4}}],["complicated",{"2":{"5":1,"13":1}}],["compatibility",{"0":{"35":1},"2":{"24":1}}],["compatible",{"2":{"18":1}}],["comparing",{"2":{"3":1,"21":1}}],["comparisons",{"2":{"3":2}}],["compare",{"2":{"3":6}}],["compared",{"2":{"3":1,"21":1}}],["comparedims",{"2":{"3":5}}],["combines",{"2":{"5":1,"43":1}}],["combined",{"2":{"4":1,"17":1,"20":1,"30":1,"63":1}}],["combinedims",{"2":{"3":1}}],["combine",{"2":{"3":1,"18":1}}],["combinations",{"2":{"17":2}}],["combination",{"2":{"1":1,"15":1,"35":2}}],["confusing",{"2":{"40":1}}],["confused",{"2":{"5":1}}],["consistency",{"2":{"77":1}}],["consistent",{"2":{"43":1}}],["consecutive",{"2":{"30":2}}],["constraint",{"2":{"30":1}}],["constructing",{"0":{"29":1},"2":{"41":1}}],["constructionbase",{"2":{"20":1,"40":2,"65":2}}],["construction",{"2":{"4":1,"10":1}}],["construct",{"2":{"18":1}}],["constructors",{"2":{"15":1,"41":2}}],["constructor",{"2":{"4":1,"16":1,"26":1,"64":1}}],["constructed",{"2":{"0":1,"3":1,"4":1,"16":1,"23":2,"37":1}}],["const",{"2":{"5":1,"20":1,"46":1}}],["concatenate",{"2":{"21":4}}],["concrete",{"2":{"0":1,"1":2,"3":3,"4":2,"15":3,"16":1}}],["converging",{"2":{"52":1}}],["conversion",{"2":{"11":1}}],["conversions",{"2":{"10":1}}],["converting",{"0":{"84":1,"85":1}}],["convertible",{"2":{"27":1}}],["converts",{"2":{"2":1,"27":1}}],["convert",{"2":{"2":1,"3":1,"4":1,"27":1,"74":1}}],["converted",{"2":{"0":1,"3":1,"4":1,"18":1,"27":1}}],["controlled",{"2":{"71":1}}],["control",{"2":{"20":1,"21":1}}],["contents",{"2":{"11":1}}],["contexts",{"2":{"4":3}}],["context",{"2":{"3":1,"4":1,"15":1,"23":1}}],["contained",{"2":{"4":1,"5":1,"17":1,"60":1}}],["contain",{"2":{"2":1,"3":1,"5":2,"20":2}}],["contains",{"2":{"1":1,"4":2,"5":10,"15":1,"17":2,"19":1,"20":1,"73":2,"76":1}}],["containing",{"2":{"1":1,"3":1,"15":2}}],["cairomakie",{"2":{"68":1}}],["caveats",{"2":{"64":1}}],["cartesianindex",{"2":{"30":2}}],["cartesianindices",{"2":{"17":4,"30":1,"76":1}}],["category",{"2":{"83":5,"84":10,"85":1}}],["categorises",{"2":{"11":1}}],["categories",{"2":{"4":3,"74":1}}],["categorical",{"2":{"0":2,"3":2,"4":8,"5":3,"13":2,"15":3,"17":2,"48":4,"62":2,"64":2,"66":4,"68":1,"73":15,"74":5,"75":3,"83":2}}],["cat",{"2":{"21":2,"32":1}}],["cases",{"2":{"21":1,"36":1,"38":1}}],["case",{"2":{"20":1,"66":1}}],["calculate",{"2":{"19":1}}],["call",{"2":{"23":1,"48":1}}],["calling",{"2":{"20":1,"39":1,"41":1}}],["callable",{"2":{"19":1}}],["called",{"2":{"3":2,"27":1,"41":1}}],["captions",{"2":{"15":1}}],["capable",{"2":{"4":1}}],["caution",{"2":{"5":1}}],["cant",{"2":{"74":1}}],["cannot",{"2":{"7":1}}],["can",{"2":{"0":2,"1":4,"2":3,"3":7,"4":18,"5":7,"10":3,"11":2,"12":1,"15":9,"16":2,"17":4,"18":1,"19":9,"20":8,"21":2,"24":2,"25":3,"28":1,"29":1,"30":4,"31":2,"32":2,"34":5,"36":1,"40":1,"42":2,"43":1,"44":1,"46":3,"47":2,"48":7,"49":2,"60":1,"61":1,"64":2,"65":1,"71":1,"73":7,"74":1,"75":2,"76":4,"78":3,"80":1,"81":1,"84":2,"85":1}}],["c",{"2":{"0":6,"3":2,"4":2,"13":2,"15":9,"17":3,"20":3,"49":2,"62":2,"64":2,"66":3,"67":1,"68":1,"70":1,"73":33,"75":3,"76":2,"77":1,"78":8,"79":23,"80":28,"81":2,"83":3,"84":2}}],["zarr",{"2":{"35":1}}],["zip",{"2":{"35":1}}],["zero",{"2":{"23":2,"73":1,"79":1}}],["zeros",{"2":{"0":1,"15":6,"20":1,"28":4,"42":2}}],["z=dd",{"2":{"20":1}}],["z=",{"2":{"20":1}}],["zdim",{"2":{"0":4}}],["z",{"2":{"0":8,"1":9,"3":4,"15":9,"20":9,"21":3,"30":13,"34":3,"42":2,"66":2,"68":1,"83":4,"84":22,"85":9}}],["yaxarray",{"2":{"36":1,"52":1}}],["yaxarrays",{"0":{"52":1},"2":{"35":1,"52":1}}],["y=near",{"2":{"79":1}}],["y=not",{"2":{"73":1}}],["y=4",{"2":{"79":1,"81":1}}],["y=where",{"2":{"73":1}}],["y=at",{"2":{"73":2}}],["y=begin+1",{"2":{"31":1}}],["y=end",{"2":{"31":1}}],["y=dimarray",{"2":{"21":1}}],["y=>isodd",{"2":{"19":2}}],["yet",{"2":{"10":1,"23":2}}],["yearday",{"2":{"46":1}}],["yearmonthday",{"2":{"46":1}}],["yearmonth",{"2":{"46":1}}],["year",{"2":{"4":4,"19":1,"46":1}}],["years",{"2":{"4":3}}],["your",{"2":{"5":1,"13":1,"20":1,"40":2}}],["yourdimarray",{"2":{"40":1}}],["yourdim",{"2":{"0":1}}],["you",{"2":{"4":2,"5":1,"12":4,"18":1,"20":5,"21":5,"23":2,"25":2,"31":1,"32":1,"34":1,"40":1,"43":2,"46":1,"48":1,"60":1,"64":4,"66":4,"74":1,"78":1}}],["ydim",{"2":{"0":7}}],["y",{"2":{"0":16,"1":12,"3":8,"4":9,"5":15,"15":26,"16":2,"17":13,"18":2,"19":4,"20":11,"21":6,"25":13,"26":2,"28":24,"30":7,"31":2,"32":3,"33":3,"34":3,"42":3,"43":31,"44":22,"61":8,"62":3,"64":2,"66":10,"68":2,"70":1,"73":16,"75":3,"76":8,"77":10,"78":34,"79":4,"80":92,"83":10,"84":32,"85":1}}],["xy",{"2":{"84":2}}],["xarray",{"2":{"35":1}}],["xz",{"2":{"30":1}}],["x2",{"2":{"21":2}}],["x1",{"2":{"21":2}}],["x=not",{"2":{"73":1}}],["x=near",{"2":{"73":2}}],["x=where",{"2":{"73":1}}],["x=touches",{"2":{"73":1}}],["x=interval",{"2":{"73":1}}],["x=openinterval",{"2":{"73":1}}],["x=1",{"2":{"73":2,"79":1,"81":1}}],["x=contains",{"2":{"73":2}}],["x=at",{"2":{"73":3,"79":2}}],["x=all",{"2":{"5":1}}],["x=>",{"2":{"49":1}}],["x=>bins",{"2":{"48":2}}],["x=begin",{"2":{"31":1}}],["x=begin+1",{"2":{"31":1}}],["x=dimarray",{"2":{"21":1}}],["xs",{"2":{"2":1,"3":2,"4":6,"11":1,"15":2,"18":1}}],["xdim",{"2":{"0":7}}],["x3c",{"2":{"0":10,"4":12,"5":9,"7":6,"8":4,"9":3,"10":6,"11":2,"15":3,"16":1,"17":3,"18":2,"19":3,"22":2,"23":2,"33":2}}],["x",{"2":{"0":17,"1":27,"2":9,"3":22,"4":28,"5":32,"11":6,"15":65,"16":3,"17":17,"18":5,"19":2,"20":27,"21":7,"25":13,"26":2,"28":24,"30":18,"31":2,"32":3,"33":3,"34":6,"40":1,"42":4,"43":29,"44":23,"46":3,"47":3,"48":14,"49":3,"61":8,"62":4,"64":5,"66":8,"67":1,"68":3,"70":1,"73":25,"74":7,"75":3,"76":8,"77":10,"78":25,"80":96,"83":10,"84":32,"85":1}}],["ideal",{"2":{"48":1}}],["identity",{"2":{"19":2,"48":2}}],["identical",{"2":{"4":2,"11":1,"77":1}}],["io",{"2":{"23":11}}],["images",{"2":{"58":1}}],["immutable",{"2":{"20":1,"27":1,"40":1,"66":1}}],["improving",{"2":{"66":1}}],["imperative",{"2":{"62":1}}],["imply",{"2":{"20":1}}],["implements",{"2":{"42":4,"82":1}}],["implemented",{"2":{"39":1,"42":2}}],["implement",{"2":{"16":1,"40":1,"82":1}}],["implementation",{"2":{"4":2,"16":1,"42":4,"56":1}}],["implementations",{"2":{"0":1}}],["important",{"2":{"4":3}}],["ignoring",{"2":{"15":1}}],["ignores",{"2":{"68":1}}],["ignore",{"2":{"3":2,"34":1,"40":1}}],["ignored",{"2":{"3":1,"21":2}}],["irregular",{"2":{"4":3,"5":6,"8":5,"15":1,"17":2,"19":4,"20":2,"47":7,"48":6,"73":6,"74":3,"75":1,"76":4}}],["i",{"2":{"2":2,"3":3,"13":1,"17":1,"38":1,"39":1,"49":1,"70":1,"71":1,"84":1}}],["if",{"2":{"0":1,"1":2,"2":3,"3":5,"4":8,"5":6,"11":2,"12":1,"15":2,"16":1,"17":2,"19":1,"20":7,"21":7,"38":1,"40":1,"43":1,"60":1,"64":2,"66":1,"68":1,"76":1,"79":2,"80":1}}],["isend",{"2":{"44":5}}],["isexplicit",{"2":{"44":5}}],["ispoints",{"2":{"44":6}}],["isintervals",{"2":{"44":6}}],["isreverse",{"2":{"44":5}}],["isregular",{"2":{"43":2,"44":5}}],["isforward",{"2":{"44":5}}],["isordered",{"2":{"44":6}}],["iscenter",{"2":{"44":5}}],["iscyclic",{"2":{"44":6}}],["iscategorical",{"2":{"44":7}}],["isstart",{"2":{"44":5}}],["issampled",{"2":{"44":7}}],["issue",{"2":{"4":1,"66":1}}],["isbits",{"2":{"22":1,"27":1}}],["isa",{"2":{"16":1}}],["isapprox",{"2":{"5":1}}],["is",{"2":{"0":7,"1":3,"2":4,"3":14,"4":31,"5":9,"6":1,"7":3,"8":2,"10":1,"11":2,"12":1,"15":7,"16":3,"17":6,"19":12,"20":11,"21":5,"22":3,"23":5,"24":2,"26":3,"27":2,"31":2,"32":1,"34":1,"35":3,"36":2,"39":2,"40":5,"42":3,"43":6,"48":3,"49":1,"51":4,"52":3,"54":2,"55":1,"57":1,"58":1,"61":1,"62":1,"63":1,"64":3,"65":1,"66":3,"67":2,"71":1,"72":1,"73":7,"74":2,"75":5,"77":2,"81":2,"82":1,"84":1}}],["its",{"2":{"15":1,"19":2,"20":3,"27":1,"36":1,"52":1,"55":1,"66":1}}],["iterates",{"2":{"21":2}}],["iterate",{"2":{"17":1}}],["iterator",{"2":{"16":2}}],["iteration",{"2":{"16":2,"35":1}}],["iter",{"2":{"13":1}}],["iter=1",{"2":{"13":1}}],["it",{"2":{"0":1,"2":1,"3":2,"4":11,"5":3,"7":1,"11":1,"12":3,"15":1,"16":2,"17":1,"19":3,"20":7,"21":1,"22":2,"23":1,"28":1,"30":1,"31":1,"32":1,"33":1,"34":2,"35":1,"38":1,"39":1,"40":1,"42":2,"43":1,"46":1,"48":2,"51":1,"52":1,"55":1,"62":1,"64":1,"66":2,"68":1,"73":3,"74":1,"78":2}}],["inverts",{"2":{"78":1}}],["invalid",{"2":{"30":1}}],["inferno",{"2":{"68":1}}],["information",{"2":{"4":3,"15":1,"43":1}}],["inner",{"2":{"20":1,"21":1,"23":1,"61":2}}],["inbuilt",{"2":{"20":1}}],["initially",{"2":{"16":2}}],["inaccurate",{"2":{"8":1}}],["including",{"2":{"7":1,"35":1,"73":1}}],["included",{"2":{"3":1,"5":1,"11":1,"48":1}}],["include",{"2":{"2":1,"3":1,"5":1,"23":1,"73":1,"74":1}}],["installed",{"2":{"12":1}}],["install",{"2":{"12":1}}],["installation",{"0":{"12":1}}],["instead",{"2":{"5":2,"7":1,"11":1,"19":1,"31":1,"68":1,"76":1}}],["inside",{"2":{"5":1,"31":1,"73":1}}],["inserted",{"2":{"0":1}}],["inputs",{"2":{"39":1,"41":1}}],["input",{"2":{"3":1,"5":1,"8":1,"71":1}}],["inds",{"2":{"30":2}}],["individual",{"2":{"17":1}}],["indicate",{"2":{"5":1,"10":1,"32":1}}],["indicates",{"2":{"4":2,"7":3,"9":1,"10":1,"11":1}}],["indicating",{"2":{"4":5}}],["indices",{"2":{"2":2,"5":7,"15":1,"17":3,"20":2,"34":1,"73":3,"74":1,"76":1}}],["independent",{"2":{"0":1,"4":1}}],["independentdim",{"2":{"0":5}}],["indexes",{"2":{"73":1}}],["indexed",{"2":{"4":2,"16":2}}],["indexing",{"0":{"30":1,"31":1,"78":1,"79":1},"2":{"0":2,"4":4,"15":3,"16":2,"17":1,"29":1,"30":4,"31":3,"33":1,"51":1,"73":7,"79":1,"81":3}}],["index",{"2":{"0":2,"3":3,"4":5,"5":8,"6":1,"7":4,"8":4,"9":2,"10":5,"15":6,"16":2,"17":4,"18":2,"20":5,"30":2,"31":1,"34":1,"73":3,"76":1,"79":1}}],["inherits",{"2":{"52":1}}],["inherit",{"2":{"0":1,"1":1,"15":1}}],["int8",{"2":{"13":5}}],["intselectors",{"2":{"5":1}}],["intselector",{"2":{"5":4}}],["intentionally",{"2":{"35":1}}],["intended",{"2":{"5":1}}],["integrate",{"2":{"35":1}}],["integrations",{"0":{"50":1},"1":{"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1}}],["integration",{"0":{"27":1}}],["integers",{"2":{"46":1,"48":1}}],["integer",{"2":{"3":1,"15":4,"19":7,"39":1}}],["inteface",{"2":{"23":2}}],["interoperability",{"2":{"82":1}}],["interpolate",{"2":{"17":1}}],["interpolation",{"2":{"17":3,"76":1}}],["interact",{"2":{"5":1}}],["intermediate",{"2":{"5":1}}],["interfaces",{"0":{"42":1},"2":{"23":2,"42":5}}],["interface",{"0":{"18":1,"23":1,"42":1},"2":{"3":1,"23":4,"35":1,"36":1,"65":1,"82":2,"85":1}}],["internally",{"2":{"64":1}}],["internal",{"0":{"23":1},"2":{"3":1,"20":1}}],["intervalbounds",{"2":{"43":4,"73":1}}],["interval",{"2":{"0":1,"4":5,"5":12,"8":1,"9":2,"10":4,"17":1,"19":2,"43":2,"48":9,"73":3,"74":1,"75":1}}],["intervalsets",{"2":{"5":2,"19":1,"48":6,"73":2,"75":1}}],["intervals",{"2":{"0":1,"4":13,"5":10,"8":3,"9":4,"10":1,"17":1,"19":4,"43":1,"48":7,"66":2,"73":14,"74":6,"75":2}}],["int",{"2":{"1":5,"2":2,"5":1,"15":5,"16":2,"18":1,"19":4,"31":2,"32":1,"34":1,"39":1,"48":1,"73":4}}],["int64",{"2":{"0":2,"4":2,"5":11,"13":4,"15":2,"17":2,"19":3,"20":2,"21":1,"25":11,"28":2,"30":6,"43":17,"44":14,"46":12,"47":11,"48":5,"66":2,"74":3,"75":1,"76":3,"83":4,"84":8}}],["into",{"2":{"0":3,"4":3,"17":2,"18":1,"19":1,"20":1,"26":1,"27":1,"34":2,"48":4,"56":1,"63":1,"68":1,"81":1}}],["in",{"2":{"0":7,"1":3,"2":2,"3":12,"4":12,"5":10,"7":3,"8":2,"9":1,"10":2,"11":2,"15":5,"16":6,"17":5,"19":6,"20":24,"21":11,"22":1,"23":11,"24":1,"27":1,"30":2,"31":4,"32":1,"34":1,"35":2,"36":2,"38":1,"40":2,"41":2,"42":10,"43":2,"48":4,"60":1,"64":5,"65":1,"66":2,"67":1,"68":2,"72":1,"73":6,"74":3,"77":1,"80":2,"81":1,"82":1}}],["hundreds",{"2":{"82":1}}],["humidity",{"2":{"21":6}}],["histogram",{"2":{"33":2}}],["hierarchy",{"2":{"0":1}}],["heatmap",{"2":{"68":1}}],["her",{"2":{"48":1}}],["here",{"2":{"16":1,"17":1,"20":1,"21":1,"28":1,"29":1,"48":2,"64":1,"68":1,"74":3}}],["helper",{"2":{"48":1}}],["help",{"2":{"23":2}}],["h",{"2":{"13":1,"70":1,"84":1}}],["having",{"2":{"21":1}}],["have",{"2":{"0":1,"4":3,"8":2,"11":1,"12":1,"15":1,"16":2,"18":1,"19":2,"20":3,"21":1,"30":1,"35":1,"36":1,"37":1,"38":1,"40":1,"48":1,"66":1,"68":1,"77":1,"84":1}}],["hard",{"2":{"6":1}}],["haskey",{"2":{"11":2}}],["hasselection",{"2":{"4":2}}],["hasn",{"2":{"2":1}}],["has",{"2":{"1":1,"3":2,"4":1,"11":1,"15":3,"16":1,"20":2,"21":2,"27":1,"33":1,"38":1,"40":2,"41":1,"43":1,"75":1}}],["hasdim",{"2":{"1":6,"15":6}}],["hold",{"2":{"19":1,"38":1,"74":1,"75":1}}],["holds",{"2":{"4":4,"16":1,"74":1}}],["holding",{"2":{"1":1,"2":1,"8":1,"15":9,"17":1,"19":2,"63":1,"76":1}}],["however",{"2":{"5":1,"20":1}}],["how",{"2":{"4":2,"7":2,"21":1,"34":1,"46":1,"62":1}}],["hours",{"2":{"19":4,"48":2}}],["hour",{"2":{"0":1,"19":1,"46":4,"47":1,"48":2,"49":3}}],["slower",{"2":{"81":1}}],["slowly",{"2":{"52":1}}],["slightly",{"2":{"48":1}}],["slicing",{"2":{"3":1}}],["sliced",{"2":{"16":1,"20":1}}],["slicedims",{"2":{"3":2,"15":1}}],["slices",{"2":{"15":1,"21":4}}],["slice",{"2":{"3":1,"15":1,"20":1}}],["synchronisation",{"2":{"57":1}}],["symmetry",{"2":{"34":1}}],["symbol",{"2":{"1":1,"2":1,"3":4,"4":7,"11":1,"13":1,"15":11,"16":6,"18":1,"19":3,"20":2,"21":1,"22":3,"39":2,"41":1,"43":1,"47":7,"48":15,"49":2,"64":2,"73":15,"75":2,"78":2,"82":1}}],["symbols",{"2":{"0":1,"1":1,"2":1,"3":1,"4":5,"11":1,"15":3,"20":1,"27":1,"29":1,"32":1}}],["system",{"2":{"27":1,"36":1}}],["scalar",{"2":{"79":1}}],["scalars",{"2":{"25":6,"79":1}}],["scaled",{"2":{"25":6}}],["scale",{"2":{"25":1}}],["scaling",{"0":{"25":1}}],["scope",{"2":{"0":1,"4":1,"34":1}}],["src",{"2":{"21":4,"31":2}}],["smaller",{"2":{"29":1}}],["small",{"2":{"21":1}}],["sat",{"2":{"74":2}}],["save",{"2":{"51":1}}],["saving",{"2":{"11":2}}],["samples",{"2":{"9":1,"33":2}}],["sampled",{"2":{"0":6,"4":16,"5":8,"9":1,"13":4,"15":5,"17":4,"19":4,"20":10,"21":1,"25":18,"26":2,"36":1,"43":24,"44":28,"47":9,"48":7,"49":5,"62":2,"64":2,"66":8,"73":13,"74":7,"75":3,"76":10,"77":2,"78":15,"79":1,"80":49,"83":4,"84":2}}],["sampling=dd",{"2":{"5":2}}],["sampling=intervals",{"2":{"4":2,"74":3}}],["sampling=points",{"2":{"4":2}}],["sampling",{"0":{"9":1},"2":{"0":1,"2":1,"3":1,"4":15,"5":1,"8":1,"9":6,"17":1,"20":1,"43":5,"64":1,"75":1}}],["same",{"2":{"0":2,"3":3,"4":1,"5":2,"11":1,"15":4,"17":2,"19":1,"20":2,"21":1,"25":1,"28":1,"30":1,"33":1,"38":2,"40":1,"43":1,"46":1,"67":1,"77":1,"82":1}}],["sharing",{"2":{"16":1}}],["share",{"2":{"16":1,"77":1}}],["shift",{"2":{"4":2}}],["shiftlocus",{"2":{"4":1}}],["show",{"2":{"23":9,"74":1}}],["shows",{"2":{"15":1}}],["shown",{"2":{"2":1}}],["should",{"2":{"2":1,"5":1,"12":1,"15":1,"20":1,"23":2,"38":1,"39":1,"40":1,"74":1,"84":1}}],["shortcuts",{"2":{"28":1}}],["shorthand",{"2":{"15":1,"74":1}}],["short",{"2":{"0":1}}],["swapping",{"2":{"20":1}}],["swap",{"2":{"3":1}}],["swapdims",{"2":{"3":3}}],["specialisations",{"2":{"19":1}}],["specify",{"2":{"10":5,"19":3,"20":3,"32":1,"34":1,"48":1,"66":1,"74":1,"84":1}}],["specifying",{"2":{"4":1,"9":1,"74":1}}],["specifies",{"2":{"7":1,"22":1,"30":1,"43":1}}],["specified",{"2":{"2":1,"3":1,"4":1,"15":1,"75":1}}],["specifically",{"2":{"21":1}}],["specific",{"2":{"4":5,"6":1,"8":1,"9":1,"34":1,"62":1}}],["space",{"2":{"20":2}}],["spaced",{"2":{"19":1}}],["spacing",{"2":{"4":2}}],["span=irregular",{"2":{"74":1}}],["span=regular",{"2":{"4":1,"74":1}}],["span=autospan",{"2":{"4":2}}],["span",{"0":{"8":1},"2":{"4":15,"8":7,"43":5,"64":1,"75":1}}],["spatial",{"2":{"0":1,"35":1,"51":1,"52":1,"57":2,"84":1}}],["signature",{"2":{"40":1}}],["sits",{"2":{"30":1}}],["sizes",{"2":{"48":1}}],["size",{"2":{"2":1,"3":1,"4":5,"8":1,"19":1,"20":2,"21":6,"23":5,"25":1,"32":2,"42":3,"49":2,"61":2,"77":4,"78":22,"79":3,"80":88,"82":1,"83":2,"84":26}}],["singleton",{"2":{"20":1}}],["single",{"2":{"1":8,"3":2,"4":1,"5":5,"9":1,"15":8,"16":1,"19":1,"20":3,"25":1,"31":1,"40":1,"43":1,"63":1,"73":1,"79":1,"81":1}}],["simultaneously",{"2":{"63":1}}],["simulations",{"2":{"57":1}}],["simulation",{"2":{"57":1}}],["simulataneously",{"2":{"16":1}}],["similar",{"2":{"0":1,"4":1,"7":1,"9":1,"17":1,"49":1,"61":1}}],["simpler",{"2":{"46":1}}],["simple",{"2":{"45":1}}],["simply",{"2":{"0":1,"4":1,"5":1,"11":1,"15":1,"20":1,"23":1,"43":1,"76":1}}],["simplicity",{"2":{"0":1}}],["st2",{"2":{"78":2}}],["st",{"2":{"61":4,"77":1,"78":8,"79":4,"80":35,"83":1,"84":2,"85":1}}],["storage",{"2":{"51":1}}],["stored",{"2":{"15":1,"77":1}}],["std",{"2":{"32":1,"80":2}}],["style",{"2":{"27":1}}],["still",{"2":{"11":1,"26":1,"31":1,"66":1}}],["standard",{"2":{"82":1}}],["standards",{"2":{"10":1}}],["stage",{"2":{"23":2}}],["statistics",{"2":{"16":2,"25":1,"46":1,"80":1}}],["status",{"2":{"12":2}}],["stack",{"2":{"16":2,"20":2,"21":8,"23":4,"42":2,"61":1,"80":1,"81":1,"82":2}}],["stacks",{"2":{"16":1,"21":5,"81":1,"84":1,"85":1}}],["starts",{"2":{"61":1}}],["start=6",{"2":{"48":4}}],["start=1",{"2":{"48":1}}],["start=12",{"2":{"48":1}}],["start=january",{"2":{"48":1}}],["start=0",{"2":{"19":1}}],["start=dates",{"2":{"19":2}}],["starting",{"2":{"8":1,"48":2}}],["start",{"2":{"0":2,"4":6,"5":3,"9":1,"10":4,"13":1,"19":9,"43":1,"48":4,"73":5,"74":7}}],["stripped",{"2":{"27":1}}],["strickt",{"2":{"21":1}}],["strict=true",{"2":{"21":4}}],["strict=false",{"2":{"20":1}}],["strictness",{"0":{"21":1},"1":{"22":1,"23":1}}],["strict",{"2":{"20":1,"21":8,"24":2}}],["strings",{"2":{"5":1}}],["string",{"2":{"2":4,"3":1,"4":1,"15":1,"23":1,"48":2,"64":2,"74":3,"75":1,"85":1}}],["string=string",{"2":{"0":1}}],["strongly",{"2":{"20":1}}],["struct",{"2":{"3":1,"20":1,"60":2}}],["step=12",{"2":{"48":1}}],["step=2",{"2":{"48":1}}],["step=3",{"2":{"48":2}}],["step=hour",{"2":{"46":1}}],["step=autostep",{"2":{"8":1}}],["steps",{"2":{"19":1}}],["step",{"2":{"3":1,"4":1,"8":2,"19":7,"20":1,"75":1}}],["s",{"2":{"0":1,"1":4,"2":1,"3":4,"5":16,"15":5,"16":3,"18":1,"19":1,"20":5,"22":1,"23":1,"33":1,"35":1,"52":1,"73":2,"84":1}}],["series",{"0":{"69":1},"1":{"70":1,"71":1,"72":1},"2":{"59":1,"70":1,"71":2,"72":1}}],["sep",{"2":{"48":6,"74":2}}],["separate",{"2":{"2":1,"51":1}}],["sequential",{"2":{"19":1}}],["seamlessly",{"2":{"27":1}}],["sea",{"2":{"21":4}}],["seasons",{"2":{"19":4,"48":5}}],["searched",{"2":{"7":1}}],["searchsortedfirst",{"2":{"7":1}}],["searchsorted",{"2":{"7":1}}],["sections",{"2":{"19":1}}],["second",{"2":{"0":1,"2":1,"4":4,"11":1,"15":2,"20":1}}],["sense",{"2":{"5":1,"51":1,"64":1}}],["seed",{"2":{"15":1}}],["see",{"2":{"3":1,"16":1,"25":1,"42":2,"46":1,"48":1}}],["selections",{"2":{"5":1}}],["selectindices",{"2":{"2":1}}],["selects",{"2":{"5":2,"73":1}}],["select",{"0":{"49":1},"2":{"5":6,"21":2,"49":1,"73":2,"74":1,"76":1}}],["selected",{"2":{"5":4,"19":4,"73":2}}],["selectors=near",{"2":{"17":1,"76":1}}],["selectorss",{"2":{"4":2}}],["selectors",{"0":{"5":1,"73":1},"1":{"74":1,"75":1,"76":1},"2":{"2":1,"4":12,"5":8,"8":1,"15":1,"16":1,"17":6,"31":1,"74":2,"75":1,"76":3,"79":1}}],["selector",{"2":{"0":1,"2":2,"4":3,"5":13,"34":1,"40":1,"64":1,"73":2,"78":1}}],["setproperties",{"2":{"20":1,"65":1}}],["settings",{"0":{"21":1},"1":{"22":1,"23":1}}],["setting",{"2":{"20":1,"21":1}}],["setindex",{"2":{"16":1,"31":1}}],["setdims",{"2":{"3":3}}],["set",{"0":{"66":1},"2":{"0":1,"4":6,"8":1,"11":2,"15":13,"20":22,"21":2,"25":1,"64":1,"66":11,"73":2,"75":3}}],["sounds",{"2":{"39":1}}],["sources",{"2":{"4":1,"20":7,"51":1}}],["source",{"2":{"0":15,"1":5,"2":5,"3":12,"4":23,"5":10,"6":1,"7":6,"8":5,"9":3,"10":6,"11":4,"15":16,"16":2,"17":3,"18":2,"19":9,"20":12,"21":9,"22":3,"23":6}}],["solution",{"2":{"19":1}}],["so",{"2":{"4":2,"5":1,"20":2,"24":1,"30":1,"43":1,"48":1,"65":1,"74":1,"82":1,"84":1}}],["sorted",{"2":{"5":1,"19":2}}],["sortdims",{"2":{"3":1}}],["sort",{"2":{"3":3}}],["sometimes",{"2":{"48":1,"66":1}}],["something",{"2":{"13":1,"19":1}}],["somewhere",{"2":{"16":2,"64":1}}],["some",{"2":{"0":1,"4":1,"15":1,"16":1,"19":1,"21":1,"25":1,"34":1,"38":1,"40":1,"46":2,"77":1,"81":1,"83":1}}],["sun",{"2":{"74":2}}],["surface",{"2":{"21":4}}],["sure",{"2":{"17":2}}],["surprising",{"2":{"16":2}}],["summer",{"2":{"48":1}}],["summary",{"2":{"42":2}}],["sum",{"2":{"16":1,"19":1,"32":3,"47":1,"80":5}}],["succinct",{"2":{"16":2}}],["such",{"2":{"0":2,"2":1,"4":1,"5":1,"10":1,"19":2}}],["supporting",{"2":{"85":1}}],["support",{"2":{"67":1}}],["supplied",{"2":{"5":1}}],["supertypes",{"2":{"3":1}}],["supertype=dimension",{"2":{"0":1}}],["supertype",{"2":{"0":8,"4":5,"5":3,"6":1,"7":1,"10":1,"11":1,"15":2,"16":1,"18":1,"22":1}}],["submodule",{"2":{"34":1}}],["subset",{"2":{"21":2,"78":1}}],["subsetting",{"2":{"5":1}}],["subtypes",{"2":{"23":1}}],["subtype",{"2":{"15":1}}],["sub",{"2":{"0":2}}],["m=rand",{"2":{"78":1}}],["my",{"2":{"64":3}}],["mydimstack",{"2":{"16":2}}],["mutable",{"2":{"60":1}}],["much",{"2":{"26":1,"64":1,"67":1}}],["multiplying",{"2":{"21":2}}],["multiplication",{"2":{"21":5}}],["multiple",{"2":{"4":1,"16":3,"19":1,"44":1,"63":1}}],["multipications",{"2":{"21":1}}],["multi",{"0":{"16":1},"2":{"38":1}}],["must",{"2":{"4":3,"5":3,"15":2,"16":2,"20":2,"23":2,"27":2,"37":1,"38":3,"40":1,"41":1,"60":1,"77":1}}],["mixing",{"2":{"30":1}}],["mix",{"2":{"30":1,"80":1}}],["mixed",{"2":{"16":2,"17":2,"36":1}}],["mime",{"2":{"23":5}}],["mid",{"2":{"5":1}}],["min",{"2":{"33":4}}],["minus",{"2":{"4":1}}],["minimum",{"2":{"3":1,"32":1,"47":1,"80":2}}],["missingval",{"2":{"20":1,"51":1}}],["missing",{"2":{"3":1,"20":1,"41":1,"51":1}}],["msg",{"2":{"3":1}}],["measures",{"2":{"81":1}}],["means",{"2":{"3":1,"5":1,"7":1,"10":1,"18":1,"20":1,"24":1,"25":1,"27":1,"34":1,"38":1,"44":2,"73":1}}],["mean",{"2":{"3":1,"4":1,"9":1,"15":1,"16":4,"19":10,"24":1,"25":2,"32":1,"33":4,"47":3,"48":3,"49":1,"80":3}}],["meaning",{"2":{"2":1,"4":1,"17":1}}],["merging",{"2":{"78":1}}],["merges",{"2":{"63":1}}],["merge",{"2":{"30":1,"78":5,"84":1}}],["merged",{"2":{"20":3}}],["mergedims=",{"2":{"84":1}}],["mergedims=nothing",{"2":{"18":3}}],["mergedims",{"0":{"63":1},"2":{"18":1,"20":5,"63":1}}],["mergedlookup",{"2":{"4":3,"20":3,"30":1}}],["median",{"2":{"32":1,"33":4,"47":1}}],["memory",{"2":{"33":2}}],["mem",{"2":{"26":1}}],["messy",{"2":{"19":1}}],["mesages",{"2":{"3":1}}],["metadata=dict",{"2":{"28":5,"64":1}}],["metadata=metadata",{"2":{"16":1}}],["metadata=nometadata",{"2":{"4":3,"15":1,"16":1}}],["metadata",{"0":{"11":1},"2":{"3":1,"4":16,"11":16,"15":11,"19":3,"20":4,"23":9,"27":1,"28":5,"40":1,"42":8,"47":7,"48":11,"49":2,"60":1,"64":5}}],["method",{"2":{"1":4,"3":3,"4":4,"9":1,"11":2,"15":7,"17":1,"20":2,"23":3,"40":1,"42":2}}],["methods",{"0":{"1":1,"2":1,"3":1,"19":1,"20":1},"2":{"0":2,"1":1,"3":3,"4":3,"7":1,"15":1,"16":5,"19":1,"21":3,"23":2,"32":1,"34":1,"36":1,"40":1,"43":1,"44":1,"49":1,"53":1}}],["m",{"2":{"0":1,"4":3,"62":2,"64":2,"66":3,"78":2,"84":1}}],["mon",{"2":{"74":2}}],["monthabbr",{"2":{"74":2}}],["months",{"2":{"19":5,"48":4,"74":1}}],["monthly",{"2":{"19":2}}],["month",{"2":{"0":6,"15":1,"19":4,"25":19,"46":1,"47":2,"48":13,"74":5}}],["moving",{"2":{"61":1,"67":1}}],["moved",{"2":{"27":2}}],["move",{"2":{"26":1}}],["moves",{"2":{"15":1}}],["mod",{"2":{"61":2}}],["models",{"2":{"54":1,"57":1}}],["model",{"2":{"27":1,"56":1}}],["modification",{"2":{"27":1}}],["modified",{"2":{"5":1}}],["modifying",{"0":{"60":1},"1":{"61":1,"62":1,"63":1,"64":1,"65":1,"66":1}}],["modify",{"0":{"61":1},"2":{"6":1,"20":6,"26":1,"60":1,"61":6}}],["module",{"2":{"0":2,"4":1}}],["mostly",{"2":{"15":1,"20":2,"67":1,"68":1}}],["most",{"2":{"4":1,"16":4,"20":1,"21":1,"23":1,"26":1,"35":1,"36":1,"64":1,"74":1,"75":1}}],["more",{"2":{"0":2,"4":4,"13":1,"15":1,"18":1,"23":1,"40":2,"52":1,"61":1,"65":1,"72":1,"73":1}}],["magic",{"0":{"65":1}}],["made",{"2":{"51":1}}],["masking",{"2":{"51":1}}],["mar",{"2":{"48":6,"74":1}}],["markersize=15",{"2":{"72":1}}],["markers",{"0":{"72":1},"2":{"10":1}}],["max",{"2":{"33":4}}],["maximum",{"2":{"5":1,"23":1,"32":1,"47":1,"80":3}}],["manipulation",{"2":{"51":1}}],["mandatory",{"2":{"23":4,"42":2}}],["many",{"2":{"16":4,"23":2,"32":1,"81":1}}],["manually",{"2":{"4":5,"19":1,"40":1,"74":2,"75":1,"81":1}}],["mapped",{"2":{"51":1}}],["mapslices",{"2":{"32":1}}],["mapreduce",{"2":{"32":1}}],["map",{"2":{"16":5,"19":4,"21":1}}],["maintains",{"2":{"15":1}}],["main",{"2":{"15":1,"23":4}}],["makie",{"0":{"68":1},"1":{"69":1,"70":1,"71":1,"72":1},"2":{"67":2,"68":3,"70":1,"72":1}}],["making",{"2":{"0":1}}],["makes",{"2":{"22":1,"43":1}}],["make",{"2":{"4":1,"5":1,"17":2,"34":1,"64":1,"74":1}}],["math",{"2":{"31":1}}],["matmul",{"2":{"21":4}}],["matrix",{"2":{"8":1,"21":6,"28":3,"61":3,"80":1}}],["matter",{"2":{"3":1,"17":1}}],["match",{"2":{"1":3,"2":2,"3":3,"4":1,"5":1,"15":3,"19":1,"20":4,"21":9,"24":1,"78":1,"80":1,"82":1}}],["matches",{"2":{"1":1,"5":1,"15":1,"19":1,"23":4,"42":4,"64":1}}],["matching",{"2":{"0":2,"1":1,"3":1,"4":3,"15":1,"16":2,"19":2,"20":1,"39":2,"73":1,"76":1}}],["macro",{"2":{"0":1,"3":1,"20":3,"24":1,"25":1}}],["may",{"2":{"0":2,"3":1,"4":5,"5":4,"6":1,"8":1,"11":2,"16":2,"21":1,"23":1,"48":6,"64":2,"66":1,"74":3}}],["tue",{"2":{"74":2}}],["turned",{"2":{"24":1}}],["turn",{"2":{"21":2}}],["tuples",{"2":{"3":4,"4":1,"17":1,"19":2,"30":2,"41":1,"43":1,"46":1,"63":1}}],["tuple",{"2":{"1":22,"2":8,"3":34,"4":32,"8":2,"11":5,"15":42,"16":3,"17":8,"19":2,"20":10,"21":1,"23":5,"30":3,"37":1,"41":1,"42":2,"43":6,"46":4,"47":3,"73":1,"78":1,"80":4,"84":2}}],["tell",{"2":{"62":1}}],["text",{"2":{"23":2}}],["testable",{"2":{"42":1}}],["testing",{"0":{"42":1},"2":{"42":2}}],["test",{"0":{"69":1},"1":{"70":1,"71":1,"72":1},"2":{"23":4,"42":4}}],["tested",{"2":{"23":2}}],["testname",{"2":{"20":1}}],["temporal",{"2":{"57":1}}],["tempo",{"2":{"46":9,"47":1}}],["temp",{"2":{"21":4}}],["term",{"2":{"6":1,"43":1}}],["terms",{"2":{"4":1}}],["twice",{"2":{"5":1}}],["two",{"2":{"3":1,"4":2,"5":4,"15":4,"16":2,"18":1,"27":1,"48":1,"73":1,"77":1}}],["tries",{"2":{"66":1}}],["trivially",{"2":{"49":1}}],["trial",{"2":{"33":2}}],["try",{"2":{"20":1}}],["treated",{"2":{"19":1}}],["treat",{"2":{"18":1}}],["track",{"2":{"15":1}}],["tracking",{"2":{"4":1,"8":1,"11":1}}],["trait",{"2":{"6":1,"20":2}}],["traits",{"0":{"6":1},"1":{"7":1,"8":1,"9":1,"10":1},"2":{"3":1,"4":1,"6":2,"7":1,"20":1,"74":1}}],["transforming",{"2":{"19":1,"20":1}}],["transform",{"2":{"4":1,"46":1,"64":1}}],["transformation",{"2":{"4":3}}],["transformations",{"2":{"3":1,"4":1,"15":1}}],["transformed",{"2":{"4":4}}],["transpose",{"2":{"0":1,"32":2,"80":1}}],["transect",{"2":{"0":1}}],["true",{"2":{"1":4,"3":3,"15":4,"16":1,"19":2,"20":2,"30":1,"42":89,"44":21}}],["typ",{"2":{"0":2}}],["typeof",{"2":{"20":1,"26":1,"74":2}}],["typed",{"2":{"20":1}}],["typemax",{"2":{"4":1}}],["typemin",{"2":{"4":1}}],["type",{"2":{"0":3,"1":6,"2":3,"3":15,"4":2,"8":1,"11":2,"15":6,"16":1,"18":2,"20":4,"22":1,"27":1,"30":1,"39":2,"41":1,"43":1,"64":1,"66":1,"85":1}}],["types",{"2":{"0":6,"1":5,"2":1,"3":8,"4":7,"5":1,"6":1,"10":1,"11":2,"15":7,"18":1,"20":3,"31":1,"32":2,"34":2,"36":2,"46":1,"51":1,"55":1,"75":2}}],["tabular",{"2":{"82":1}}],["table",{"2":{"18":1,"84":1}}],["tabletraits",{"0":{"18":1},"2":{"18":1}}],["tables",{"0":{"18":1,"82":1},"1":{"83":1,"84":1,"85":1},"2":{"0":1,"15":1,"18":4,"82":2,"85":1}}],["taking",{"2":{"48":1}}],["taken",{"2":{"17":1}}],["take",{"2":{"0":1,"4":2,"5":1,"16":1,"19":2,"47":1,"71":1,"73":3,"81":1,"84":1}}],["target",{"2":{"17":2}}],["t",{"2":{"0":1,"2":2,"3":2,"4":10,"11":1,"17":1,"21":4,"25":3,"30":2,"31":1,"64":1,"65":1,"66":1,"75":1,"76":1,"84":1}}],["title",{"2":{"23":5}}],["ti=>",{"2":{"49":1}}],["ti=>cyclicbins",{"2":{"48":4}}],["ti=>bins",{"2":{"48":8}}],["ti=>yearday",{"2":{"47":2}}],["ti=>yearmonth",{"2":{"47":2}}],["ti=>yearmonthday",{"2":{"47":2}}],["ti=>hour",{"2":{"47":2}}],["ti=>dayofyear",{"2":{"47":2}}],["ti=>month",{"2":{"19":6,"47":3}}],["ti=2",{"2":{"17":1}}],["ti=all",{"2":{"5":1}}],["time=1",{"2":{"13":1}}],["timeseriestools",{"0":{"59":1},"2":{"59":1}}],["times",{"2":{"0":1,"47":1,"77":1}}],["timedime",{"2":{"0":1}}],["timedim",{"2":{"0":4,"3":1}}],["time",{"0":{"25":1},"2":{"0":4,"4":1,"13":1,"16":1,"19":1,"21":1,"23":1,"33":6,"47":1,"59":1,"81":1}}],["ti",{"2":{"0":14,"1":1,"3":3,"5":3,"15":5,"17":1,"18":2,"19":6,"20":5,"21":3,"25":14,"32":3,"34":1,"47":10,"48":23,"49":5,"68":1}}],["though",{"2":{"81":1}}],["those",{"2":{"5":1,"21":2,"34":1,"64":1}}],["thur",{"2":{"74":2}}],["think",{"2":{"66":1}}],["thing",{"2":{"66":2}}],["things",{"2":{"23":2,"26":1,"60":1,"61":1,"64":2,"75":1}}],["this",{"2":{"0":1,"2":3,"3":6,"4":13,"5":6,"7":1,"8":1,"10":2,"11":2,"12":1,"16":4,"17":2,"18":2,"19":6,"20":8,"21":6,"22":1,"23":3,"24":1,"26":1,"27":2,"30":1,"31":1,"32":1,"34":1,"35":1,"38":1,"39":1,"41":1,"42":1,"43":1,"45":1,"48":5,"57":1,"61":2,"64":1,"66":1,"67":1,"73":1,"75":2,"77":1,"80":1,"81":1}}],["through",{"2":{"15":1,"55":1}}],["throws",{"2":{"5":1}}],["throw",{"2":{"3":1,"30":1}}],["throwing",{"2":{"3":1}}],["thrown",{"2":{"2":1,"3":1,"5":1,"64":1}}],["three",{"2":{"4":2,"16":2,"19":1,"48":1}}],["than",{"2":{"3":1,"4":2,"5":2,"9":1,"19":2,"27":1,"39":1,"40":1,"48":1,"60":1,"62":1,"73":1,"81":1}}],["that",{"2":{"0":3,"1":2,"2":2,"3":1,"4":13,"5":15,"7":4,"8":3,"9":2,"10":1,"11":1,"12":1,"15":8,"16":4,"17":4,"19":4,"20":7,"21":12,"24":4,"27":2,"28":1,"31":1,"34":1,"36":1,"37":1,"38":1,"39":1,"40":3,"43":2,"46":2,"64":1,"74":2,"75":1,"77":1,"82":1,"84":1}}],["then",{"2":{"20":1,"73":1,"75":1}}],["their",{"2":{"3":2,"16":2,"20":3,"43":1,"51":1}}],["there",{"2":{"2":2,"4":2,"15":4,"20":1,"24":1,"28":1,"40":1,"43":1,"48":1,"66":1,"74":1,"81":1}}],["these",{"2":{"0":3,"1":1,"3":2,"4":4,"6":2,"7":1,"8":1,"9":1,"10":1,"15":2,"16":1,"17":2,"18":1,"19":2,"20":1,"21":3,"30":1,"34":1,"36":1,"39":1,"40":3,"44":1,"64":1,"74":2,"76":1}}],["they",{"2":{"0":1,"2":1,"3":2,"4":3,"5":2,"10":2,"11":1,"15":1,"17":2,"20":2,"21":1,"23":2,"27":1,"30":1,"34":2,"35":1,"60":1,"64":1,"67":1,"74":1,"75":3,"82":1}}],["them",{"2":{"0":1,"4":1,"5":3,"11":1,"21":1,"27":1,"30":1,"43":1,"47":1,"48":1,"73":1,"74":1}}],["the",{"0":{"25":1},"2":{"0":20,"1":13,"2":8,"3":43,"4":85,"5":45,"6":3,"7":9,"8":7,"9":7,"10":9,"11":6,"12":3,"13":1,"15":49,"16":24,"17":16,"18":4,"19":48,"20":56,"21":22,"22":4,"23":9,"24":3,"25":8,"26":9,"27":5,"28":1,"29":1,"30":6,"31":4,"32":3,"33":2,"34":6,"35":1,"36":1,"38":7,"39":3,"40":6,"41":4,"42":4,"43":11,"44":1,"46":5,"47":4,"48":10,"51":1,"52":1,"56":1,"60":3,"61":4,"62":1,"63":1,"64":7,"65":4,"66":9,"67":4,"68":5,"71":2,"73":11,"74":9,"75":6,"76":1,"77":3,"78":2,"79":1,"80":5,"82":10,"84":3,"85":1}}],["tolerance",{"2":{"73":1}}],["todo",{"2":{"49":1,"66":1}}],["together",{"2":{"24":1}}],["top",{"2":{"23":1,"30":1}}],["tools",{"2":{"35":1,"51":2,"58":1}}],["too",{"2":{"21":1,"27":1,"55":1,"64":1}}],["total",{"2":{"19":1}}],["touched",{"2":{"73":1}}],["touches",{"2":{"5":7,"73":2}}],["touch",{"2":{"5":2}}],["touching",{"2":{"5":1}}],["tosort",{"2":{"3":4}}],["to",{"0":{"84":1,"85":1},"2":{"0":8,"1":5,"2":4,"3":18,"4":35,"5":18,"6":1,"8":1,"9":2,"10":12,"11":5,"12":3,"15":19,"16":8,"17":5,"18":1,"19":16,"20":32,"21":21,"22":2,"23":6,"24":4,"25":4,"26":2,"27":10,"30":1,"31":2,"32":3,"34":5,"35":3,"36":4,"38":1,"39":1,"40":3,"41":1,"42":2,"43":1,"44":1,"46":2,"48":7,"49":2,"51":1,"57":1,"58":1,"60":1,"61":5,"62":2,"64":3,"66":6,"67":2,"73":3,"74":4,"75":3,"77":1,"78":1,"80":1,"81":2,"82":2,"85":1}}],["jan",{"2":{"48":4,"74":1}}],["january",{"2":{"19":2,"48":1}}],["jarring",{"2":{"16":2}}],["jump",{"0":{"55":1},"2":{"55":1}}],["jul",{"2":{"48":6,"74":1}}],["juliaprint",{"2":{"23":2}}],["juliaposition",{"2":{"10":1}}],["juliapoints",{"2":{"9":1}}],["juliahours",{"2":{"19":1}}],["juliahasselection",{"2":{"4":1}}],["juliahasdim",{"2":{"1":1,"15":1}}],["juliaranges",{"2":{"19":1}}],["juliareorder",{"2":{"20":1}}],["juliarebuild",{"2":{"20":1,"23":1,"40":1}}],["juliarefdims",{"2":{"15":1,"23":1}}],["juliaregular",{"2":{"8":1}}],["juliareverseordered",{"2":{"7":1}}],["juliareducedims",{"2":{"3":1}}],["juliagroupby",{"2":{"19":1}}],["juliamakie",{"2":{"68":1,"71":2,"72":1}}],["juliamap",{"2":{"16":1}}],["juliamodify",{"2":{"20":1}}],["juliamonths",{"2":{"19":1}}],["juliamergedims",{"2":{"20":3}}],["juliamergedlookup",{"2":{"4":1}}],["juliametadata",{"2":{"11":1,"15":1}}],["juliamean",{"2":{"0":4,"16":1}}],["juliafunction",{"2":{"16":1}}],["juliaforwardordered",{"2":{"7":1}}],["juliaformat",{"2":{"2":1,"41":1}}],["juliaend",{"2":{"10":1}}],["juliaexplicit",{"2":{"8":1}}],["juliairregular",{"2":{"8":1}}],["juliaintervals",{"2":{"9":1,"19":1}}],["juliaintselector",{"2":{"5":1}}],["juliaindependentdim",{"2":{"0":1}}],["juliawhere",{"2":{"5":1}}],["juliaordered",{"2":{"7":1}}],["juliaorder",{"2":{"4":1,"7":1}}],["juliaotherdims",{"2":{"1":1,"15":1}}],["juliab",{"2":{"70":1}}],["juliablockwidth",{"2":{"23":1}}],["juliabroadcast",{"2":{"20":2}}],["juliabins",{"2":{"19":1}}],["juliabegin",{"2":{"10":1}}],["juliabetween",{"2":{"5":1}}],["juliabounds",{"2":{"4":1}}],["juliabase",{"2":{"15":4,"21":5}}],["juliabasedims",{"2":{"3":1}}],["juliabasetypeof",{"2":{"3":1}}],["julianame",{"2":{"15":1,"22":1}}],["julianame2dim",{"2":{"3":1}}],["julianoname",{"2":{"22":1}}],["julianometadata",{"2":{"11":1}}],["julianolookup",{"2":{"4":1}}],["julianear",{"2":{"5":1}}],["juliatouches",{"2":{"5":1}}],["juliatransformed",{"2":{"4":1}}],["juliatimedim",{"2":{"0":2}}],["juliaunmergedims",{"2":{"20":2}}],["juliaunits",{"2":{"11":1}}],["juliaunordered",{"2":{"7":1}}],["juliaunaligned",{"2":{"4":1}}],["juliausing",{"2":{"0":3,"3":2,"4":6,"5":7,"13":1,"20":3,"25":1,"26":1,"34":1,"43":1,"46":1,"68":1,"73":1,"74":1,"80":1,"83":1,"85":1}}],["juliacat",{"2":{"21":1}}],["juliacategorical",{"2":{"4":1}}],["juliacenter",{"2":{"10":1}}],["juliacopy",{"2":{"21":2}}],["juliacontains",{"2":{"5":1}}],["juliacombinedims",{"2":{"3":1}}],["juliacomparedims",{"2":{"3":1}}],["juliacommondims",{"2":{"3":1}}],["juliacyclicbins",{"2":{"19":1}}],["juliacyclic",{"2":{"4":1}}],["juliaa",{"2":{"20":1}}],["juliaall",{"2":{"5":1}}],["juliaaligned",{"2":{"4":1}}],["juliaat",{"2":{"5":1}}],["juliaarrayselector",{"2":{"5":1}}],["juliaautoposition",{"2":{"10":1}}],["juliaautospan",{"2":{"8":1}}],["juliaautoorder",{"2":{"7":1}}],["juliaautovalues",{"2":{"4":1}}],["juliaautolookup",{"2":{"4":1}}],["juliaabstractname",{"2":{"22":1}}],["juliaabstractdimtable",{"2":{"18":1}}],["juliaabstractdimstack",{"2":{"16":1}}],["juliaabstractdimarray",{"2":{"15":1}}],["juliaabstractbasicdimarray",{"2":{"15":1}}],["juliaabstractmetadata",{"2":{"11":1}}],["juliaabstractcategorical",{"2":{"4":1}}],["juliaabstractcyclic",{"2":{"4":1}}],["juliaabstractsampled",{"2":{"4":1}}],["juliaanondim",{"2":{"0":1}}],["julias",{"2":{"35":1}}],["juliashow",{"2":{"23":2}}],["juliashiftlocus",{"2":{"4":1}}],["juliastrict",{"2":{"21":4}}],["juliastart",{"2":{"10":1}}],["juliaspan",{"2":{"4":1,"8":1}}],["juliasampling",{"2":{"4":1,"9":1}}],["juliasampled",{"2":{"4":1}}],["juliaset",{"2":{"20":1}}],["juliasetdims",{"2":{"3":1}}],["juliaseasons",{"2":{"19":1}}],["juliaselector",{"2":{"5":1}}],["juliaselectindices",{"2":{"2":1}}],["juliasortdims",{"2":{"3":1}}],["juliaslicedims",{"2":{"3":1}}],["juliaswapdims",{"2":{"3":1}}],["julialocus",{"2":{"4":1}}],["julialookuptrait",{"2":{"6":1}}],["julialookups",{"2":{"4":1}}],["julialookup",{"2":{"2":1,"4":1}}],["julialabel",{"2":{"2":1}}],["julia>",{"2":{"1":12,"3":4,"12":1,"15":24,"16":8,"17":4,"18":2,"19":2,"20":4,"21":4,"28":1,"33":1,"34":1,"42":1,"43":1,"61":1,"62":2,"73":2,"74":1,"77":1,"81":1}}],["julia",{"2":{"0":1,"19":1,"20":2,"23":2,"24":2,"26":1,"27":1,"31":1,"32":1,"35":2,"54":1,"56":1,"82":1}}],["juliajulia>",{"2":{"0":1,"1":4,"3":1,"12":3,"13":4,"15":9,"16":1,"17":2,"18":1,"19":4,"20":6,"21":1,"25":10,"26":2,"28":14,"29":2,"30":7,"31":2,"32":2,"33":3,"34":4,"42":4,"43":50,"44":73,"46":9,"47":8,"48":13,"49":4,"61":8,"62":2,"64":6,"65":2,"66":6,"73":17,"74":11,"75":1,"76":5,"77":2,"78":9,"79":4,"80":34,"81":2,"83":3,"84":5}}],["juliaz",{"2":{"0":1}}],["juliazdim",{"2":{"0":2}}],["juliayearday",{"2":{"46":1}}],["juliay",{"2":{"0":1}}],["juliaydim",{"2":{"0":2}}],["juliaval",{"2":{"0":4,"4":1}}],["juliadimgroupbyarray",{"2":{"19":1}}],["juliadimtable",{"2":{"18":1}}],["juliadimpoints",{"2":{"17":1}}],["juliadimindices",{"2":{"17":1}}],["juliadimarray",{"2":{"15":1}}],["juliadimnum",{"2":{"1":1,"15":1}}],["juliadimselectors",{"2":{"17":1}}],["juliadimstack",{"2":{"16":1}}],["juliadimsmatch",{"2":{"3":1}}],["juliadims2indices",{"2":{"2":1}}],["juliadims",{"2":{"1":2,"15":2}}],["juliadim",{"2":{"0":1}}],["juliadimension",{"2":{"0":1}}],["juliadimensions",{"2":{"0":1}}],["juliadependentdim",{"2":{"0":1}}],["juliaxdim",{"2":{"0":2}}],["juliax",{"2":{"0":3}}],["jun",{"2":{"48":6,"74":1}}],["just",{"2":{"5":2,"21":1,"24":1,"38":1,"40":1,"43":1,"48":3,"65":1,"66":1,"78":1}}],["j",{"2":{"3":2,"13":3,"70":1,"84":1}}],["jl",{"0":{"18":2,"35":1,"42":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"67":1,"68":1},"1":{"69":1,"70":1,"71":1,"72":1},"2":{"0":2,"4":5,"5":2,"18":2,"19":1,"20":2,"23":6,"26":1,"27":7,"31":6,"34":1,"35":10,"36":1,"37":1,"38":2,"40":3,"42":1,"43":2,"45":1,"51":3,"52":4,"53":1,"54":1,"55":1,"56":1,"57":2,"58":1,"59":1,"60":1,"64":1,"65":2,"67":4,"68":1,"72":1,"82":5,"85":2}}],["omitted",{"2":{"84":4}}],["o=rand",{"2":{"78":1}}],["oct",{"2":{"48":4,"74":1}}],["own",{"2":{"46":1,"49":1,"55":1}}],["objs",{"2":{"39":1}}],["obj",{"2":{"37":1,"39":2,"40":2}}],["object",{"2":{"0":1,"1":9,"2":1,"3":7,"4":7,"6":1,"10":1,"11":2,"15":12,"17":1,"18":1,"20":11,"23":1,"31":2,"34":2,"40":1,"43":3,"62":1,"64":1,"66":1}}],["objects",{"0":{"60":1},"1":{"61":1,"62":1,"63":1,"64":1,"65":1,"66":1},"2":{"0":1,"2":2,"3":1,"4":1,"5":2,"7":1,"11":1,"15":1,"16":3,"19":1,"20":4,"27":1,"30":1,"34":1,"37":1,"38":1,"39":1,"40":3,"43":1,"49":3,"60":1,"65":2,"66":1,"80":1}}],["our",{"2":{"30":2,"43":1,"46":1,"48":6}}],["outer",{"2":{"41":1,"61":1,"74":1,"75":3}}],["outcome",{"2":{"16":2}}],["out",{"2":{"4":1,"18":1,"34":1,"51":1,"67":1}}],["outputs",{"2":{"57":1}}],["output",{"2":{"0":4,"3":2,"4":5,"5":7,"20":2,"25":1,"48":1,"49":1,"56":1}}],["old",{"2":{"20":6}}],["optimization",{"2":{"55":1}}],["optimised",{"2":{"7":1}}],["options",{"2":{"20":5,"42":2}}],["optional",{"2":{"15":1,"23":4,"42":2}}],["operation",{"2":{"19":1,"32":1}}],["operations",{"2":{"0":1,"15":1,"19":1,"21":1,"27":1}}],["open",{"2":{"5":1,"48":35,"73":1}}],["openinterval",{"2":{"5":1}}],["o",{"2":{"4":1,"78":2,"84":1}}],["overheads",{"2":{"81":1}}],["overlapping",{"2":{"19":1}}],["over",{"2":{"0":1,"4":4,"9":1,"16":3,"17":2,"19":2,"20":6,"21":2,"24":2,"25":1,"47":1,"74":1,"80":1}}],["others",{"2":{"20":2,"77":1}}],["otherwise",{"2":{"4":1,"19":1,"20":1,"21":1,"36":1}}],["otherdims",{"2":{"1":3,"15":3,"17":1,"43":8,"44":13}}],["other",{"2":{"0":2,"3":2,"4":2,"5":2,"19":1,"20":3,"21":2,"25":1,"27":1,"28":1,"36":1,"44":1,"46":1,"49":1,"68":1,"74":1,"75":2,"78":1,"82":1,"85":1}}],["orange",{"2":{"71":1,"72":1}}],["organised",{"2":{"34":1}}],["organises",{"2":{"0":1}}],["originates",{"2":{"19":1}}],["original",{"2":{"3":3,"20":7}}],["origin",{"2":{"11":1}}],["ordering",{"2":{"4":1}}],["order=unordered",{"2":{"4":1,"74":1}}],["order=autoorder",{"2":{"4":2}}],["order=forwardordered",{"2":{"3":1,"74":2}}],["ordered",{"2":{"1":1,"4":1,"7":4,"15":3,"74":2}}],["order",{"0":{"7":1},"2":{"1":1,"2":1,"3":12,"4":23,"5":1,"7":9,"15":1,"17":7,"20":17,"21":4,"25":1,"30":4,"43":6,"64":3,"68":1,"75":2}}],["or",{"2":{"0":5,"1":20,"2":7,"3":20,"4":33,"5":7,"7":1,"8":5,"9":3,"10":3,"11":6,"12":1,"13":2,"15":31,"16":7,"17":6,"18":4,"19":16,"20":15,"21":5,"23":4,"25":2,"27":1,"30":1,"31":2,"32":2,"34":1,"36":3,"38":1,"39":1,"41":1,"42":2,"43":10,"44":1,"45":1,"48":1,"60":1,"61":1,"64":1,"71":1,"73":4,"74":3,"75":3,"76":2,"77":1,"78":2,"82":2,"85":1}}],["off",{"2":{"21":1}}],["offsetarrays",{"2":{"38":2}}],["offset",{"2":{"5":1}}],["often",{"2":{"19":1,"20":1,"27":1,"51":1,"74":1}}],["of",{"2":{"0":5,"1":13,"2":6,"3":17,"4":45,"5":13,"6":5,"7":3,"8":1,"9":2,"10":7,"11":5,"15":34,"16":10,"17":16,"18":3,"19":40,"20":29,"21":10,"22":1,"23":16,"24":2,"25":2,"26":2,"27":1,"28":2,"30":8,"31":1,"34":2,"35":3,"36":1,"37":1,"38":1,"39":1,"40":2,"41":4,"42":10,"43":10,"46":2,"47":2,"48":5,"51":2,"53":1,"54":1,"56":1,"60":1,"61":1,"63":2,"64":4,"66":2,"67":1,"71":1,"73":2,"74":4,"75":3,"76":2,"77":5,"78":2,"79":1,"80":3,"82":4,"84":1}}],["oneto",{"2":{"21":2,"74":2}}],["one",{"2":{"3":1,"4":3,"9":1,"16":2,"20":1,"21":3,"24":1,"26":1,"27":1,"40":2,"64":2,"73":1,"77":1,"79":1,"84":3}}],["ones",{"2":{"1":4,"3":3,"4":1,"15":10,"18":1,"20":4,"28":4,"33":1}}],["only",{"2":{"2":1,"4":1,"5":1,"15":3,"17":4,"20":4,"40":2,"48":1,"60":1,"64":1,"77":1,"78":1,"80":1,"84":1}}],["on",{"2":{"0":6,"1":1,"2":3,"3":1,"4":2,"5":1,"10":1,"11":1,"15":3,"16":2,"19":3,"20":3,"21":2,"22":1,"23":3,"24":2,"26":3,"27":2,"30":1,"35":1,"41":1,"42":2,"48":1,"57":1,"64":1,"65":1,"67":2,"78":2}}],["away",{"2":{"64":1}}],["aware",{"2":{"24":1,"51":1}}],["a1",{"2":{"64":4}}],["aimed",{"2":{"52":1}}],["aggregate",{"2":{"48":1}}],["again",{"2":{"16":1,"30":1}}],["a=rand",{"2":{"77":1}}],["a=falses",{"2":{"61":1}}],["a=3",{"2":{"29":1}}],["a=1",{"2":{"13":1}}],["aug",{"2":{"48":6,"74":1}}],["auxiliary",{"2":{"27":1,"57":1}}],["autodetection",{"0":{"75":1}}],["automata",{"2":{"57":1}}],["automated",{"2":{"20":1}}],["automatic",{"2":{"0":1,"4":1,"10":1}}],["automatically",{"2":{"0":1,"4":3,"7":1,"27":1,"40":1,"74":2,"75":1}}],["autoposition",{"2":{"10":2}}],["autospan",{"2":{"8":2,"74":1}}],["autovalues",{"2":{"4":1,"74":1}}],["autolookup",{"2":{"4":3}}],["autoorder",{"2":{"4":3,"7":2,"74":1}}],["auto",{"2":{"2":1}}],["amazing",{"2":{"26":1}}],["amp",{"0":{"26":1},"1":{"27":1}}],["ambiguity",{"2":{"2":1,"11":1,"20":1,"24":1,"66":1}}],["after",{"2":{"15":1,"19":3,"23":3,"25":1,"48":1}}],["affine",{"2":{"4":1}}],["affect",{"2":{"0":1}}],["apr",{"2":{"48":6,"74":2}}],["appearance",{"2":{"20":1}}],["applicable",{"2":{"20":1}}],["applications",{"2":{"64":1}}],["application",{"2":{"19":1,"35":1}}],["applied",{"2":{"4":1,"16":1,"19":2,"20":1,"61":1,"80":1}}],["applying",{"2":{"19":2}}],["apply",{"2":{"16":3,"49":1}}],["api",{"0":{"14":1},"1":{"15":1,"16":1,"17":1,"18":1}}],["adherence",{"2":{"35":1}}],["adjoint",{"2":{"32":1,"80":1}}],["adjacent",{"2":{"5":1}}],["adapt",{"2":{"27":3}}],["additional",{"2":{"23":2,"74":1}}],["additionally",{"2":{"12":1}}],["adding",{"2":{"4":3,"23":2}}],["add",{"2":{"12":2,"23":1,"28":1,"74":1}}],["added",{"2":{"3":1,"23":3,"24":1,"36":1,"42":2}}],["available",{"2":{"4":1,"11":2}}],["avoids",{"2":{"16":1,"19":1}}],["avoid",{"2":{"0":1,"5":1,"16":1,"23":1,"24":1}}],["actual",{"2":{"27":1}}],["actually",{"2":{"2":1,"4":1}}],["active",{"2":{"21":2}}],["acepted",{"2":{"15":4}}],["accessed",{"2":{"78":1}}],["accessors",{"2":{"65":1}}],["accessing",{"2":{"33":1}}],["access",{"2":{"28":1,"34":1}}],["accepted",{"2":{"23":2,"42":2,"64":1}}],["accept",{"2":{"15":1,"16":1,"39":1,"41":1,"64":1}}],["acceptable",{"2":{"8":1}}],["accepts",{"2":{"4":1,"5":1,"55":1}}],["accurate",{"2":{"8":1}}],["account",{"2":{"4":2}}],["atol=0",{"2":{"73":1}}],["atol=nothing",{"2":{"5":1}}],["atol",{"2":{"5":1,"17":6,"64":1}}],["attach",{"2":{"4":1}}],["attached",{"2":{"3":1,"38":1}}],["attempting",{"2":{"21":2}}],["attempt",{"2":{"0":1}}],["at",{"2":{"0":1,"3":2,"4":6,"5":11,"9":3,"15":1,"16":3,"17":4,"19":2,"20":1,"23":5,"43":1,"46":1,"48":1,"51":1,"52":1,"73":2,"74":2,"76":2,"77":1}}],["astroimage",{"2":{"58":1}}],["astroimages",{"0":{"58":1},"2":{"58":1}}],["astronomical",{"2":{"58":1}}],["assumes",{"2":{"64":1}}],["assert",{"2":{"49":1}}],["associate",{"2":{"34":2}}],["assignment",{"2":{"20":1,"25":1}}],["assigned",{"2":{"4":9,"60":1,"75":1}}],["ascending",{"2":{"5":1}}],["as",{"2":{"0":6,"1":1,"2":3,"3":5,"4":8,"5":4,"8":1,"10":3,"15":7,"16":6,"17":4,"18":5,"19":5,"20":8,"21":4,"23":2,"24":2,"26":2,"27":2,"32":1,"33":1,"34":1,"36":1,"38":1,"39":2,"40":4,"64":3,"67":3,"68":1,"71":1,"73":4,"74":1,"75":5}}],["above",{"2":{"44":1,"47":2}}],["about",{"2":{"0":1,"4":3,"11":1,"26":1,"65":1}}],["abstracdimarray",{"2":{"31":1}}],["abstractname",{"2":{"22":3}}],["abstraction",{"2":{"20":1}}],["abstractdimarry",{"2":{"45":1}}],["abstractdimarrays",{"2":{"3":1,"20":4,"22":1,"23":2,"31":1}}],["abstractdimarray",{"2":{"0":1,"3":2,"4":1,"11":2,"15":7,"16":5,"17":1,"18":4,"19":7,"20":17,"21":7,"23":6,"24":1,"27":2,"32":1,"36":1,"40":3,"41":2,"51":1,"52":1,"55":1,"57":2,"58":1,"61":1,"64":2,"67":1,"68":1,"77":1,"80":1,"82":1}}],["abstractdimtable",{"2":{"18":2}}],["abstractdimstack",{"2":{"16":4,"18":3,"19":5,"20":10,"21":7,"23":5,"36":1,"41":1,"51":1,"54":1,"61":1,"64":2,"77":1,"80":2,"82":1}}],["abstractrng",{"2":{"15":2}}],["abstractrange",{"2":{"4":4,"19":2,"74":1,"75":1}}],["abstractbasicarray",{"2":{"15":1}}],["abstractbasicdimarray",{"2":{"15":2,"20":1}}],["abstractmetadata",{"2":{"11":3,"20":1}}],["abstractmatrix",{"2":{"8":1}}],["abstractsample",{"2":{"51":1}}],["abstractsampled",{"2":{"4":6,"36":1,"74":1}}],["abstractstring",{"2":{"4":1}}],["abstractcolumns",{"2":{"18":1}}],["abstractcategorical",{"2":{"4":4,"36":1}}],["abstractcyclic",{"2":{"4":2}}],["abstractarray",{"2":{"2":3,"3":2,"4":4,"5":1,"15":4,"16":2,"17":3,"19":4,"20":4,"21":2,"28":1,"35":1,"38":1,"48":2,"74":1,"75":1,"77":1}}],["abstractvector",{"2":{"0":1,"4":4,"15":8}}],["abstract",{"2":{"0":7,"1":2,"3":4,"4":4,"5":3,"6":1,"10":1,"11":1,"15":4,"16":2,"18":1,"20":1,"22":1}}],["abs",{"2":{"13":1}}],["absent",{"2":{"3":1}}],["axis",{"2":{"0":6,"2":1,"3":2,"4":9,"10":3,"15":4,"17":1,"20":1,"38":1,"48":1,"67":1,"68":2,"73":2,"74":2}}],["axes",{"0":{"38":1},"2":{"0":1,"1":1,"4":1,"15":1,"21":3,"30":2,"32":1,"38":2,"64":1,"68":2}}],["alpha",{"2":{"13":1}}],["alpha=",{"2":{"13":1}}],["align",{"2":{"10":1}}],["aligned",{"2":{"4":6,"76":1}}],["although",{"2":{"4":1,"15":1,"67":1}}],["alone",{"2":{"4":2}}],["along",{"0":{"25":1},"2":{"0":1,"19":1,"32":1,"43":1,"74":1}}],["algorithms",{"2":{"3":1,"64":1}}],["always",{"2":{"1":1,"3":1,"9":1,"11":2,"15":1,"16":2,"20":2,"21":4,"23":2,"40":1,"44":1,"51":1,"64":1}}],["already",{"2":{"0":1,"27":1}}],["also",{"2":{"0":3,"3":3,"5":2,"10":1,"11":1,"16":1,"19":1,"20":3,"25":1,"30":1,"31":1,"32":1,"34":1,"38":1,"39":1,"40":1,"47":1,"48":3,"49":2,"51":1,"66":1,"68":2,"73":4,"74":1,"76":1,"79":1,"85":1}}],["allocate",{"2":{"82":1}}],["allocations",{"2":{"81":2}}],["allocation",{"2":{"20":1}}],["allocs",{"2":{"33":2}}],["allows",{"2":{"10":1,"19":1,"20":1}}],["allowing",{"2":{"4":1}}],["allow",{"2":{"4":1,"10":1,"11":1,"57":1}}],["all",{"2":{"0":5,"2":1,"3":3,"4":5,"5":6,"6":1,"11":1,"15":3,"16":5,"17":3,"20":11,"21":8,"22":1,"23":2,"27":1,"31":1,"40":2,"42":2,"43":1,"44":3,"48":1,"51":1,"57":2,"60":1,"61":3,"73":1,"77":2,"78":1,"79":1,"80":1,"81":1,"82":1}}],["arviz",{"0":{"54":1},"2":{"36":1,"54":2}}],["archgdal",{"2":{"35":1}}],["around",{"2":{"19":3}}],["arbitrary",{"0":{"29":1},"2":{"17":1,"19":2,"29":1,"48":1}}],["arg",{"2":{"23":3,"42":3,"64":1}}],["args",{"2":{"3":1,"20":3,"23":12,"40":1,"42":12}}],["argumenterror",{"2":{"30":1}}],["argument",{"2":{"2":1,"3":2,"4":4,"11":2,"15":2,"16":1,"20":4,"25":1,"39":1,"40":3,"71":1}}],["arguments",{"2":{"0":1,"1":4,"3":4,"4":8,"8":1,"15":6,"16":1,"19":1,"20":5,"23":2,"27":1,"40":1,"42":2,"64":2}}],["arrays",{"0":{"15":1},"2":{"5":1,"15":5,"16":1,"19":1,"20":2,"21":1,"22":1,"23":2,"25":1,"60":1,"61":3,"75":3,"76":1,"84":1,"85":1}}],["arrayselectors",{"2":{"5":1}}],["arrayselector",{"2":{"5":4}}],["array",{"0":{"16":1,"79":1},"2":{"0":3,"1":1,"2":2,"3":4,"4":16,"5":1,"9":1,"10":1,"11":1,"13":1,"15":6,"16":3,"17":3,"18":1,"19":1,"20":8,"21":4,"22":2,"23":2,"24":1,"25":1,"26":1,"27":3,"31":1,"32":1,"33":1,"36":2,"38":3,"41":2,"42":2,"47":1,"48":1,"55":1,"61":4,"64":4,"73":2,"74":1,"75":2,"76":1,"81":1,"82":1}}],["aren",{"2":{"76":1}}],["areound",{"2":{"20":1}}],["area",{"2":{"5":3}}],["are",{"2":{"0":7,"1":1,"2":2,"3":17,"4":15,"5":11,"7":1,"8":2,"9":2,"11":1,"15":9,"16":3,"17":4,"18":2,"19":1,"20":15,"21":5,"23":13,"24":2,"25":1,"27":2,"28":2,"30":1,"34":4,"35":2,"36":5,"40":2,"42":10,"43":1,"46":1,"48":1,"51":2,"57":2,"60":2,"64":3,"68":1,"74":2,"75":9,"76":1,"79":2,"80":1,"81":1,"82":3}}],["analysis",{"2":{"48":1,"53":1,"54":1}}],["analagous",{"2":{"24":1}}],["answer",{"2":{"35":1}}],["ansi",{"2":{"23":1}}],["anomalies",{"2":{"19":1}}],["another",{"2":{"4":1,"15":1,"16":1,"17":2,"21":1,"29":1,"45":1,"52":1,"64":1,"73":1,"76":1,"78":1,"79":2}}],["anonymous",{"2":{"0":1}}],["anondim",{"2":{"0":2}}],["annual",{"2":{"4":1}}],["anything",{"2":{"2":1,"20":1}}],["any",{"2":{"0":1,"1":5,"2":1,"3":4,"4":5,"5":5,"11":2,"15":5,"19":8,"20":1,"21":1,"23":2,"27":1,"28":10,"34":2,"39":3,"40":1,"43":2,"47":7,"48":11,"49":3,"55":1,"74":1,"77":1,"80":1,"85":1}}],["an",{"2":{"0":2,"1":8,"2":1,"3":5,"4":9,"5":5,"6":1,"7":1,"8":1,"9":1,"10":3,"11":2,"15":21,"16":1,"17":6,"18":3,"19":6,"20":8,"21":2,"22":1,"23":6,"24":1,"27":1,"30":1,"31":2,"32":1,"34":1,"38":1,"40":1,"41":2,"43":6,"47":1,"48":3,"49":1,"54":2,"71":1,"73":2,"74":2,"75":1,"77":2,"82":1}}],["and",{"0":{"24":1,"47":1,"82":1},"1":{"25":1,"83":1,"84":1,"85":1},"2":{"0":9,"2":7,"3":8,"4":27,"5":10,"7":2,"8":3,"10":2,"11":4,"13":1,"15":17,"16":13,"17":2,"18":3,"19":4,"20":10,"21":11,"22":1,"23":12,"24":3,"25":4,"26":1,"27":4,"28":2,"29":2,"30":1,"31":3,"34":2,"35":5,"36":1,"38":2,"39":1,"40":3,"41":3,"42":6,"43":2,"44":2,"48":4,"49":1,"51":7,"52":2,"57":2,"58":1,"60":1,"61":2,"64":2,"65":1,"66":1,"67":3,"68":4,"73":3,"74":3,"75":8,"76":1,"77":1,"78":1,"80":1,"81":2,"82":5,"84":3,"85":1}}],["a",{"0":{"71":1},"2":{"0":30,"1":30,"2":11,"3":32,"4":50,"5":38,"6":1,"7":2,"8":4,"9":1,"10":6,"11":8,"13":6,"15":68,"16":32,"17":16,"18":5,"19":43,"20":46,"21":12,"22":2,"23":13,"24":3,"25":7,"26":5,"27":1,"28":7,"29":3,"31":2,"34":4,"36":2,"37":1,"38":2,"40":1,"41":2,"42":4,"43":64,"44":73,"45":2,"46":1,"47":8,"48":14,"49":4,"51":5,"52":1,"54":1,"55":2,"56":1,"57":1,"60":1,"61":10,"62":9,"63":2,"64":13,"65":4,"66":14,"67":2,"68":6,"70":1,"71":3,"72":2,"73":59,"74":14,"75":6,"76":5,"77":5,"78":14,"79":27,"80":41,"81":5,"83":5,"84":33,"85":9}}]],"serializationVersion":2}';export{e as default}; diff --git a/dev/assets/chunks/@localSearchIndexroot.CMyb46FE.js b/dev/assets/chunks/@localSearchIndexroot.CMyb46FE.js new file mode 100644 index 000000000..ec0f7f773 --- /dev/null +++ b/dev/assets/chunks/@localSearchIndexroot.CMyb46FE.js @@ -0,0 +1 @@ +const e='{"documentCount":86,"nextId":86,"documentIds":{"0":"/DimensionalData.jl/dev/api/dimensions#dimensions","1":"/DimensionalData.jl/dev/api/dimensions#Exported-methods","2":"/DimensionalData.jl/dev/api/dimensions#Non-exported-methods","3":"/DimensionalData.jl/dev/api/dimensions#Primitive-methods","4":"/DimensionalData.jl/dev/api/lookuparrays#lookups","5":"/DimensionalData.jl/dev/api/lookuparrays#selectors","6":"/DimensionalData.jl/dev/api/lookuparrays#Lookup-traits","7":"/DimensionalData.jl/dev/api/lookuparrays#order","8":"/DimensionalData.jl/dev/api/lookuparrays#span","9":"/DimensionalData.jl/dev/api/lookuparrays#sampling","10":"/DimensionalData.jl/dev/api/lookuparrays#positions","11":"/DimensionalData.jl/dev/api/lookuparrays#metadata","12":"/DimensionalData.jl/dev/basics#installation","13":"/DimensionalData.jl/dev/basics#basics","14":"/DimensionalData.jl/dev/api/reference#API-Reference","15":"/DimensionalData.jl/dev/api/reference#arrays","16":"/DimensionalData.jl/dev/api/reference#Multi-array-datasets","17":"/DimensionalData.jl/dev/api/reference#Dimension-generators","18":"/DimensionalData.jl/dev/api/reference#Tables.jl/TableTraits.jl-interface","19":"/DimensionalData.jl/dev/api/reference#Group-by-methods","20":"/DimensionalData.jl/dev/api/reference#Utility-methods","21":"/DimensionalData.jl/dev/api/reference#Global-lookup-strictness-settings","22":"/DimensionalData.jl/dev/api/reference#name","23":"/DimensionalData.jl/dev/api/reference#Internal-interface","24":"/DimensionalData.jl/dev/broadcasts#Dimensional-broadcasts-with-@d-and-broadcast_dims","25":"/DimensionalData.jl/dev/broadcasts#Example:-scaling-along-the-time-dimension","26":"/DimensionalData.jl/dev/cuda#CUDA-and-GPUs","27":"/DimensionalData.jl/dev/cuda#GPU-Integration-goals","28":"/DimensionalData.jl/dev/dimarrays#dimarrays","29":"/DimensionalData.jl/dev/dimarrays#Constructing-DimArray-with-arbitrary-dimension-names","30":"/DimensionalData.jl/dev/dimarrays#Dimensional-Indexing","31":"/DimensionalData.jl/dev/dimarrays#Begin-End-indexing","32":"/DimensionalData.jl/dev/dimarrays#dims-keywords","33":"/DimensionalData.jl/dev/dimarrays#performance","34":"/DimensionalData.jl/dev/dimensions#dimensions","35":"/DimensionalData.jl/dev/diskarrays#DiskArrays.jl-compatibility","36":"/DimensionalData.jl/dev/extending_dd#Extending-DimensionalData","37":"/DimensionalData.jl/dev/extending_dd#dims","38":"/DimensionalData.jl/dev/extending_dd#Dimension-axes","39":"/DimensionalData.jl/dev/extending_dd#dims-keywords","40":"/DimensionalData.jl/dev/extending_dd#rebuild","41":"/DimensionalData.jl/dev/extending_dd#format","42":"/DimensionalData.jl/dev/extending_dd#Interfaces.jl-interface-testing","43":"/DimensionalData.jl/dev/groupby#Group-By","44":"/DimensionalData.jl/dev/groupby#Grouping-functions","45":"/DimensionalData.jl/dev/groupby#Grouping-and-reducing","46":"/DimensionalData.jl/dev/groupby#binning","47":"/DimensionalData.jl/dev/groupby#Select-by-Dimension","48":"/DimensionalData.jl/dev/get_info#getters","49":"/DimensionalData.jl/dev/get_info#predicates","50":"/DimensionalData.jl/dev/integrations#integrations","51":"/DimensionalData.jl/dev/integrations#rasters-jl","52":"/DimensionalData.jl/dev/integrations#yaxarrays-jl","53":"/DimensionalData.jl/dev/integrations#climatebase-jl","54":"/DimensionalData.jl/dev/integrations#arviz-jl","55":"/DimensionalData.jl/dev/integrations#jump-jl","56":"/DimensionalData.jl/dev/integrations#cryogrid-jl","57":"/DimensionalData.jl/dev/integrations#dynamicgrids-jl","58":"/DimensionalData.jl/dev/integrations#astroimages-jl","59":"/DimensionalData.jl/dev/integrations#timeseriestools-jl","60":"/DimensionalData.jl/dev/object_modification#Modifying-objects","61":"/DimensionalData.jl/dev/object_modification#modify","62":"/DimensionalData.jl/dev/object_modification#reorder","63":"/DimensionalData.jl/dev/object_modification#mergedims","64":"/DimensionalData.jl/dev/object_modification#rebuild","65":"/DimensionalData.jl/dev/object_modification#rebuild-magic","66":"/DimensionalData.jl/dev/object_modification#set","67":"/DimensionalData.jl/dev/plots#plots-jl","68":"/DimensionalData.jl/dev/plots#makie-jl","69":"/DimensionalData.jl/dev/plots#Test-series-plots","70":"/DimensionalData.jl/dev/plots#default-colormap","71":"/DimensionalData.jl/dev/plots#A-different-colormap","72":"/DimensionalData.jl/dev/plots#with-markers","73":"/DimensionalData.jl/dev/selectors#selectors","74":"/DimensionalData.jl/dev/selectors#lookups","75":"/DimensionalData.jl/dev/selectors#Lookup-autodetection","76":"/DimensionalData.jl/dev/selectors#DimSelector","77":"/DimensionalData.jl/dev/stacks#dimstacks","78":"/DimensionalData.jl/dev/stacks#NamedTuple-like-indexing","79":"/DimensionalData.jl/dev/stacks#Array-like-indexing","80":"/DimensionalData.jl/dev/stacks#Reducing-functions","81":"/DimensionalData.jl/dev/stacks#performance","82":"/DimensionalData.jl/dev/tables#Tables-and-DataFrames","83":"/DimensionalData.jl/dev/tables#example","84":"/DimensionalData.jl/dev/tables#Converting-to-DataFrame","85":"/DimensionalData.jl/dev/tables#Converting-to-CSV"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[1,1,303],"1":[2,1,130],"2":[3,1,134],"3":[2,1,346],"4":[1,1,486],"5":[1,1,329],"6":[2,1,38],"7":[1,3,70],"8":[1,3,90],"9":[1,3,63],"10":[1,3,97],"11":[1,1,144],"12":[1,1,40],"13":[1,1,161],"14":[2,1,1],"15":[1,2,335],"16":[3,2,223],"17":[2,2,230],"18":[4,2,112],"19":[3,1,346],"20":[2,1,407],"21":[4,1,234],"22":[1,4,59],"23":[2,4,179],"24":[7,1,87],"25":[6,7,245],"26":[3,1,176],"27":[3,3,110],"28":[1,1,222],"29":[6,1,75],"30":[2,1,256],"31":[3,1,129],"32":[2,1,118],"33":[1,1,93],"34":[1,1,102],"35":[3,1,77],"36":[2,1,68],"37":[1,2,18],"38":[2,3,55],"39":[2,3,47],"40":[1,2,106],"41":[1,2,54],"42":[4,2,91],"43":[2,1,22],"44":[2,2,114],"45":[3,2,207],"46":[1,2,287],"47":[3,2,141],"48":[1,1,216],"49":[1,1,59],"50":[1,1,1],"51":[2,1,69],"52":[2,1,38],"53":[2,1,12],"54":[2,1,18],"55":[2,1,24],"56":[2,1,18],"57":[2,1,34],"58":[2,1,15],"59":[2,1,9],"60":[2,1,39],"61":[1,2,83],"62":[1,2,82],"63":[1,2,23],"64":[1,2,188],"65":[2,3,51],"66":[1,2,135],"67":[2,1,51],"68":[2,1,66],"69":[3,2,1],"70":[2,5,21],"71":[3,5,32],"72":[2,5,19],"73":[1,1,198],"74":[1,1,215],"75":[2,1,157],"76":[1,1,319],"77":[1,1,89],"78":[3,1,171],"79":[3,1,127],"80":[2,1,139],"81":[1,1,68],"82":[3,1,71],"83":[1,3,115],"84":[3,3,251],"85":[3,3,85]},"averageFieldLength":[2.0232558139534884,1.744186046511628,125.18604651162791],"storedFields":{"0":{"title":"Dimensions","titles":[]},"1":{"title":"Exported methods","titles":["Dimensions"]},"2":{"title":"Non-exported methods","titles":["Dimensions"]},"3":{"title":"Primitive methods","titles":["Dimensions"]},"4":{"title":"Lookups","titles":[]},"5":{"title":"Selectors","titles":["Lookups"]},"6":{"title":"Lookup traits","titles":["Lookups"]},"7":{"title":"Order","titles":["Lookups","Lookup traits"]},"8":{"title":"Span","titles":["Lookups","Lookup traits"]},"9":{"title":"Sampling","titles":["Lookups","Lookup traits"]},"10":{"title":"Positions","titles":["Lookups","Lookup traits"]},"11":{"title":"Metadata","titles":["Lookups"]},"12":{"title":"Installation","titles":[]},"13":{"title":"Basics","titles":[]},"14":{"title":"API Reference","titles":[]},"15":{"title":"Arrays","titles":["API Reference"]},"16":{"title":"Multi-array datasets","titles":["API Reference"]},"17":{"title":"Dimension generators","titles":["API Reference"]},"18":{"title":"Tables.jl/TableTraits.jl interface","titles":["API Reference"]},"19":{"title":"Group by methods","titles":[]},"20":{"title":"Utility methods","titles":[]},"21":{"title":"Global lookup strictness settings","titles":[]},"22":{"title":"Name","titles":["Global lookup strictness settings"]},"23":{"title":"Internal interface","titles":["Global lookup strictness settings"]},"24":{"title":"Dimensional broadcasts with @d and broadcast_dims","titles":[]},"25":{"title":"Example: scaling along the time dimension","titles":["Dimensional broadcasts with @d and broadcast_dims"]},"26":{"title":"CUDA & GPUs","titles":[]},"27":{"title":"GPU Integration goals","titles":["CUDA & GPUs"]},"28":{"title":"DimArrays","titles":[]},"29":{"title":"Constructing DimArray with arbitrary dimension names","titles":["DimArrays"]},"30":{"title":"Dimensional Indexing","titles":["DimArrays"]},"31":{"title":"Begin End indexing","titles":["DimArrays"]},"32":{"title":"dims keywords","titles":["DimArrays"]},"33":{"title":"Performance","titles":["DimArrays"]},"34":{"title":"Dimensions","titles":[]},"35":{"title":"DiskArrays.jl compatibility","titles":[]},"36":{"title":"Extending DimensionalData","titles":[]},"37":{"title":"dims","titles":["Extending DimensionalData"]},"38":{"title":"Dimension axes","titles":["Extending DimensionalData","dims"]},"39":{"title":"dims keywords","titles":["Extending DimensionalData","dims"]},"40":{"title":"rebuild","titles":["Extending DimensionalData"]},"41":{"title":"format","titles":["Extending DimensionalData"]},"42":{"title":"Interfaces.jl interface testing","titles":["Extending DimensionalData"]},"43":{"title":"Group By","titles":[]},"44":{"title":"Grouping functions","titles":["Group By"]},"45":{"title":"Grouping and reducing","titles":["Group By"]},"46":{"title":"Binning","titles":["Group By"]},"47":{"title":"Select by Dimension","titles":["Group By"]},"48":{"title":"Getters","titles":[]},"49":{"title":"Predicates","titles":["Getters"]},"50":{"title":"Integrations","titles":[]},"51":{"title":"Rasters.jl","titles":["Integrations"]},"52":{"title":"YAXArrays.jl","titles":["Integrations"]},"53":{"title":"ClimateBase.jl","titles":["Integrations"]},"54":{"title":"ArviZ.jl","titles":["Integrations"]},"55":{"title":"JuMP.jl","titles":["Integrations"]},"56":{"title":"CryoGrid.jl","titles":["Integrations"]},"57":{"title":"DynamicGrids.jl","titles":["Integrations"]},"58":{"title":"AstroImages.jl","titles":["Integrations"]},"59":{"title":"TimeseriesTools.jl","titles":["Integrations"]},"60":{"title":"Modifying objects","titles":[]},"61":{"title":"modify","titles":["Modifying objects"]},"62":{"title":"reorder","titles":["Modifying objects"]},"63":{"title":"mergedims","titles":["Modifying objects"]},"64":{"title":"rebuild","titles":["Modifying objects"]},"65":{"title":"rebuild magic","titles":["Modifying objects","rebuild"]},"66":{"title":"set","titles":["Modifying objects"]},"67":{"title":"Plots.jl","titles":[]},"68":{"title":"Makie.jl","titles":[]},"69":{"title":"Test series plots","titles":["Makie.jl"]},"70":{"title":"default colormap","titles":["Makie.jl","Test series plots"]},"71":{"title":"A different colormap","titles":["Makie.jl","Test series plots"]},"72":{"title":"with markers","titles":["Makie.jl","Test series plots"]},"73":{"title":"Selectors","titles":[]},"74":{"title":"Lookups","titles":["Selectors"]},"75":{"title":"Lookup autodetection","titles":["Selectors"]},"76":{"title":"DimSelector","titles":["Selectors"]},"77":{"title":"DimStacks","titles":[]},"78":{"title":"NamedTuple-like indexing","titles":["DimStacks"]},"79":{"title":"Array-like indexing","titles":["DimStacks"]},"80":{"title":"Reducing functions","titles":["DimStacks"]},"81":{"title":"Performance","titles":["DimStacks"]},"82":{"title":"Tables and DataFrames","titles":[]},"83":{"title":"Example","titles":["Tables and DataFrames"]},"84":{"title":"Converting to DataFrame","titles":["Tables and DataFrames"]},"85":{"title":"Converting to CSV","titles":["Tables and DataFrames"]}},"dirtCount":0,"index":[["q",{"2":{"84":1}}],["quite",{"2":{"64":1}}],["quick",{"2":{"46":1}}],["quarters",{"2":{"19":1}}],["quantity",{"2":{"5":1}}],["quot",{"2":{"3":2,"6":2,"15":4,"34":2}}],["query",{"2":{"1":16,"3":6,"15":16,"48":1}}],["─────┼──────────────────────────────────────────────────────────────────────────",{"2":{"84":1}}],["──────┼───────────────────────────────────────────",{"2":{"84":1}}],["──────┼───────────────────────────────────────────────",{"2":{"84":1}}],["──────┼──────────────────────────────────",{"2":{"84":1}}],["⋯",{"2":{"84":6}}],["$st",{"2":{"81":2}}],["$da4",{"2":{"33":2}}],["▃",{"2":{"33":1}}],["▆█",{"2":{"33":2}}],["▂",{"2":{"33":3}}],["▇▃▁▁▁▁▁▁▁▁▁▁▁▁█▆▁▁▁▁▁▁▁▁▁▁▁▁▃▂▁▁▁▁▁▁▁▁▁▁▁▁▃▂▁▁▁▁▁▁▁▁▁▁▁▁▂▂",{"2":{"33":1}}],["██▁▁▁▁▁▁▁▁▁██▁▁▁▁▁▁▁▁▁▁██▁▁▁▁▁▁▁▁▁██▁▁▁▁▁▁▁▁▁▁▄▅▁▁▁▁▁▁▁▁▁▄",{"2":{"33":1}}],["█",{"2":{"33":2}}],["σ",{"2":{"33":4}}],["±",{"2":{"33":8}}],["┊",{"2":{"33":6}}],["~",{"2":{"31":2}}],["└",{"2":{"31":2}}],["└──────────────────────┘",{"2":{"15":4}}],["└─────────────────────────────────┘",{"2":{"29":1,"30":1}}],["└────────────────────────────────────────────────────────┘",{"2":{"21":1}}],["└───────────────────────────────────────────────────────────┘",{"2":{"15":1}}],["└────────────────────────────────────────────────────────────────┘",{"2":{"28":11,"29":1,"30":1,"31":2,"33":1,"61":3,"66":1}}],["└────────────────────────────────────────────────────────────────────┘",{"2":{"26":1}}],["└────────────────────────────────────────────────────────────────────────┘",{"2":{"19":1}}],["└─────────────────────────────────────────────────────────────────────────┘",{"2":{"17":1,"20":3}}],["└───────────────────────────────────────────────────────────────────────────┘",{"2":{"20":1}}],["└──────────────────────────────────────────────────────────────────────────────┘",{"2":{"0":3,"5":1,"13":3,"25":8,"30":2,"32":2,"45":8,"46":11,"47":3,"48":1,"62":2,"64":2,"66":5,"73":15,"74":1,"75":1,"76":5,"77":1,"78":8,"79":1,"80":25,"83":2,"84":1}}],["└──────────────────────────────────────────────────────────────────────────┘",{"2":{"4":1}}],["└───────────────────────────────────────────────────────────────────────┘",{"2":{"19":2}}],["└─────────────────────────────────────────────────────────────────────┘",{"2":{"15":3,"20":1}}],["└─────────────────────────────────────────────────────────────────┘",{"2":{"17":2}}],["└─────────────────────────────────────────────────────────────┘",{"2":{"5":1,"15":1}}],["└────────────────────────────────────────────────────────────┘",{"2":{"5":2}}],["└─────────────────────────────────────────────┘",{"2":{"17":1}}],["└─────────────────────────────┘",{"2":{"18":1}}],["└───────────────────────────┘",{"2":{"1":1,"3":1,"15":1}}],["┌",{"2":{"31":2}}],["⋱",{"2":{"25":5,"26":1,"45":1,"47":2,"76":2,"83":1,"84":1}}],["├───────────────┴────────────────────────────────────────────────────────",{"2":{"77":1,"78":6,"80":24}}],["├────────────────┴───────────────────────────────────────────────────────",{"2":{"84":1}}],["├───────────────────┴────────────────────────────────────────────────────",{"2":{"83":1}}],["├────────────────────┴───────────────────────────────────────────────────",{"2":{"79":1}}],["├─────────────────────┴──────────────────────────────────────────────────",{"2":{"80":1}}],["├──────────────────────┴───────────────────────────────────",{"2":{"61":2}}],["├────────────────────────┴─────────────────────────────────",{"2":{"28":1}}],["├─────────────────────────┴────────────────────────────────",{"2":{"29":1,"31":2,"33":1}}],["├─────────────────────────┴─────────────────────────────────",{"2":{"17":2}}],["├─────────────────────────┴─────────────────────────────────────────",{"2":{"17":1,"20":3}}],["├─────────────────────────┴───────────────────────────────────────────",{"2":{"20":1}}],["├─────────────────────────┴──────────────────────────────────────────────",{"2":{"13":2,"30":1,"73":13,"75":1,"76":3}}],["├─────────────────────────┴──────────────────────────────────────────",{"2":{"4":1}}],["├─────────────────────────┴─────────────────────────────────────",{"2":{"15":3,"20":1}}],["├───────────────────────────┴────────────────────────────────────────────",{"2":{"32":2,"48":1,"76":1}}],["├─────────────────────────────┴────────────────────────────",{"2":{"28":1}}],["├─────────────────────────────┴──────────────────────────────────────────",{"2":{"13":1}}],["├───────────────────────────────┴",{"2":{"29":1,"30":1}}],["├───────────────────────────────┴──────────────────────────",{"2":{"28":2}}],["├───────────────────────────────┴──────────────────────────────",{"2":{"26":1}}],["├───────────────────────────────┴────────────────────────────────────────",{"2":{"25":4,"45":1,"46":3,"73":2}}],["├─────────────────────────────────┴──────────────────────────────────────",{"2":{"45":3,"78":1}}],["├───────────────────────────────────┴────────────────────────────────────",{"2":{"64":1,"83":1}}],["├───────────────────────────────────┴──────────────────────",{"2":{"28":1}}],["├──────────────────────────────────────┴─────────────────────────────────",{"2":{"25":1}}],["├────────────────────────────────────────────┴───────────────────────────",{"2":{"74":1}}],["├──────────────────────────────────────────────────┴─────────────────────",{"2":{"46":7}}],["├────────────────────────────────────────────────────────",{"2":{"61":1}}],["├───────────────────────────────────────────────────────────",{"2":{"19":1}}],["├──────────────────────────────────────────────────────────────────",{"2":{"45":1,"46":8,"47":1}}],["├──────────────────────────────────────────────────────────────────────",{"2":{"77":1,"78":6,"79":1,"80":25,"83":1,"84":1}}],["├────────────────────────────────────────────────────────────────────",{"2":{"45":7,"46":11,"47":2,"64":1}}],["├──────────────────────────────────────────────────────────────",{"2":{"19":1}}],["├─────────────────────────────────────────────────────────────",{"2":{"19":2}}],["├──────────────────────────────────────────────────────┴─────────────────",{"2":{"47":1}}],["├──────────────────────────────────────────────────────",{"2":{"28":5}}],["├───────────────────────────────────────────────────┴────────────────────",{"2":{"45":1,"46":1}}],["├───────────────────────────────────────────────────┴─────────────",{"2":{"19":1}}],["├────────────────────────────────────────────────",{"2":{"21":1}}],["├────────────────────────────────────────┴───────────────────────────────",{"2":{"25":1}}],["├───────────────────────────────────────",{"2":{"17":1}}],["├───────────────────────────────────────┴─────────────",{"2":{"15":1}}],["├───────────────────────────────────────┴───────────────",{"2":{"15":1}}],["├────────────────────────────────┴─────────────────────────",{"2":{"28":1}}],["├────────────────────────────────┴────────────────────────────────",{"2":{"19":1}}],["├────────────────────────────────┴───────────────────────────────────────",{"2":{"0":1,"25":2,"45":3}}],["├────────────────────────────┴───────────────────────────────────────────",{"2":{"0":1,"30":1,"47":2,"76":1,"78":1}}],["├──────────────────────────┴───────────────────────────────",{"2":{"28":5,"30":1,"66":1}}],["├──────────────────────────┴───────────────────────────────────────",{"2":{"19":1}}],["├──────────────────────────┴─────────────────────────────────────────────",{"2":{"0":1,"62":2,"64":1,"66":5}}],["├───────────────────────",{"2":{"18":1}}],["├───────────────────────┴────────────────────────────────────────────────",{"2":{"5":1}}],["├───────────────────────┴───────────────────────────────",{"2":{"5":1}}],["├───────────────────────┴──────────────────────────────",{"2":{"5":2}}],["├─────────────────────",{"2":{"1":1,"3":1,"15":1}}],["├────────────────",{"2":{"15":4}}],["├──────────────┴───────────────────────────────────────────",{"2":{"61":1}}],["├──────────────┴───────────────────────────────────",{"2":{"21":1}}],["╭────────────────╮",{"2":{"84":1}}],["╭───────────────────╮",{"2":{"83":1}}],["╭─────────────────────╮",{"2":{"80":1}}],["╭──────────────────────╮",{"2":{"15":4,"61":2}}],["╭────────────────────────╮",{"2":{"28":1}}],["╭─────────────────────────╮",{"2":{"4":1,"13":2,"15":3,"17":3,"20":5,"29":1,"30":1,"31":2,"33":1,"73":13,"75":1,"76":3}}],["╭───────────────────────────╮",{"2":{"1":1,"3":1,"15":1,"32":2,"48":1,"76":1}}],["╭───────────────────────────────╮",{"2":{"25":4,"26":1,"28":2,"29":1,"30":1,"45":1,"46":3,"73":2}}],["╭─────────────────────────────────╮",{"2":{"45":3,"78":1}}],["╭───────────────────────────────────╮",{"2":{"28":1,"64":1,"83":1}}],["╭──────────────────────────────────────╮",{"2":{"25":1}}],["╭────────────────────────────────────────────╮",{"2":{"74":1}}],["╭──────────────────────────────────────────────────────╮",{"2":{"47":1}}],["╭───────────────────────────────────────────────────╮",{"2":{"19":1,"45":1,"46":1}}],["╭──────────────────────────────────────────────────╮",{"2":{"46":7}}],["╭─────────────────────────────────────────────╮",{"2":{"17":1}}],["╭────────────────────────────────────────╮",{"2":{"25":1}}],["╭───────────────────────────────────────╮",{"2":{"15":2}}],["╭────────────────────────────────╮",{"2":{"0":1,"19":1,"25":2,"28":1,"45":3}}],["╭─────────────────────────────╮",{"2":{"13":1,"18":1,"28":1}}],["╭────────────────────────────╮",{"2":{"0":1,"30":1,"47":2,"76":1,"78":1}}],["╭──────────────────────────╮",{"2":{"0":1,"19":1,"28":5,"30":1,"62":2,"64":1,"66":6}}],["╭───────────────────────╮",{"2":{"5":4}}],["╭────────────────────╮",{"2":{"79":1}}],["╭───────────────╮",{"2":{"77":1,"78":6,"80":24}}],["╭──────────────╮",{"2":{"21":1,"61":1}}],["+",{"2":{"20":3,"80":2}}],["⋮",{"2":{"19":3,"25":10,"26":1,"44":8,"45":9,"46":3,"47":3,"76":3,"79":1,"83":2,"84":24,"85":1}}],["|>",{"2":{"13":1}}],["𝐓",{"2":{"5":2}}],[">=",{"2":{"73":1}}],[">",{"2":{"5":3,"16":1,"46":2,"73":1}}],["94",{"2":{"84":1}}],["9447511416331498",{"2":{"85":1}}],["944751",{"2":{"84":2}}],["94412",{"2":{"30":1}}],["947312",{"2":{"83":1}}],["947741",{"2":{"28":1}}],["9436941638102098",{"2":{"79":1}}],["946655",{"2":{"76":1}}],["946824",{"2":{"48":1}}],["94196",{"2":{"76":1}}],["941133",{"2":{"17":1}}],["942925",{"2":{"75":1}}],["948976",{"2":{"48":1}}],["948512",{"2":{"28":3}}],["94018e",{"2":{"45":1}}],["945371",{"2":{"30":1}}],["949105",{"2":{"28":3}}],["925267535912165",{"2":{"79":1,"81":2}}],["925873",{"2":{"28":3}}],["92",{"2":{"76":1}}],["921567",{"2":{"84":1}}],["921958",{"2":{"83":1,"84":2}}],["921012",{"2":{"48":1}}],["921145",{"2":{"48":1}}],["920736",{"2":{"30":1}}],["92721",{"2":{"26":1}}],["92977",{"2":{"76":1}}],["929995",{"2":{"26":1}}],["929592",{"2":{"25":2}}],["924417",{"2":{"25":3}}],["991119595116132e",{"2":{"80":1}}],["9919365440188083",{"2":{"79":2,"80":2}}],["994295",{"2":{"76":1}}],["994",{"2":{"76":4}}],["990294",{"2":{"76":1}}],["992316",{"2":{"30":1}}],["993498",{"2":{"28":1}}],["999193",{"2":{"45":1}}],["99903",{"2":{"45":1}}],["99999",{"2":{"45":1}}],["999983",{"2":{"45":1}}],["999708",{"2":{"45":1}}],["999815",{"2":{"45":1}}],["999816",{"2":{"28":1}}],["999846",{"2":{"45":1}}],["999678",{"2":{"28":1}}],["999",{"2":{"26":1}}],["9982064541308482",{"2":{"80":2}}],["998",{"2":{"26":1}}],["997672",{"2":{"28":3}}],["997",{"2":{"26":1}}],["99719",{"2":{"25":1}}],["996",{"2":{"26":1}}],["995",{"2":{"26":1}}],["995683",{"2":{"26":1}}],["995899",{"2":{"25":1}}],["99",{"2":{"25":5,"45":1,"47":2,"65":2,"73":1,"84":1}}],["983904",{"2":{"84":1}}],["98893",{"2":{"84":1}}],["985377",{"2":{"83":1,"84":1}}],["98534418543618",{"2":{"80":2}}],["985407",{"2":{"76":1}}],["986606",{"2":{"76":1}}],["987",{"2":{"76":1}}],["981865",{"2":{"45":1}}],["98193",{"2":{"26":1}}],["980256",{"2":{"32":1}}],["98985",{"2":{"48":1}}],["989571",{"2":{"28":3}}],["989952",{"2":{"26":1}}],["982762",{"2":{"26":1}}],["98",{"2":{"25":5,"45":1,"47":2,"76":1,"84":1}}],["9770663775826343",{"2":{"85":1}}],["977066",{"2":{"84":2}}],["973",{"2":{"76":1}}],["973586",{"2":{"76":1}}],["973622",{"2":{"75":1}}],["970459",{"2":{"30":1}}],["97999",{"2":{"25":1}}],["974596",{"2":{"25":3}}],["97",{"2":{"25":3,"45":2,"47":1,"84":1}}],["936495",{"2":{"84":1}}],["938732432349465",{"2":{"79":1}}],["938732",{"2":{"78":1}}],["938771",{"2":{"76":1}}],["93358",{"2":{"78":1}}],["931705",{"2":{"76":1}}],["932968",{"2":{"48":1}}],["930699",{"2":{"76":1}}],["930599",{"2":{"47":1}}],["930332",{"2":{"17":1}}],["934609",{"2":{"30":1}}],["93479",{"2":{"13":1}}],["935096",{"2":{"28":1}}],["909847",{"2":{"84":1}}],["9003647810614493",{"2":{"79":1}}],["900394",{"2":{"26":1}}],["907202",{"2":{"62":2,"64":2,"66":6}}],["904604",{"2":{"30":1}}],["904961",{"2":{"30":2}}],["90251",{"2":{"28":3}}],["90309",{"2":{"26":1}}],["906705",{"2":{"48":1}}],["906838",{"2":{"26":1}}],["90645",{"2":{"26":1}}],["9063",{"2":{"17":2}}],["90u",{"2":{"5":1}}],["951145",{"2":{"84":1}}],["95213",{"2":{"76":1}}],["95217",{"2":{"26":1}}],["952489",{"2":{"76":1}}],["950007",{"2":{"76":1}}],["950143",{"2":{"48":1}}],["950645",{"2":{"30":1}}],["956616",{"2":{"84":1}}],["956031",{"2":{"30":1}}],["95636",{"2":{"13":1}}],["959028",{"2":{"25":3}}],["959434",{"2":{"17":1}}],["95",{"2":{"13":1,"84":1}}],["960726",{"2":{"84":1}}],["963657",{"2":{"83":1}}],["964227",{"2":{"78":1}}],["964964",{"2":{"76":1}}],["966",{"2":{"76":1}}],["966106",{"2":{"28":2}}],["9698812177371097",{"2":{"79":1,"80":2}}],["969881",{"2":{"78":1}}],["969079",{"2":{"73":3}}],["96951",{"2":{"25":1}}],["965831",{"2":{"29":2,"31":2}}],["967865",{"2":{"25":3}}],["96",{"2":{"5":2,"45":2,"47":1,"76":1,"84":1}}],["914911",{"2":{"83":1}}],["91495",{"2":{"26":1}}],["9130495399200352",{"2":{"79":1}}],["91305",{"2":{"78":1}}],["915251",{"2":{"75":1}}],["9155",{"2":{"26":1}}],["91666",{"2":{"76":1}}],["916216",{"2":{"45":1}}],["916702",{"2":{"30":1}}],["917143",{"2":{"76":1}}],["91732",{"2":{"30":1}}],["917457",{"2":{"30":1}}],["917672",{"2":{"28":1}}],["917543",{"2":{"28":3}}],["912065",{"2":{"28":3}}],["919763",{"2":{"13":1}}],["91",{"2":{"5":2,"13":1}}],["9",{"2":{"4":2,"13":2,"17":2,"20":2,"25":3,"44":1,"46":18,"48":7,"74":1,"76":6,"78":3,"83":2,"84":4,"85":2}}],["7×5",{"2":{"75":1}}],["7×3",{"2":{"30":1}}],["750622",{"2":{"76":1}}],["750947",{"2":{"76":1}}],["750906",{"2":{"30":1}}],["753744",{"2":{"76":1}}],["753597",{"2":{"76":1}}],["75275",{"2":{"46":4}}],["758149",{"2":{"75":1}}],["758865",{"2":{"30":1}}],["75847",{"2":{"26":1}}],["754468",{"2":{"29":1,"31":2}}],["75568",{"2":{"26":1}}],["70",{"2":{"75":3}}],["706417",{"2":{"45":1}}],["706267",{"2":{"29":1,"31":2}}],["708321",{"2":{"30":1}}],["704858",{"2":{"28":1}}],["7076921858340348",{"2":{"28":1}}],["707692",{"2":{"28":2}}],["702944",{"2":{"26":1}}],["70597",{"2":{"13":1}}],["738445",{"2":{"84":1}}],["734751",{"2":{"76":1}}],["73",{"2":{"46":1}}],["730",{"2":{"45":2}}],["73011",{"2":{"32":1}}],["736525",{"2":{"45":1}}],["73623",{"2":{"26":1}}],["736214",{"2":{"25":3}}],["735973",{"2":{"78":1}}],["73591",{"2":{"26":1}}],["735391",{"2":{"76":1}}],["735",{"2":{"33":1}}],["739241",{"2":{"30":1}}],["7938317326707394",{"2":{"85":1}}],["793832",{"2":{"84":2}}],["793532",{"2":{"78":1}}],["798655984630017",{"2":{"85":1}}],["798656",{"2":{"84":2}}],["798",{"2":{"76":2}}],["791844",{"2":{"75":1}}],["792553",{"2":{"75":1}}],["792885",{"2":{"25":5}}],["795274",{"2":{"76":1}}],["795",{"2":{"33":1}}],["794017",{"2":{"30":2}}],["794163",{"2":{"30":1}}],["790283",{"2":{"25":3}}],["729706",{"2":{"76":1}}],["728852",{"2":{"76":1}}],["728611",{"2":{"25":2}}],["72217",{"2":{"75":1}}],["727464",{"2":{"76":2}}],["727149",{"2":{"48":1}}],["727997",{"2":{"47":1}}],["727554",{"2":{"30":1}}],["721331",{"2":{"30":1}}],["724709",{"2":{"28":1}}],["723438",{"2":{"28":2}}],["725738",{"2":{"25":3}}],["72",{"2":{"13":1,"46":1}}],["773256",{"2":{"84":1}}],["775634",{"2":{"78":1}}],["770101",{"2":{"76":1}}],["770553",{"2":{"62":2,"64":2,"66":6}}],["777391",{"2":{"76":2}}],["772277",{"2":{"73":5}}],["778122",{"2":{"78":1}}],["778166",{"2":{"28":2}}],["778222",{"2":{"26":1}}],["774092",{"2":{"15":1,"17":1}}],["774731",{"2":{"13":1}}],["77",{"2":{"13":1}}],["74172",{"2":{"83":1,"84":1}}],["74191",{"2":{"28":1}}],["743407",{"2":{"83":1}}],["747615",{"2":{"76":1}}],["748884",{"2":{"76":1}}],["748041",{"2":{"73":8}}],["749553",{"2":{"78":1}}],["749731",{"2":{"75":1}}],["749253",{"2":{"48":1}}],["749267",{"2":{"45":1,"47":2}}],["745856",{"2":{"66":1}}],["745673",{"2":{"15":1,"17":2}}],["742852",{"2":{"47":1}}],["74204",{"2":{"25":2}}],["740523",{"2":{"28":1}}],["740735",{"2":{"28":1}}],["74",{"2":{"13":2}}],["7683418213117802",{"2":{"85":1}}],["768342",{"2":{"84":2}}],["768924169642427",{"2":{"85":1}}],["768924",{"2":{"84":2}}],["768488",{"2":{"73":3}}],["76448",{"2":{"78":1}}],["764613",{"2":{"28":3}}],["767151",{"2":{"76":1}}],["76547e",{"2":{"45":1}}],["762533",{"2":{"45":1}}],["762794",{"2":{"13":1}}],["760111",{"2":{"32":1}}],["760205",{"2":{"28":3}}],["761212",{"2":{"30":1}}],["76163",{"2":{"25":3}}],["769313",{"2":{"30":1}}],["76",{"2":{"13":2}}],["713814",{"2":{"84":1}}],["7140841681506571",{"2":{"79":1}}],["714084",{"2":{"78":1}}],["714286",{"2":{"29":1,"31":2}}],["717841",{"2":{"76":1}}],["717006",{"2":{"76":1}}],["712342",{"2":{"76":2}}],["712711",{"2":{"28":1}}],["715102",{"2":{"48":1}}],["711133",{"2":{"73":12}}],["711714",{"2":{"32":1}}],["71194",{"2":{"28":1}}],["719779",{"2":{"84":1}}],["719495",{"2":{"30":1}}],["719974",{"2":{"26":1}}],["710967",{"2":{"28":3}}],["71",{"2":{"13":2}}],["789667",{"2":{"84":1}}],["789637",{"2":{"47":2}}],["781497",{"2":{"78":1}}],["788252",{"2":{"76":1}}],["785",{"2":{"33":1}}],["786147",{"2":{"30":1}}],["7802406914680406",{"2":{"79":1}}],["78028",{"2":{"26":1}}],["780196",{"2":{"28":1}}],["780132",{"2":{"28":2}}],["78",{"2":{"13":3,"33":1}}],["7",{"2":{"4":4,"5":5,"13":1,"25":5,"28":102,"30":6,"44":10,"45":1,"46":5,"48":9,"74":1,"75":1,"78":3,"80":21,"83":1,"84":12,"85":2}}],["rows",{"2":{"84":4}}],["row",{"2":{"84":4}}],["rot180",{"2":{"80":2}}],["rotr90",{"2":{"80":2}}],["rotl90",{"2":{"80":2}}],["rotated",{"2":{"4":1,"80":1}}],["rotations",{"2":{"3":1}}],["runtime",{"2":{"33":1}}],["running",{"2":{"26":1,"46":1}}],["rule",{"2":{"21":2}}],["r",{"2":{"15":2,"84":1}}],["right",{"2":{"13":3,"66":2,"68":2}}],["rtol=nothing",{"2":{"5":1}}],["rainclouds",{"2":{"68":1}}],["raw",{"2":{"46":1}}],["rarely",{"2":{"35":1}}],["rasterization",{"2":{"51":1}}],["rasterize",{"2":{"5":1}}],["raster",{"2":{"36":1,"51":3}}],["rasterstack",{"2":{"36":1,"51":1}}],["rasters",{"0":{"51":1},"2":{"4":3,"20":1,"35":1,"36":1,"51":2,"52":1}}],["randn",{"2":{"21":2}}],["random",{"2":{"15":3}}],["rand",{"2":{"4":3,"13":3,"15":9,"17":3,"19":1,"20":1,"25":1,"26":1,"28":6,"29":1,"30":1,"32":1,"42":4,"45":1,"48":1,"62":1,"68":1,"70":1,"73":1,"75":1,"76":3,"78":3,"83":2}}],["ranges",{"2":{"5":1,"19":1,"31":1,"46":6,"73":3,"75":4}}],["range",{"2":{"4":2,"5":4,"15":2,"20":1,"33":2,"41":1,"44":2,"46":1,"51":1,"73":1,"75":1}}],["rather",{"2":{"3":1,"4":2,"5":1,"9":1,"19":2,"27":1,"60":1,"62":1}}],["red",{"2":{"71":1,"72":1}}],["reductions",{"2":{"15":1,"35":1}}],["reducing",{"0":{"45":1,"80":1},"2":{"15":1,"19":3}}],["reduce",{"2":{"3":1,"19":2,"32":1,"80":2}}],["reduced",{"2":{"3":1}}],["reducedims",{"2":{"3":1}}],["receive",{"2":{"40":1}}],["reconstruction",{"2":{"15":1,"40":1}}],["recommended",{"2":{"12":1}}],["rev",{"2":{"20":2}}],["reversal",{"2":{"20":1}}],["reverseordered",{"2":{"4":5,"7":3,"46":1,"48":15,"49":14,"62":5,"75":2,"76":2,"80":8}}],["reverse",{"2":{"4":1,"7":1,"20":4,"32":1,"48":1,"62":1,"80":1}}],["reversed",{"2":{"4":1}}],["reordering",{"2":{"20":1}}],["reorder",{"0":{"62":1},"2":{"20":8,"62":4,"68":1}}],["relationships",{"2":{"35":1}}],["related",{"2":{"27":1}}],["relying",{"2":{"19":1}}],["reliable",{"2":{"4":1}}],["reasons",{"2":{"51":1}}],["reason",{"2":{"27":1,"51":1}}],["readlines",{"2":{"85":1}}],["read",{"2":{"23":2}}],["reading",{"2":{"19":1}}],["real",{"2":{"4":1}}],["really",{"2":{"3":1,"65":1}}],["remove",{"2":{"21":4}}],["removed",{"2":{"5":1}}],["removing",{"2":{"16":1}}],["reshape",{"2":{"24":1,"63":1}}],["reshaping",{"2":{"20":2}}],["restored",{"2":{"20":1}}],["resshape",{"2":{"20":1}}],["resolve",{"2":{"16":1,"31":1}}],["result",{"2":{"5":1,"16":1,"20":3,"26":1,"31":1,"82":1}}],["results",{"2":{"5":2,"19":2,"67":1}}],["rebuilt",{"2":{"15":1,"20":1,"60":1}}],["rebuilding",{"2":{"20":1}}],["rebuild",{"0":{"40":1,"64":1,"65":1},"1":{"65":1},"2":{"4":2,"15":3,"16":2,"20":6,"23":54,"27":1,"36":1,"40":7,"42":40,"64":6,"65":2,"66":1}}],["requires",{"2":{"39":1,"46":1}}],["require",{"2":{"9":1}}],["required",{"2":{"0":1,"3":1,"11":1,"18":1,"20":4,"27":1}}],["repl",{"2":{"74":1}}],["replaces",{"2":{"3":1,"27":1}}],["replaced",{"2":{"3":1,"8":1}}],["replace",{"2":{"3":2,"20":1,"61":1}}],["represents",{"2":{"38":1,"77":1}}],["representing",{"2":{"4":1}}],["represent",{"2":{"4":1,"10":1}}],["refdim",{"2":{"23":1}}],["refdims=refdims",{"2":{"16":1}}],["refdims=",{"2":{"15":1}}],["refdims",{"2":{"15":9,"20":2,"23":21,"40":1,"42":12,"64":2}}],["refence",{"2":{"15":1}}],["reference",{"0":{"14":1},"1":{"15":1,"16":1,"17":1,"18":1},"2":{"3":2,"15":3,"23":1,"36":1}}],["refer",{"2":{"0":1,"9":1}}],["ref",{"2":{"3":1}}],["rewraps",{"2":{"3":1}}],["retrieved",{"2":{"34":1}}],["retrieves",{"2":{"5":1,"48":1}}],["retrieve",{"2":{"2":1,"5":1,"48":1}}],["returning",{"2":{"3":1,"11":1,"21":2,"80":1}}],["returns",{"2":{"2":1,"3":3,"5":1,"11":2,"15":3,"16":2,"17":1,"19":1,"23":2,"42":2,"46":3,"48":1,"79":1}}],["returned",{"2":{"1":1,"3":2,"4":1,"11":1,"15":1,"19":2,"20":4,"34":1,"49":1}}],["return",{"2":{"1":3,"3":3,"4":8,"5":2,"15":6,"16":7,"19":7,"20":7,"37":1,"38":2,"39":2,"44":1,"48":1,"49":1,"79":2,"81":1}}],["regular",{"2":{"0":5,"2":1,"4":7,"5":4,"8":4,"10":2,"13":4,"15":5,"17":2,"18":1,"19":2,"20":9,"21":1,"24":2,"25":19,"26":3,"30":2,"36":1,"39":1,"45":2,"46":1,"47":5,"48":30,"49":28,"62":2,"64":2,"66":5,"73":7,"74":3,"75":3,"76":6,"77":2,"78":15,"79":1,"80":49,"83":4,"84":2}}],["k",{"2":{"84":1}}],["kind",{"2":{"44":1}}],["kinds",{"2":{"15":4,"28":1}}],["knowing",{"2":{"30":1}}],["knows",{"2":{"25":1,"36":1}}],["know",{"2":{"19":1,"24":1,"64":1,"65":1}}],["known",{"2":{"4":5,"10":1,"30":1}}],["kw",{"2":{"3":5,"4":1,"5":1,"11":1,"15":10,"16":5,"20":3,"23":17,"40":2,"42":10,"64":2}}],["kernels",{"2":{"27":1}}],["kernelabstractions",{"2":{"27":1}}],["kernel",{"2":{"27":1}}],["keeping",{"2":{"3":1}}],["keep",{"2":{"3":1,"20":2,"22":1,"46":1}}],["key",{"2":{"21":3,"36":1,"82":1}}],["keys=",{"2":{"21":2}}],["keys=keys",{"2":{"21":2}}],["keys",{"2":{"0":1,"11":2,"16":1,"21":2,"23":4,"46":1,"78":2}}],["keywords",{"0":{"32":1,"39":1},"2":{"3":2,"4":2,"15":4,"17":2,"18":1,"19":5,"20":1,"21":1,"23":5,"29":1,"31":1,"32":1,"40":1,"41":1,"42":2,"64":4,"65":1}}],["keyword",{"2":{"0":1,"4":3,"5":1,"15":1,"16":1,"19":1,"20":2,"21":1,"39":1,"40":2,"65":1}}],["kept",{"2":{"0":1,"3":1}}],["┤",{"2":{"1":1,"3":1,"15":5,"17":1,"18":1,"19":4,"21":1,"28":5,"45":8,"46":19,"47":3,"61":1,"64":1,"77":1,"78":6,"79":1,"80":25,"83":1,"84":1}}],["u",{"2":{"84":1}}],["utility",{"0":{"20":1}}],["updating",{"2":{"40":1}}],["update",{"2":{"20":3}}],["updates",{"2":{"15":1,"23":6,"42":6}}],["updated",{"2":{"3":2,"20":4,"23":6,"42":6}}],["upperbound",{"2":{"8":1}}],["upper",{"2":{"5":1,"8":1}}],["unrolled",{"2":{"82":1}}],["unambiguous",{"2":{"48":1}}],["unaltered",{"2":{"4":1}}],["unaligned",{"2":{"4":4}}],["unclosed",{"2":{"23":1}}],["unmerged",{"2":{"20":1}}],["unmergedims",{"2":{"20":2}}],["unmatched",{"2":{"1":1,"15":1}}],["unknown",{"2":{"17":1,"75":1}}],["underneath",{"2":{"65":1}}],["underlying",{"2":{"1":1,"15":1,"21":1}}],["undefined",{"2":{"4":1,"15":2,"19":1,"41":1}}],["unless",{"2":{"4":4,"5":1,"31":1,"75":1,"82":1}}],["unlike",{"2":{"3":2,"11":1,"17":1,"66":1}}],["unordered",{"2":{"4":6,"7":3,"46":3,"66":2,"74":2,"75":2}}],["unitrange",{"2":{"19":2,"46":3,"73":2}}],["unit",{"2":{"11":2}}],["unitful",{"2":{"5":3}}],["units",{"2":{"2":1,"11":5}}],["unionall",{"2":{"3":1}}],["union",{"2":{"2":1,"3":1,"4":5,"5":1,"11":3,"19":2,"20":2,"22":1}}],["usual",{"2":{"24":1}}],["usually",{"2":{"0":1,"3":2,"15":1,"39":1,"44":1,"66":1,"73":1,"74":2,"81":1}}],["us",{"2":{"11":1,"30":1,"34":1,"66":1}}],["user",{"2":{"35":1}}],["uses",{"2":{"4":1,"8":1,"27":2,"34":1,"56":1,"59":1,"64":1}}],["useful",{"2":{"1":1,"3":3,"4":6,"17":1,"20":1,"48":1,"61":1,"64":1}}],["use",{"2":{"0":3,"3":1,"4":2,"5":3,"7":1,"11":1,"12":1,"15":2,"16":3,"17":1,"20":3,"21":4,"22":3,"25":1,"26":1,"29":1,"30":1,"31":1,"40":1,"45":1,"46":5,"49":1,"64":1,"73":1,"76":1,"82":1}}],["used",{"2":{"0":7,"2":1,"3":4,"4":7,"5":6,"6":1,"8":1,"9":1,"10":7,"16":2,"17":4,"19":9,"20":4,"21":1,"30":2,"31":2,"32":1,"34":1,"35":1,"40":3,"44":1,"45":1,"48":1,"57":1,"64":1,"68":1,"74":1,"75":3}}],["using",{"2":{"0":2,"1":4,"3":1,"4":5,"5":3,"11":2,"12":2,"13":1,"15":10,"16":1,"17":2,"18":2,"19":1,"20":6,"21":3,"25":2,"27":1,"28":1,"29":1,"31":1,"32":1,"33":1,"34":1,"40":2,"42":1,"44":2,"45":1,"48":3,"61":1,"62":1,"73":2,"74":1,"77":1,"81":1,"83":2,"84":2}}],["v",{"2":{"84":1}}],["visualise",{"2":{"58":1}}],["via",{"2":{"35":1}}],["views",{"2":{"21":2,"56":1}}],["view",{"2":{"3":1,"15":1,"16":2,"17":1,"31":1}}],["very",{"2":{"16":2,"52":1,"64":1,"81":1}}],["versions",{"2":{"40":2}}],["version",{"2":{"12":1,"16":1,"20":2,"40":1,"64":1,"65":1,"82":1}}],["vectors",{"2":{"3":1,"30":1,"73":3}}],["vector",{"2":{"0":1,"4":2,"5":6,"16":1,"19":11,"20":2,"30":2,"44":8,"46":4,"48":2,"73":5,"74":3,"79":2,"85":1}}],["var",{"2":{"32":1,"80":2}}],["variable",{"2":{"20":1,"60":1,"68":1}}],["vararg",{"2":{"1":4,"2":3,"3":6,"4":5,"15":10,"16":2,"18":1,"20":3,"23":1,"30":1}}],["valtype",{"2":{"3":1}}],["valid",{"2":{"3":1}}],["val",{"2":{"2":2,"3":1,"4":4,"11":1,"20":5,"34":2,"39":2,"48":3,"64":4}}],["val=",{"2":{"0":5}}],["value",{"2":{"0":1,"3":2,"4":2,"5":15,"8":1,"9":1,"10":1,"15":5,"16":3,"17":1,"19":7,"22":1,"28":1,"29":1,"34":1,"48":2,"73":4,"81":1}}],["values=autovalues",{"2":{"4":1}}],["values",{"2":{"0":1,"2":1,"3":4,"4":15,"5":17,"7":1,"9":2,"10":6,"15":1,"16":3,"17":5,"19":8,"20":3,"21":5,"23":1,"24":1,"38":1,"40":1,"44":1,"46":5,"60":1,"63":1,"64":1,"66":2,"67":1,"73":5,"74":5,"75":3,"76":1,"79":2}}],["nanoseconds",{"2":{"81":1}}],["names",{"0":{"29":1},"2":{"18":1,"20":2,"21":4,"22":1,"24":1,"29":1,"34":2,"48":1,"73":1,"74":1}}],["name=nothing",{"2":{"16":1}}],["name=noname",{"2":{"15":1}}],["name=",{"2":{"15":1,"16":3,"20":1,"25":1,"28":5,"64":1,"83":1}}],["name2dim",{"2":{"3":3}}],["name",{"0":{"22":1},"2":{"2":1,"15":10,"18":2,"20":4,"22":11,"23":4,"24":1,"27":3,"29":1,"34":2,"40":1,"42":4,"64":2,"73":1,"77":1,"78":2,"82":2}}],["namedtuple",{"0":{"78":1},"2":{"11":3,"16":12,"20":3,"23":2,"25":1,"77":2,"78":1,"79":4,"81":1}}],["named",{"2":{"0":1,"10":2,"22":1,"28":1,"31":1,"34":1,"55":1,"71":1}}],["n=rand",{"2":{"78":1}}],["nt",{"2":{"65":2}}],["ntuple",{"2":{"1":3,"2":3,"15":5}}],["night",{"2":{"46":4}}],["nice",{"2":{"46":1}}],["ncdatasets",{"2":{"35":1}}],["ns",{"2":{"33":14,"81":2}}],["ndims",{"2":{"23":5,"42":3}}],["nvidia",{"2":{"20":1}}],["neighbor",{"2":{"76":1}}],["neighbour",{"2":{"17":1}}],["necessary",{"2":{"22":1}}],["necessarily",{"2":{"20":1}}],["netcdf",{"2":{"10":1,"35":1}}],["next",{"2":{"5":1}}],["needed",{"2":{"27":1,"64":1,"75":1}}],["needs",{"2":{"22":1,"23":1}}],["need",{"2":{"4":1,"12":1,"16":3,"19":1,"20":4,"27":3}}],["nearly",{"2":{"36":1}}],["nearsest",{"2":{"5":1}}],["nearest",{"2":{"5":3,"17":1,"76":1}}],["near",{"2":{"4":2,"5":7,"15":2,"17":2,"73":3,"76":2}}],["newdim",{"2":{"3":4}}],["newdims",{"2":{"3":4}}],["new",{"2":{"0":1,"3":5,"4":1,"15":2,"18":1,"20":13,"36":1,"40":1,"80":1}}],["nosampling",{"2":{"66":1}}],["nospan",{"2":{"66":1}}],["nov",{"2":{"46":4,"74":1}}],["now",{"2":{"44":1,"46":1,"55":1,"74":1,"79":1}}],["normalization",{"2":{"47":1}}],["normal",{"2":{"7":1,"22":1}}],["nometadata",{"2":{"4":3,"11":2,"15":1}}],["nolookup",{"2":{"4":11,"15":4,"20":1,"66":2,"74":9,"75":1}}],["no",{"2":{"2":1,"3":3,"4":2,"11":1,"20":2,"24":1,"33":1,"35":1,"66":1,"74":1,"75":1,"81":1}}],["noname",{"2":{"20":1,"22":5}}],["non",{"0":{"2":1},"2":{"15":2,"16":1}}],["notice",{"2":{"17":1,"19":1}}],["notably",{"2":{"16":2,"57":1}}],["note",{"2":{"5":1,"19":1,"20":1,"23":1,"46":2}}],["notes",{"2":{"4":1,"20":1}}],["nothing",{"2":{"1":1,"3":3,"4":1,"5":1,"8":2,"11":4,"15":1,"75":4}}],["not",{"2":{"0":1,"1":1,"3":4,"4":6,"5":8,"10":3,"11":4,"15":1,"17":2,"19":1,"20":7,"21":3,"22":2,"23":4,"24":1,"25":1,"27":1,"30":1,"31":2,"40":1,"41":1,"46":3,"48":1,"51":1,"62":1,"64":3,"66":1,"67":1,"73":4,"74":2,"75":1,"78":3,"79":1,"80":1,"82":1}}],["number",{"2":{"1":1,"3":1,"4":1,"15":1,"19":5,"23":2,"42":2,"64":1,"75":1}}],["n",{"2":{"1":1,"2":3,"3":1,"4":3,"15":3,"46":1,"62":5,"64":4,"66":6,"78":3,"84":1}}],["`refdims`",{"2":{"42":2}}],["`dims`",{"2":{"42":2}}],["`da`",{"2":{"20":1}}],["`cuarray`",{"2":{"26":1}}],["`modify`",{"2":{"26":1}}],["`openinterval",{"2":{"5":1}}],["`",{"2":{"0":1,"20":2}}],["8219054655873324",{"2":{"79":1}}],["824659",{"2":{"76":1}}],["823123",{"2":{"76":1}}],["823656",{"2":{"15":1}}],["825204",{"2":{"75":1}}],["829714",{"2":{"48":1}}],["8288995877624121",{"2":{"85":1}}],["8289",{"2":{"84":2}}],["828161",{"2":{"83":1}}],["828515",{"2":{"47":2}}],["828395",{"2":{"30":1}}],["822008",{"2":{"76":1}}],["822",{"2":{"33":1}}],["827852",{"2":{"32":1}}],["832538",{"2":{"76":1}}],["834418",{"2":{"76":1}}],["835674",{"2":{"76":1}}],["835288",{"2":{"26":1}}],["831617",{"2":{"48":1}}],["83",{"2":{"33":1}}],["837335",{"2":{"30":1}}],["836107",{"2":{"30":2}}],["839618",{"2":{"30":1}}],["830187",{"2":{"28":1}}],["83056",{"2":{"26":1}}],["8146121812750928",{"2":{"85":1}}],["8136963000324107",{"2":{"85":1}}],["813696",{"2":{"84":2}}],["819605",{"2":{"83":1,"84":1}}],["819928",{"2":{"45":1}}],["811917",{"2":{"76":1}}],["815253",{"2":{"76":1}}],["815365",{"2":{"28":2}}],["810377",{"2":{"76":1}}],["8107",{"2":{"28":1}}],["81253",{"2":{"28":1}}],["81708",{"2":{"26":1}}],["818644",{"2":{"25":3}}],["884385",{"2":{"84":1}}],["887294",{"2":{"83":1}}],["887979",{"2":{"76":1}}],["882656",{"2":{"75":1}}],["882085",{"2":{"66":1}}],["883323",{"2":{"75":1}}],["883222",{"2":{"73":9}}],["885929",{"2":{"29":1,"31":2}}],["885914",{"2":{"28":3}}],["888721",{"2":{"83":1}}],["88841",{"2":{"29":1,"31":2}}],["88869",{"2":{"26":1}}],["881149",{"2":{"26":1}}],["880853",{"2":{"76":1}}],["880796",{"2":{"30":2}}],["88092",{"2":{"26":1}}],["88058",{"2":{"26":1}}],["88",{"2":{"13":1,"76":1}}],["894053",{"2":{"84":1}}],["890574",{"2":{"83":1}}],["891596",{"2":{"76":1}}],["899356",{"2":{"76":1}}],["899632",{"2":{"48":1}}],["899864",{"2":{"45":1,"47":1}}],["89862",{"2":{"30":1}}],["895608",{"2":{"28":2}}],["896624",{"2":{"76":1}}],["896257",{"2":{"75":1}}],["89618",{"2":{"25":2}}],["896315",{"2":{"25":3}}],["893537",{"2":{"17":1}}],["89",{"2":{"13":1}}],["849707",{"2":{"84":1}}],["849576",{"2":{"66":1}}],["8428656510212863",{"2":{"85":1}}],["842866",{"2":{"84":2}}],["842029",{"2":{"78":1}}],["842792",{"2":{"45":1}}],["847872",{"2":{"76":1}}],["847018",{"2":{"30":1}}],["84475",{"2":{"76":2}}],["844547",{"2":{"13":1}}],["848624",{"2":{"76":1}}],["846736",{"2":{"76":1}}],["846",{"2":{"31":2}}],["84",{"2":{"13":1,"76":1}}],["8719143923648308",{"2":{"85":1}}],["871914",{"2":{"84":2}}],["87656",{"2":{"78":1}}],["876112",{"2":{"48":1}}],["878565",{"2":{"76":1}}],["873218",{"2":{"76":1}}],["87255",{"2":{"73":3}}],["875108",{"2":{"47":1}}],["875221",{"2":{"25":3}}],["870348",{"2":{"75":1}}],["870276",{"2":{"30":2}}],["870485",{"2":{"17":1}}],["879774",{"2":{"30":1}}],["87436",{"2":{"26":1}}],["87",{"2":{"13":3,"45":1}}],["868917",{"2":{"84":1}}],["868966",{"2":{"48":1}}],["868587",{"2":{"84":1}}],["8612776980335002",{"2":{"85":1}}],["861278",{"2":{"84":2}}],["86112",{"2":{"84":1}}],["86174",{"2":{"26":1}}],["8632634208267141",{"2":{"79":2}}],["865713",{"2":{"76":1}}],["865233",{"2":{"30":2}}],["865298",{"2":{"28":2}}],["869012",{"2":{"73":3}}],["864128",{"2":{"48":1}}],["864765",{"2":{"30":1}}],["864856",{"2":{"17":1}}],["860933",{"2":{"28":2}}],["867547",{"2":{"15":1,"17":1}}],["86",{"2":{"13":1}}],["8560905731682101",{"2":{"85":1}}],["856091",{"2":{"84":2}}],["853553",{"2":{"30":1}}],["8542391508438596",{"2":{"79":1}}],["854239",{"2":{"78":1}}],["854076",{"2":{"28":2}}],["854739",{"2":{"26":1}}],["85",{"2":{"13":1,"84":1}}],["80023",{"2":{"78":1}}],["808889",{"2":{"76":1}}],["806495",{"2":{"76":1}}],["802776",{"2":{"73":4}}],["802122",{"2":{"30":1}}],["804846",{"2":{"62":2,"64":2,"66":6}}],["80455",{"2":{"26":1}}],["8030281996030815",{"2":{"79":1}}],["803446",{"2":{"62":2,"64":2,"66":6}}],["803293",{"2":{"30":1}}],["803192",{"2":{"13":1}}],["80",{"2":{"4":1,"13":1,"46":1}}],["8",{"2":{"0":1,"4":1,"5":2,"13":1,"16":1,"25":1,"30":4,"44":1,"45":2,"46":11,"48":7,"73":8,"74":2,"76":7,"78":3,"83":2,"84":12,"85":2}}],["6×10",{"2":{"78":1,"80":30}}],["6×6",{"2":{"76":3}}],["6×3",{"2":{"73":2}}],["6am",{"2":{"46":1}}],["648179",{"2":{"84":1}}],["64534",{"2":{"84":1}}],["645678",{"2":{"83":1}}],["645795",{"2":{"45":1,"47":2}}],["6445457662038467",{"2":{"79":2}}],["640974",{"2":{"78":1}}],["640311",{"2":{"48":1}}],["642187",{"2":{"76":1}}],["642908",{"2":{"26":1}}],["647225",{"2":{"75":1}}],["64",{"2":{"46":1}}],["634377",{"2":{"84":1}}],["634499",{"2":{"30":1}}],["636476",{"2":{"83":1}}],["631878",{"2":{"76":1}}],["633956",{"2":{"48":1}}],["635963",{"2":{"48":1}}],["639212",{"2":{"48":1}}],["639499",{"2":{"45":1}}],["63",{"2":{"45":1}}],["637077",{"2":{"15":2}}],["6730273352488979",{"2":{"85":1}}],["673027",{"2":{"84":2}}],["673966",{"2":{"30":1}}],["670607",{"2":{"83":1,"84":1}}],["6702922824659258",{"2":{"79":2}}],["674061",{"2":{"83":1}}],["674881",{"2":{"48":1}}],["675459",{"2":{"76":1}}],["675435",{"2":{"13":1}}],["677543",{"2":{"76":2}}],["679296",{"2":{"76":1}}],["679221",{"2":{"30":2}}],["679453",{"2":{"75":1}}],["679632",{"2":{"84":1}}],["6796",{"2":{"47":2}}],["678022",{"2":{"30":1}}],["622735",{"2":{"84":1}}],["620473",{"2":{"83":1}}],["620055",{"2":{"29":1,"31":2}}],["621527",{"2":{"76":1}}],["621662",{"2":{"75":1}}],["621603",{"2":{"73":4}}],["623124",{"2":{"76":1}}],["625435",{"2":{"30":1}}],["625296",{"2":{"28":3}}],["625257",{"2":{"28":3}}],["624685",{"2":{"13":1}}],["6150940338022266",{"2":{"85":1}}],["615094",{"2":{"84":2}}],["615764",{"2":{"30":1}}],["6146564273146751",{"2":{"85":1}}],["614656",{"2":{"84":2}}],["61781",{"2":{"76":1}}],["613895",{"2":{"76":1}}],["610173",{"2":{"76":1}}],["61025",{"2":{"26":1}}],["611961",{"2":{"28":1}}],["612779",{"2":{"25":3}}],["687921",{"2":{"75":1}}],["68781",{"2":{"48":1}}],["687223",{"2":{"25":3}}],["683795",{"2":{"75":1}}],["683712",{"2":{"45":1}}],["683091",{"2":{"30":1}}],["683696",{"2":{"30":1}}],["680987",{"2":{"75":1}}],["68072e",{"2":{"45":1}}],["680352",{"2":{"30":1}}],["680225",{"2":{"30":2}}],["684587",{"2":{"28":1}}],["686287",{"2":{"25":2}}],["699976",{"2":{"76":1}}],["694278906020718",{"2":{"85":1}}],["694279",{"2":{"84":2}}],["694066",{"2":{"83":1}}],["69461",{"2":{"62":2,"64":2,"66":6}}],["694796",{"2":{"45":1,"47":1}}],["691687",{"2":{"78":1}}],["691887",{"2":{"32":1}}],["691162",{"2":{"17":1}}],["690695",{"2":{"30":1}}],["69506",{"2":{"26":1}}],["69635",{"2":{"25":3}}],["692209",{"2":{"17":2}}],["692235",{"2":{"15":1}}],["69",{"2":{"13":1}}],["666938",{"2":{"84":1}}],["66622",{"2":{"26":1}}],["66996622586129",{"2":{"79":1}}],["669966",{"2":{"78":1}}],["669021",{"2":{"30":1}}],["668226",{"2":{"78":1}}],["668984",{"2":{"62":2,"64":2,"66":6}}],["661444",{"2":{"76":1}}],["662413",{"2":{"76":1}}],["662833",{"2":{"76":1}}],["660657",{"2":{"76":1}}],["667841",{"2":{"75":1}}],["664642",{"2":{"76":1}}],["664038",{"2":{"48":1}}],["6642",{"2":{"29":1,"31":2}}],["665742",{"2":{"26":1}}],["66",{"2":{"13":1}}],["656243",{"2":{"84":1}}],["650842",{"2":{"76":1}}],["657054",{"2":{"76":1}}],["657441",{"2":{"28":3}}],["655684",{"2":{"25":3}}],["651784",{"2":{"25":3}}],["652353",{"2":{"25":3}}],["65",{"2":{"13":5,"46":1}}],["608366",{"2":{"84":1}}],["602631",{"2":{"78":1}}],["602",{"2":{"76":1}}],["602315",{"2":{"48":1}}],["602923",{"2":{"28":1}}],["600816",{"2":{"47":1}}],["605324",{"2":{"30":1}}],["605217",{"2":{"28":1}}],["60111",{"2":{"25":2}}],["60",{"2":{"4":1,"5":1,"75":1,"79":1}}],["6",{"2":{"0":1,"4":2,"5":18,"13":1,"16":1,"17":4,"20":4,"25":6,"26":1,"44":11,"45":6,"46":20,"48":7,"73":14,"74":1,"76":3,"77":1,"78":12,"79":4,"80":19,"84":12,"85":2}}],["436605",{"2":{"83":1}}],["436168",{"2":{"76":1}}],["43471177733076",{"2":{"80":2}}],["434061",{"2":{"47":1}}],["439711995898844",{"2":{"79":1}}],["43915",{"2":{"76":1}}],["433769",{"2":{"78":1}}],["433955",{"2":{"32":1}}],["433527",{"2":{"28":1}}],["417756",{"2":{"76":1,"84":1}}],["412078",{"2":{"76":1}}],["415714",{"2":{"73":3}}],["418968",{"2":{"48":1}}],["41",{"2":{"46":1}}],["411529",{"2":{"29":1,"31":2}}],["410463",{"2":{"28":2}}],["41334",{"2":{"26":1}}],["460775",{"2":{"76":1}}],["460633",{"2":{"45":1,"47":2}}],["461631",{"2":{"62":2,"64":2,"66":6}}],["464482",{"2":{"48":1}}],["464554",{"2":{"26":1}}],["462859",{"2":{"76":1}}],["462",{"2":{"33":1}}],["462981",{"2":{"26":1}}],["467484",{"2":{"30":1}}],["465631",{"2":{"29":1,"31":2}}],["46668",{"2":{"28":1}}],["469388",{"2":{"28":1}}],["468968",{"2":{"30":1}}],["468184",{"2":{"28":1}}],["468066",{"2":{"28":1}}],["449491",{"2":{"83":1,"84":2}}],["4492",{"2":{"26":1}}],["4408839264303761",{"2":{"79":2}}],["440884",{"2":{"78":1}}],["44818",{"2":{"76":1}}],["442111",{"2":{"75":1}}],["442542",{"2":{"45":1}}],["444708",{"2":{"30":1}}],["441181",{"2":{"75":1}}],["44119",{"2":{"28":2}}],["441735",{"2":{"29":1,"31":2}}],["44104",{"2":{"28":1}}],["443494",{"2":{"15":1,"17":1}}],["456688",{"2":{"84":1}}],["45655",{"2":{"83":1}}],["457841",{"2":{"83":1,"84":1}}],["457891",{"2":{"30":1}}],["450701",{"2":{"83":1,"84":2}}],["450109",{"2":{"62":2,"64":2,"66":6}}],["45983648216629247",{"2":{"80":1}}],["4526944925375208",{"2":{"79":1}}],["452694",{"2":{"78":1}}],["454047",{"2":{"76":1}}],["454886",{"2":{"28":2}}],["455255",{"2":{"76":1}}],["458427",{"2":{"76":1}}],["45804",{"2":{"26":1}}],["45152471334016764",{"2":{"79":1}}],["451525",{"2":{"78":1}}],["451425",{"2":{"30":1}}],["4518",{"2":{"28":2}}],["453973",{"2":{"25":3}}],["4×6",{"2":{"17":1}}],["4×5",{"2":{"13":1}}],["48952511607945026",{"2":{"85":1}}],["489525",{"2":{"84":2}}],["489762",{"2":{"25":1}}],["4802202427553709",{"2":{"79":10,"80":2}}],["48022",{"2":{"78":1}}],["484929",{"2":{"78":1}}],["4854948068259556",{"2":{"79":1}}],["485952",{"2":{"76":1}}],["485687",{"2":{"17":1}}],["48240020633837055",{"2":{"79":1}}],["482654",{"2":{"76":1}}],["48275",{"2":{"26":1}}],["488473",{"2":{"84":1}}],["488458",{"2":{"45":1}}],["48889263023704055",{"2":{"79":1}}],["48817",{"2":{"30":1}}],["487563",{"2":{"45":1}}],["487578",{"2":{"13":1}}],["487601",{"2":{"26":1}}],["48124",{"2":{"76":1}}],["481",{"2":{"33":1}}],["481184",{"2":{"30":1}}],["48113",{"2":{"25":1}}],["48101",{"2":{"25":1}}],["48",{"2":{"13":1,"46":1}}],["4278264986513013",{"2":{"85":1}}],["427328",{"2":{"15":1,"17":1}}],["429822",{"2":{"84":1}}],["422318",{"2":{"76":1}}],["428951",{"2":{"48":1}}],["42833",{"2":{"25":1}}],["423798",{"2":{"48":1}}],["4231",{"2":{"30":1}}],["421525",{"2":{"76":1}}],["42151",{"2":{"26":1}}],["421692",{"2":{"30":1}}],["420756",{"2":{"17":1}}],["42",{"2":{"13":1}}],["474535",{"2":{"78":1}}],["476387",{"2":{"76":2}}],["476495",{"2":{"28":2}}],["471877",{"2":{"48":1}}],["475569",{"2":{"48":1}}],["479126",{"2":{"26":1}}],["47963",{"2":{"25":2}}],["47",{"2":{"13":1,"46":2}}],["495624",{"2":{"76":1}}],["497346",{"2":{"30":1}}],["49795",{"2":{"25":1}}],["49224",{"2":{"76":1}}],["492332",{"2":{"45":1}}],["492377",{"2":{"25":1}}],["492141",{"2":{"28":3}}],["493065",{"2":{"84":1}}],["493417",{"2":{"28":2}}],["493708",{"2":{"25":1}}],["49057852962217935",{"2":{"80":1}}],["49097",{"2":{"26":1}}],["490968",{"2":{"25":1}}],["49029",{"2":{"25":2}}],["496665",{"2":{"25":1}}],["496201",{"2":{"25":1}}],["496108",{"2":{"25":2}}],["491767",{"2":{"25":3}}],["49853441854361796",{"2":{"80":1}}],["498465",{"2":{"45":1}}],["498669",{"2":{"45":1}}],["498606",{"2":{"19":1}}],["498996",{"2":{"45":1}}],["498388",{"2":{"45":1,"46":1}}],["498895",{"2":{"45":1}}],["498832",{"2":{"45":1,"46":1}}],["498801",{"2":{"19":1}}],["498764",{"2":{"30":1}}],["498704",{"2":{"19":1}}],["498145",{"2":{"19":1}}],["499307",{"2":{"76":1}}],["49935",{"2":{"46":1}}],["499474",{"2":{"46":1}}],["499687",{"2":{"46":1}}],["499667",{"2":{"45":1}}],["499218",{"2":{"45":1}}],["499298",{"2":{"19":1}}],["49973",{"2":{"76":1}}],["499719",{"2":{"25":1}}],["499762",{"2":{"19":1}}],["499594",{"2":{"19":1}}],["499985",{"2":{"19":1}}],["49",{"2":{"13":2,"46":1}}],["405912",{"2":{"76":1}}],["40584",{"2":{"26":1}}],["403836",{"2":{"76":1}}],["406397",{"2":{"62":2,"64":2,"66":6}}],["40687",{"2":{"32":1}}],["409622",{"2":{"30":2}}],["40409",{"2":{"26":1}}],["40065",{"2":{"25":1}}],["40",{"2":{"4":1,"15":3,"46":1,"75":1}}],["4",{"2":{"0":5,"3":1,"4":5,"5":12,"13":6,"15":6,"16":2,"17":2,"19":1,"20":14,"21":3,"25":9,"26":2,"30":5,"32":1,"44":1,"45":6,"46":8,"48":7,"73":18,"74":1,"76":2,"78":1,"80":2,"81":3,"83":1,"84":12,"85":2}}],["09300753748828394",{"2":{"85":1}}],["0930075",{"2":{"84":2}}],["09016703141346892",{"2":{"80":1}}],["0905873",{"2":{"76":1}}],["0983553",{"2":{"76":1}}],["0980829",{"2":{"48":1}}],["09245174474290706",{"2":{"80":1}}],["092494",{"2":{"28":1}}],["0923954",{"2":{"76":1}}],["09558e",{"2":{"45":1}}],["095",{"2":{"33":1}}],["0959455",{"2":{"25":3}}],["0963009",{"2":{"78":1}}],["0965083",{"2":{"28":3}}],["0967863",{"2":{"17":1}}],["0992684",{"2":{"30":1}}],["0999314",{"2":{"28":2}}],["0991336",{"2":{"17":2}}],["09764",{"2":{"25":2}}],["09",{"2":{"0":1,"25":5,"47":1,"74":1}}],["08553143289483933",{"2":{"79":1}}],["0852624",{"2":{"78":1}}],["08512",{"2":{"25":2}}],["0821229",{"2":{"76":1}}],["0831822",{"2":{"76":1}}],["0803513146650122",{"2":{"80":1}}],["0804518",{"2":{"26":1}}],["0802658",{"2":{"15":1}}],["08",{"2":{"0":1,"25":3,"47":1,"74":1,"76":1}}],["0768485",{"2":{"78":1}}],["0760101",{"2":{"76":1}}],["0760848",{"2":{"30":1}}],["0758114",{"2":{"78":1}}],["0787968",{"2":{"76":1}}],["0702987",{"2":{"62":2,"64":2,"66":6}}],["07217595907727536",{"2":{"79":1}}],["072176",{"2":{"78":1}}],["072",{"2":{"33":1}}],["07277",{"2":{"26":1}}],["07151",{"2":{"32":1}}],["0778416",{"2":{"30":1}}],["0779205",{"2":{"28":1}}],["0740736",{"2":{"28":2}}],["07",{"2":{"0":1,"25":3,"47":1,"74":1}}],["0670357162417285e",{"2":{"80":1}}],["06317733925981239",{"2":{"79":2,"80":2}}],["0630398",{"2":{"76":1}}],["0661958",{"2":{"76":1}}],["0669452",{"2":{"28":1}}],["0653496",{"2":{"73":12}}],["061892",{"2":{"84":1}}],["0610019",{"2":{"32":1}}],["0613839",{"2":{"28":1}}],["06474",{"2":{"32":1}}],["0641884",{"2":{"30":1}}],["0649391",{"2":{"26":1}}],["06834164575276236",{"2":{"79":1}}],["0683416",{"2":{"78":1}}],["0684698",{"2":{"29":1,"31":2}}],["068913",{"2":{"25":3}}],["0609271",{"2":{"28":1}}],["062795",{"2":{"84":1}}],["0628947",{"2":{"76":1}}],["062593",{"2":{"48":1}}],["0621546",{"2":{"28":3}}],["0622255",{"2":{"28":2}}],["0697249",{"2":{"28":3}}],["06",{"2":{"0":1,"25":3,"47":1,"74":1}}],["053158",{"2":{"84":1}}],["051776",{"2":{"84":1}}],["054083",{"2":{"76":1}}],["0540645",{"2":{"30":3}}],["0506805",{"2":{"76":1}}],["0502944",{"2":{"25":3}}],["0574938",{"2":{"76":1}}],["05t03",{"2":{"47":4}}],["0559616",{"2":{"30":1}}],["0558987",{"2":{"28":1}}],["0557598",{"2":{"26":1}}],["0599431",{"2":{"26":1}}],["05",{"2":{"0":1,"25":3,"47":1,"73":1,"74":1}}],["0445446",{"2":{"84":1}}],["0446036",{"2":{"45":1}}],["0417586",{"2":{"76":2}}],["0416986",{"2":{"25":3}}],["0426808",{"2":{"76":1}}],["0429074",{"2":{"75":1}}],["0425477",{"2":{"28":2}}],["0474302",{"2":{"30":2}}],["04599641808658339",{"2":{"85":1}}],["0459964",{"2":{"84":2}}],["0450386",{"2":{"29":1,"31":2}}],["0458864",{"2":{"28":1}}],["0463176",{"2":{"29":2,"31":2}}],["04060837507113502",{"2":{"79":10}}],["0406084",{"2":{"78":1}}],["0403793",{"2":{"45":1,"47":2}}],["0400372",{"2":{"28":2}}],["04046",{"2":{"25":2}}],["04",{"2":{"0":1,"25":5,"47":1,"74":1,"76":3}}],["03613547354359734",{"2":{"80":1}}],["0315018",{"2":{"76":1}}],["0387029",{"2":{"76":1}}],["0300922",{"2":{"76":1}}],["0303789",{"2":{"17":1}}],["0372362",{"2":{"48":1}}],["0375522",{"2":{"30":1}}],["0375769",{"2":{"28":1}}],["0325131",{"2":{"83":1}}],["0323182",{"2":{"30":1}}],["0320967",{"2":{"17":1}}],["0347024",{"2":{"28":1}}],["03",{"2":{"0":1,"25":5,"45":1,"47":2,"74":1}}],["023646798570656102",{"2":{"85":1}}],["0236468",{"2":{"84":2}}],["0239356",{"2":{"28":2}}],["022593",{"2":{"84":2}}],["028",{"2":{"81":2}}],["0282382",{"2":{"13":1}}],["0299112",{"2":{"78":1}}],["02976",{"2":{"25":1}}],["021",{"2":{"76":1}}],["0275306",{"2":{"30":1}}],["0205228",{"2":{"30":1}}],["02",{"2":{"0":2,"25":5,"45":1,"47":2,"74":1}}],["0",{"2":{"0":60,"1":6,"3":8,"4":28,"5":8,"13":20,"15":92,"16":16,"17":81,"18":240,"19":19,"20":176,"25":178,"26":69,"28":546,"29":28,"30":148,"31":50,"32":12,"33":25,"44":2,"45":63,"46":20,"47":53,"48":175,"49":42,"61":105,"62":50,"64":48,"66":141,"73":147,"74":7,"75":35,"76":243,"77":16,"78":133,"79":89,"80":155,"81":12,"83":48,"84":150,"85":36}}],["00816974",{"2":{"84":1}}],["00832284",{"2":{"48":1}}],["005163666306917225",{"2":{"85":1}}],["00516367",{"2":{"84":2}}],["00508449",{"2":{"48":1}}],["0019198597596568057",{"2":{"85":1}}],["00191986",{"2":{"84":2}}],["00110588",{"2":{"83":1}}],["006378200703587189",{"2":{"79":1,"80":2}}],["00686195",{"2":{"76":1}}],["007",{"2":{"76":3}}],["00337686",{"2":{"29":1,"31":2}}],["00",{"2":{"0":42,"25":140,"33":10,"44":4,"45":10,"47":37,"74":32}}],["015759978623873905",{"2":{"80":2}}],["01576",{"2":{"78":1}}],["0171909",{"2":{"78":1}}],["013144",{"2":{"78":1}}],["013967",{"2":{"47":2}}],["0164892",{"2":{"76":1}}],["0141696",{"2":{"78":1}}],["0149561",{"2":{"76":1}}],["014",{"2":{"76":1}}],["0143204",{"2":{"76":2}}],["0140644",{"2":{"28":3}}],["0184746",{"2":{"47":1}}],["011",{"2":{"46":2}}],["01t03",{"2":{"47":2}}],["01t02",{"2":{"47":1}}],["01t01",{"2":{"45":1,"47":2}}],["01t00",{"2":{"0":21,"25":70,"44":1,"45":2,"47":7,"74":16}}],["0192911",{"2":{"30":1}}],["0196808",{"2":{"30":1}}],["0197492",{"2":{"26":1}}],["012300334322905893",{"2":{"85":1}}],["0123003",{"2":{"84":2}}],["0120967",{"2":{"83":1}}],["0127924",{"2":{"28":3}}],["01282",{"2":{"25":1}}],["010277581356302745",{"2":{"80":2}}],["0102776",{"2":{"78":1}}],["010",{"2":{"20":2}}],["01",{"2":{"0":5,"25":14,"44":1,"45":6,"47":21,"74":3}}],["↗",{"2":{"0":1,"1":1,"3":1,"13":1,"15":1,"18":1,"19":1,"20":1,"25":6,"30":1,"32":2,"34":1,"83":3}}],["→",{"2":{"0":4,"1":3,"3":2,"4":2,"5":8,"13":4,"15":13,"16":1,"17":12,"18":1,"19":3,"20":12,"21":2,"25":11,"26":2,"28":11,"29":1,"30":7,"31":2,"32":2,"33":1,"34":2,"45":3,"46":8,"47":5,"48":7,"49":11,"61":3,"62":4,"64":4,"66":11,"73":26,"75":2,"76":10,"77":2,"78":8,"80":24,"83":4,"84":1}}],["↓",{"2":{"0":5,"1":4,"3":3,"4":2,"5":8,"13":5,"15":16,"16":1,"17":12,"18":1,"19":5,"20":12,"21":2,"25":14,"26":2,"28":11,"29":2,"30":8,"31":2,"32":2,"33":1,"34":2,"45":10,"46":19,"47":6,"48":12,"49":15,"61":3,"62":4,"64":4,"66":11,"73":28,"74":1,"75":2,"76":10,"77":2,"78":9,"79":1,"80":25,"83":4,"84":1}}],["┐",{"2":{"0":3,"4":1,"5":4,"13":3,"15":5,"17":3,"19":3,"20":5,"21":1,"25":8,"26":1,"28":11,"29":2,"30":4,"31":2,"32":2,"33":1,"45":8,"46":11,"47":3,"48":1,"61":3,"62":2,"64":2,"66":6,"73":15,"74":1,"75":1,"76":5,"77":1,"78":8,"79":1,"80":25,"83":2,"84":1}}],["│",{"2":{"0":6,"1":2,"3":2,"4":2,"5":8,"13":6,"15":20,"17":8,"18":2,"19":6,"20":10,"21":2,"25":16,"26":2,"28":22,"29":4,"30":8,"31":4,"32":4,"33":2,"45":16,"46":22,"47":6,"48":2,"61":6,"62":4,"64":4,"66":12,"73":30,"74":2,"75":2,"76":10,"77":2,"78":16,"79":2,"80":50,"83":4,"84":74}}],["5201836703588896",{"2":{"79":1}}],["520184",{"2":{"78":1}}],["5203602669427675",{"2":{"79":1}}],["52036",{"2":{"78":1}}],["52735",{"2":{"78":1}}],["528009",{"2":{"76":1}}],["528669",{"2":{"28":1}}],["522989",{"2":{"45":1}}],["526688",{"2":{"30":1}}],["526295",{"2":{"28":2}}],["521021",{"2":{"30":2}}],["521762",{"2":{"28":1}}],["580091",{"2":{"83":1}}],["58054",{"2":{"25":2}}],["581131",{"2":{"83":1,"84":2}}],["581748",{"2":{"45":1,"47":1}}],["584048",{"2":{"76":1}}],["585756",{"2":{"48":1}}],["585057",{"2":{"28":1}}],["589895",{"2":{"30":1}}],["587556",{"2":{"28":3}}],["588506",{"2":{"28":2}}],["535124",{"2":{"84":1}}],["537046",{"2":{"78":1}}],["537469",{"2":{"47":1}}],["539197",{"2":{"76":1}}],["539076",{"2":{"17":1}}],["531012",{"2":{"76":1}}],["533041",{"2":{"76":1}}],["536911",{"2":{"73":6}}],["530653",{"2":{"48":1}}],["53",{"2":{"45":1}}],["534655",{"2":{"28":1}}],["534915",{"2":{"28":2}}],["5×1",{"2":{"73":1}}],["5×10",{"2":{"28":13}}],["5×5",{"2":{"29":1,"31":2}}],["5×4",{"2":{"4":1}}],["5663088629322468",{"2":{"79":2}}],["566574",{"2":{"48":1}}],["566557",{"2":{"25":3}}],["564657",{"2":{"76":1}}],["564589",{"2":{"25":3}}],["56",{"2":{"46":1}}],["561611",{"2":{"45":1}}],["563623",{"2":{"30":1}}],["567383",{"2":{"28":1}}],["568763",{"2":{"76":1}}],["568302",{"2":{"25":3}}],["568131",{"2":{"25":3}}],["516313",{"2":{"83":1}}],["51621",{"2":{"83":1}}],["516268",{"2":{"76":1}}],["517175",{"2":{"83":1}}],["5176046469253345",{"2":{"79":1}}],["517605",{"2":{"78":1}}],["5128894732327488",{"2":{"79":1}}],["512083",{"2":{"15":1,"17":1}}],["515445",{"2":{"78":1}}],["515061",{"2":{"25":3}}],["518483",{"2":{"78":1}}],["514714",{"2":{"28":1}}],["511078",{"2":{"28":1}}],["511086",{"2":{"25":3}}],["51",{"2":{"13":1}}],["5434869639181522",{"2":{"79":2}}],["543616",{"2":{"28":1}}],["545522",{"2":{"76":1}}],["545129",{"2":{"28":3}}],["54822",{"2":{"26":1}}],["54853",{"2":{"25":2}}],["54483",{"2":{"25":2}}],["54",{"2":{"13":1}}],["541806",{"2":{"13":1}}],["5501481631111826",{"2":{"85":1}}],["550148",{"2":{"84":2}}],["5514523568721104",{"2":{"79":2}}],["55114",{"2":{"25":2}}],["552153",{"2":{"76":1}}],["559878",{"2":{"45":1}}],["55745",{"2":{"32":1}}],["5573",{"2":{"30":1}}],["553558",{"2":{"28":3}}],["55351",{"2":{"25":1}}],["554791",{"2":{"28":3}}],["555456",{"2":{"25":3}}],["55",{"2":{"13":1}}],["597843",{"2":{"84":1}}],["59705",{"2":{"26":1}}],["599789",{"2":{"84":1}}],["599558",{"2":{"13":1}}],["590188929977547",{"2":{"80":2}}],["590953",{"2":{"76":1}}],["5962",{"2":{"32":1}}],["59",{"2":{"13":1}}],["574619",{"2":{"76":1}}],["574678",{"2":{"76":1}}],["578329",{"2":{"76":1}}],["578253",{"2":{"76":1}}],["578989",{"2":{"32":1}}],["575727",{"2":{"76":1}}],["575595",{"2":{"75":1}}],["575698",{"2":{"30":2}}],["571281",{"2":{"28":1}}],["571602",{"2":{"28":1}}],["570254",{"2":{"28":1}}],["57019",{"2":{"26":1}}],["57",{"2":{"5":1,"46":1}}],["5040228055200978",{"2":{"85":1}}],["504023",{"2":{"84":2}}],["5081446040814137e",{"2":{"80":1}}],["506221",{"2":{"75":1}}],["5055",{"2":{"46":4}}],["505946",{"2":{"25":1}}],["502391",{"2":{"45":1}}],["5074",{"2":{"32":1}}],["503183",{"2":{"76":1}}],["503561",{"2":{"45":1}}],["503967",{"2":{"28":1}}],["503823",{"2":{"28":1}}],["503719",{"2":{"25":1}}],["501732",{"2":{"45":1}}],["501369",{"2":{"45":1}}],["501379",{"2":{"19":1}}],["501068",{"2":{"25":1}}],["501643",{"2":{"19":1}}],["501105",{"2":{"19":1}}],["500769",{"2":{"47":2}}],["500757",{"2":{"45":1,"46":2}}],["500333",{"2":{"46":1}}],["500405",{"2":{"45":1}}],["50047",{"2":{"19":1}}],["500627",{"2":{"45":1}}],["500642",{"2":{"29":1,"31":2}}],["500644",{"2":{"19":1}}],["500277",{"2":{"45":1}}],["500913",{"2":{"45":1}}],["500157",{"2":{"28":3}}],["5008",{"2":{"25":2}}],["500874",{"2":{"19":1}}],["500533",{"2":{"19":1}}],["500032",{"2":{"46":1}}],["500093",{"2":{"45":1}}],["500083",{"2":{"19":1}}],["500064",{"2":{"19":1}}],["50",{"2":{"5":3,"15":9,"75":1}}],["5u",{"2":{"5":1}}],["5",{"2":{"0":1,"4":3,"5":21,"13":5,"15":2,"16":1,"17":1,"20":7,"21":1,"25":6,"26":1,"28":10,"29":2,"30":6,"32":1,"44":1,"45":2,"46":5,"48":9,"61":3,"73":7,"74":2,"75":1,"77":3,"78":11,"79":1,"80":35,"84":12,"85":2}}],["331147",{"2":{"76":1}}],["33985840915074383",{"2":{"73":1}}],["339858",{"2":{"73":12}}],["339888",{"2":{"30":1}}],["338844",{"2":{"62":2,"64":2,"66":6}}],["336376",{"2":{"83":1}}],["336",{"2":{"46":1}}],["33",{"2":{"46":2}}],["337",{"2":{"46":1}}],["337182",{"2":{"30":1}}],["337576",{"2":{"28":1}}],["330777",{"2":{"30":2}}],["334152",{"2":{"15":1,"17":1}}],["371583",{"2":{"76":1}}],["375166",{"2":{"48":1}}],["375182",{"2":{"30":1}}],["376",{"2":{"46":3}}],["370194",{"2":{"78":1}}],["370454",{"2":{"76":1}}],["370",{"2":{"46":2}}],["37963",{"2":{"26":1}}],["3793",{"2":{"25":2}}],["374026",{"2":{"26":1}}],["369225",{"2":{"78":1}}],["369",{"2":{"46":3}}],["368",{"2":{"46":3}}],["361536",{"2":{"76":1}}],["361",{"2":{"46":3}}],["362",{"2":{"45":1}}],["363442",{"2":{"84":1}}],["363373",{"2":{"84":1}}],["363918",{"2":{"76":1}}],["363",{"2":{"45":2}}],["365",{"2":{"45":2}}],["365341",{"2":{"30":1}}],["366873",{"2":{"76":1}}],["366",{"2":{"45":3}}],["364097",{"2":{"84":2}}],["364",{"2":{"44":18,"45":3}}],["364488",{"2":{"25":3}}],["360",{"2":{"4":2,"46":1}}],["319496",{"2":{"76":1}}],["315591",{"2":{"48":1}}],["31572",{"2":{"32":1}}],["314535",{"2":{"48":1}}],["31468",{"2":{"32":1}}],["312",{"2":{"46":1}}],["31",{"2":{"45":1}}],["313361",{"2":{"76":1}}],["313",{"2":{"46":1}}],["313711",{"2":{"45":1}}],["313279",{"2":{"45":1}}],["3162",{"2":{"30":1}}],["31065",{"2":{"25":3}}],["311448",{"2":{"15":1}}],["3a",{"2":{"16":1}}],["3×2",{"2":{"73":1}}],["3×14",{"2":{"62":2,"64":2,"66":6}}],["3×5",{"2":{"21":2,"61":10}}],["3×5×12",{"2":{"0":1}}],["3×4×1",{"2":{"32":1}}],["3×4×5",{"2":{"32":1}}],["3×4",{"2":{"20":5}}],["3×3",{"2":{"15":3,"17":1,"33":1,"73":3}}],["307616",{"2":{"84":1}}],["30391",{"2":{"76":1}}],["301659",{"2":{"75":1}}],["309301",{"2":{"48":1}}],["30923",{"2":{"26":1}}],["30t22",{"2":{"47":1}}],["30t23",{"2":{"44":1,"45":2,"47":2}}],["30×17520",{"2":{"46":3}}],["305",{"2":{"46":1}}],["306208",{"2":{"30":1}}],["30405878501189054",{"2":{"80":1}}],["304266",{"2":{"76":1}}],["30427",{"2":{"26":1}}],["3047",{"2":{"74":1}}],["304688",{"2":{"26":1}}],["3002782566445145",{"2":{"80":1}}],["300285",{"2":{"76":1}}],["300304",{"2":{"76":2}}],["300",{"2":{"20":1}}],["300768",{"2":{"13":1}}],["30",{"2":{"15":1,"16":2,"17":4,"20":9,"44":18,"45":2,"66":2,"75":1,"76":1}}],["3434655288098666",{"2":{"85":1}}],["343493",{"2":{"28":1}}],["34882573131206984",{"2":{"79":1}}],["348826",{"2":{"78":1}}],["341133",{"2":{"83":1}}],["341976",{"2":{"73":4}}],["341835",{"2":{"30":1}}],["340557",{"2":{"62":2,"64":2,"66":6}}],["34589",{"2":{"76":1}}],["345",{"2":{"46":1}}],["345501",{"2":{"26":1}}],["344",{"2":{"46":1}}],["344408",{"2":{"28":3}}],["346013",{"2":{"45":1}}],["34",{"2":{"13":1}}],["359194",{"2":{"84":1}}],["359421",{"2":{"83":1}}],["35100608350331053",{"2":{"85":1}}],["351006",{"2":{"84":2}}],["351413",{"2":{"30":2}}],["358513",{"2":{"76":1}}],["358535",{"2":{"76":1}}],["358625",{"2":{"30":1}}],["357367",{"2":{"75":1}}],["353968",{"2":{"83":1}}],["353",{"2":{"46":1}}],["353691",{"2":{"30":1}}],["354046",{"2":{"30":1}}],["354868",{"2":{"17":1}}],["352592",{"2":{"62":2,"64":2,"66":6}}],["352",{"2":{"46":1}}],["352138",{"2":{"30":1}}],["352614",{"2":{"26":1}}],["350024",{"2":{"84":1}}],["350422",{"2":{"29":1,"31":2}}],["350104",{"2":{"28":2}}],["350546",{"2":{"17":1}}],["35",{"2":{"13":1,"15":1}}],["3266527246823143",{"2":{"79":1}}],["32669",{"2":{"26":1}}],["3258728635315493",{"2":{"79":2,"81":2}}],["322005",{"2":{"48":1}}],["322115",{"2":{"30":1}}],["329",{"2":{"46":1}}],["329515",{"2":{"29":1,"31":2}}],["328",{"2":{"46":1}}],["32806",{"2":{"28":1}}],["321",{"2":{"46":1}}],["320",{"2":{"46":1}}],["320667",{"2":{"30":1}}],["32",{"2":{"13":2,"46":2,"80":1}}],["38167574879167476",{"2":{"85":1}}],["3863063388395396",{"2":{"79":1}}],["386306",{"2":{"78":1}}],["386433",{"2":{"28":3}}],["38714",{"2":{"47":2}}],["38795",{"2":{"25":2}}],["388768",{"2":{"76":1}}],["388907",{"2":{"32":1}}],["388243",{"2":{"13":1}}],["380161",{"2":{"30":1}}],["389839",{"2":{"28":1}}],["383632",{"2":{"13":1}}],["399",{"2":{"76":1}}],["399781",{"2":{"76":1}}],["397386",{"2":{"76":1}}],["395053",{"2":{"76":1}}],["395594",{"2":{"32":1}}],["391307",{"2":{"76":1}}],["391155",{"2":{"28":3}}],["394576",{"2":{"76":1}}],["394703",{"2":{"30":1}}],["396585",{"2":{"75":1}}],["392334",{"2":{"76":1}}],["392377",{"2":{"30":1}}],["392848",{"2":{"28":3}}],["390081",{"2":{"26":1}}],["390033",{"2":{"25":3}}],["39",{"2":{"2":2,"3":1,"4":2,"17":1,"21":4,"22":1,"30":2,"31":1,"33":1,"35":1,"52":1,"64":1,"65":1,"66":1,"67":6,"75":1,"76":1}}],["3",{"2":{"0":4,"1":3,"3":1,"4":7,"5":8,"13":9,"15":3,"16":1,"17":12,"18":2,"19":6,"20":11,"21":6,"23":2,"25":17,"26":2,"29":2,"30":10,"32":6,"33":7,"34":2,"44":1,"45":7,"46":23,"47":3,"48":7,"61":3,"62":5,"64":4,"66":10,"73":3,"74":2,"76":1,"78":1,"80":1,"83":3,"84":8,"85":2}}],["145293",{"2":{"76":1}}],["144422",{"2":{"76":1}}],["143×23",{"2":{"76":1}}],["143704",{"2":{"29":2,"31":2}}],["14203",{"2":{"76":1}}],["140817",{"2":{"76":1}}],["140",{"2":{"48":6,"66":6}}],["14",{"2":{"33":1,"76":2,"78":1}}],["147478",{"2":{"28":2}}],["175544",{"2":{"84":1}}],["17520",{"2":{"44":8,"47":1}}],["173013",{"2":{"84":1}}],["173513",{"2":{"30":1}}],["17715541586710937",{"2":{"79":1}}],["177423",{"2":{"26":1}}],["170",{"2":{"48":6}}],["17",{"2":{"33":1,"44":1,"46":2}}],["176766",{"2":{"83":1}}],["17673",{"2":{"26":1}}],["176024",{"2":{"83":1}}],["17666e",{"2":{"45":1}}],["176197",{"2":{"28":1}}],["17645",{"2":{"26":1}}],["182707",{"2":{"84":1}}],["186811",{"2":{"84":1}}],["18969721875656995",{"2":{"80":1}}],["188976",{"2":{"76":1}}],["18",{"2":{"33":1,"44":1,"76":6}}],["180397",{"2":{"76":1}}],["18035",{"2":{"26":1}}],["180",{"2":{"48":7}}],["180894",{"2":{"30":1}}],["184309",{"2":{"30":2}}],["183103",{"2":{"62":2,"64":2,"66":6}}],["183637",{"2":{"26":1}}],["183555",{"2":{"17":1}}],["1a",{"2":{"16":1}}],["132989",{"2":{"84":1}}],["132894",{"2":{"28":2}}],["1381833125394196",{"2":{"80":2}}],["138819",{"2":{"62":2,"64":2,"66":6}}],["13525245310587153",{"2":{"79":1}}],["13589",{"2":{"25":2}}],["133475",{"2":{"76":1}}],["133195",{"2":{"30":1}}],["130252",{"2":{"78":1}}],["130",{"2":{"48":6,"66":2}}],["13035",{"2":{"32":1}}],["136",{"2":{"33":1}}],["136551",{"2":{"17":1}}],["139067",{"2":{"30":1}}],["137131",{"2":{"29":1,"31":2}}],["137619",{"2":{"28":2}}],["134246",{"2":{"28":2}}],["134208",{"2":{"25":2}}],["134186",{"2":{"26":1}}],["131798",{"2":{"17":1}}],["13",{"2":{"13":1,"74":2,"76":1}}],["16484",{"2":{"83":1}}],["164724",{"2":{"25":3}}],["168617",{"2":{"76":2}}],["168291",{"2":{"28":2}}],["166425",{"2":{"76":1}}],["160352",{"2":{"84":1}}],["160403",{"2":{"76":1}}],["160",{"2":{"48":6}}],["16545e",{"2":{"45":1}}],["161393",{"2":{"30":1}}],["167104",{"2":{"30":2}}],["167745",{"2":{"28":3}}],["162553",{"2":{"30":1}}],["162919",{"2":{"26":1}}],["16×16×3",{"2":{"18":1}}],["16",{"2":{"13":1,"18":2,"44":1,"46":4,"76":3}}],["1u",{"2":{"5":2}}],["1985699519321249",{"2":{"85":1}}],["19857",{"2":{"84":2}}],["194849",{"2":{"83":1,"84":2}}],["194465",{"2":{"28":2}}],["193109",{"2":{"78":1}}],["193179",{"2":{"76":1}}],["195938",{"2":{"84":1}}],["195897",{"2":{"76":1}}],["195774",{"2":{"30":1}}],["197423",{"2":{"76":1}}],["196478",{"2":{"75":1}}],["191934",{"2":{"83":1,"84":2}}],["19122366809754",{"2":{"79":1}}],["191494",{"2":{"73":9}}],["191×20×30",{"2":{"19":1}}],["191×20×31",{"2":{"19":2}}],["191×20×32",{"2":{"19":1}}],["191×20×28",{"2":{"19":1}}],["190482",{"2":{"83":1}}],["19009332850891253",{"2":{"80":1}}],["190225",{"2":{"48":1}}],["190",{"2":{"48":7}}],["199484",{"2":{"83":1}}],["1999",{"2":{"26":1}}],["19995",{"2":{"25":2}}],["1998",{"2":{"26":1}}],["192183",{"2":{"25":3}}],["19",{"2":{"5":5,"44":1,"45":1,"76":3}}],["1×3",{"2":{"73":2}}],["1×2",{"2":{"5":3}}],["1×12",{"2":{"0":1}}],["153753",{"2":{"84":1}}],["153219",{"2":{"48":1}}],["15945803739833375",{"2":{"85":1}}],["159458",{"2":{"84":2}}],["15905863317294833",{"2":{"79":3}}],["15952e",{"2":{"45":1}}],["156538",{"2":{"73":3}}],["152765",{"2":{"29":1,"31":2}}],["15055904027841316",{"2":{"79":1}}],["150559",{"2":{"78":1}}],["150126",{"2":{"30":1}}],["150155",{"2":{"17":1}}],["150",{"2":{"15":3,"48":6}}],["15",{"2":{"5":3,"13":4,"44":1}}],["11925244363082943",{"2":{"85":1}}],["11996",{"2":{"30":2}}],["114915",{"2":{"84":1}}],["11115487324489237",{"2":{"79":1}}],["111155",{"2":{"78":1}}],["11773734015093373",{"2":{"79":1}}],["117737",{"2":{"78":1}}],["11787",{"2":{"76":1}}],["11×17520",{"2":{"46":1}}],["11311",{"2":{"78":1}}],["113",{"2":{"13":1}}],["1151003460971078e",{"2":{"80":1}}],["115",{"2":{"13":2}}],["118632",{"2":{"25":2}}],["118",{"2":{"13":2}}],["110425",{"2":{"84":1}}],["110998",{"2":{"30":1}}],["110",{"2":{"13":2,"48":7}}],["112054",{"2":{"47":2}}],["112836",{"2":{"28":1}}],["112",{"2":{"13":1}}],["11",{"2":{"0":1,"4":1,"13":2,"17":2,"19":6,"25":8,"45":6,"48":1,"74":1,"76":3}}],["12452",{"2":{"75":1}}],["1227",{"2":{"45":1}}],["12764",{"2":{"84":1}}],["12713970284423626",{"2":{"79":1,"81":2}}],["12714",{"2":{"78":1}}],["127489",{"2":{"28":1}}],["12731",{"2":{"25":2}}],["12×100×25",{"2":{"25":2}}],["12×2",{"2":{"19":1}}],["128827",{"2":{"83":1}}],["128932",{"2":{"48":1}}],["128",{"2":{"13":1}}],["125477",{"2":{"84":1}}],["125287",{"2":{"17":1}}],["125",{"2":{"13":2}}],["12668",{"2":{"75":1}}],["126",{"2":{"13":2}}],["121746",{"2":{"84":1}}],["121186",{"2":{"28":1}}],["121",{"2":{"13":2}}],["1208",{"2":{"45":1}}],["120",{"2":{"13":2,"48":6,"66":2}}],["123",{"2":{"13":2,"15":1}}],["12",{"2":{"0":9,"4":1,"15":3,"16":1,"19":10,"20":1,"25":21,"44":28,"45":15,"46":8,"47":3,"74":7,"76":5}}],["1",{"2":{"0":13,"1":8,"3":14,"4":26,"5":12,"13":14,"15":32,"16":3,"17":21,"18":241,"19":19,"20":16,"21":5,"23":2,"25":60,"26":52,"28":101,"29":1,"30":4,"31":1,"32":6,"33":12,"34":10,"44":73,"45":48,"46":91,"47":30,"48":44,"49":28,"62":9,"64":12,"65":2,"66":18,"67":1,"73":98,"74":7,"76":51,"77":7,"78":24,"79":1,"80":80,"81":1,"83":14,"84":42,"85":10}}],["105273",{"2":{"47":2}}],["105",{"2":{"33":1}}],["10×10",{"2":{"83":1,"84":27}}],["10×10×26",{"2":{"83":3}}],["10×1",{"2":{"80":30}}],["10×11",{"2":{"48":1}}],["10×6",{"2":{"77":3,"78":18,"80":12}}],["10×5",{"2":{"30":1}}],["10×7×5",{"2":{"30":1}}],["104763",{"2":{"83":1}}],["104261",{"2":{"78":1}}],["10454",{"2":{"76":1}}],["10447",{"2":{"25":2}}],["104",{"2":{"13":1}}],["10748",{"2":{"45":1}}],["107475",{"2":{"30":1}}],["1076",{"2":{"26":1}}],["107",{"2":{"13":1}}],["106224",{"2":{"28":1}}],["106",{"2":{"13":1}}],["101231",{"2":{"73":5}}],["101×34",{"2":{"47":2}}],["101×384",{"2":{"46":2}}],["101×8030",{"2":{"46":1}}],["101×8760",{"2":{"46":1}}],["101×2856",{"2":{"46":1}}],["101×2928",{"2":{"46":3}}],["101×240",{"2":{"46":1}}],["101×0",{"2":{"46":1}}],["101×4416",{"2":{"46":5}}],["101×4320",{"2":{"46":2}}],["101×4392",{"2":{"46":2}}],["101×4368",{"2":{"46":3}}],["101×4344",{"2":{"46":2}}],["101×1",{"2":{"47":5}}],["101×1464",{"2":{"45":1}}],["101×1440",{"2":{"45":1}}],["101×1488",{"2":{"45":2}}],["101×1368",{"2":{"45":1}}],["101×17520",{"2":{"45":1}}],["101",{"2":{"13":2}}],["108592",{"2":{"25":3}}],["108",{"2":{"13":4}}],["102405",{"2":{"13":1}}],["10u",{"2":{"5":1}}],["100×28",{"2":{"84":1}}],["100×25×12",{"2":{"25":3}}],["1000×2000",{"2":{"26":1}}],["1000",{"2":{"26":3,"33":2}}],["10000",{"2":{"23":1,"33":2}}],["100u",{"2":{"5":2}}],["100",{"2":{"0":1,"3":1,"4":3,"15":10,"20":8,"25":13,"47":1,"48":26,"49":14,"68":1,"70":1,"74":2,"84":1}}],["10",{"2":{"0":7,"1":9,"3":6,"4":5,"5":19,"13":6,"15":15,"16":5,"17":4,"19":2,"20":34,"25":8,"28":10,"30":1,"42":9,"45":2,"48":47,"49":28,"64":2,"66":10,"67":1,"68":2,"70":2,"74":7,"75":5,"76":14,"77":7,"78":21,"79":1,"80":61,"83":10,"84":34,"85":10}}],["271591",{"2":{"84":1}}],["27181",{"2":{"25":3}}],["270915",{"2":{"84":1}}],["27",{"2":{"80":3}}],["276742",{"2":{"76":1}}],["27206",{"2":{"76":1}}],["278077",{"2":{"78":1}}],["27802",{"2":{"25":2}}],["27863",{"2":{"28":1}}],["227082",{"2":{"84":1}}],["227865",{"2":{"76":1}}],["226699",{"2":{"76":1}}],["229792",{"2":{"76":1}}],["229418",{"2":{"75":1}}],["228415",{"2":{"84":1}}],["228081",{"2":{"76":1}}],["228248",{"2":{"75":1}}],["228964",{"2":{"28":3}}],["225583",{"2":{"32":1}}],["225865",{"2":{"30":1}}],["221163",{"2":{"30":1}}],["222482",{"2":{"28":2}}],["224375",{"2":{"26":1}}],["22",{"2":{"17":2,"44":1,"45":2,"84":1}}],["2a",{"2":{"16":1}}],["243195",{"2":{"76":1}}],["243803",{"2":{"48":1}}],["248873",{"2":{"76":1}}],["24524306337289326",{"2":{"85":1}}],["245671",{"2":{"83":1}}],["245638",{"2":{"76":1}}],["245",{"2":{"73":2}}],["24575",{"2":{"26":1}}],["2402",{"2":{"45":1}}],["2415",{"2":{"45":1}}],["2412",{"2":{"45":1}}],["241056",{"2":{"30":1}}],["24625",{"2":{"76":1}}],["246886",{"2":{"75":1}}],["2463",{"2":{"45":1}}],["246162",{"2":{"30":1}}],["246796",{"2":{"25":3}}],["247586",{"2":{"78":1}}],["247976",{"2":{"76":1}}],["247032",{"2":{"45":1,"47":2}}],["247198",{"2":{"28":1}}],["24737",{"2":{"28":2}}],["247683",{"2":{"13":1}}],["24",{"2":{"13":1,"19":1,"25":3,"44":1,"45":2,"46":2}}],["294893",{"2":{"84":1}}],["294486",{"2":{"83":1}}],["296092",{"2":{"84":1}}],["296639",{"2":{"30":1}}],["291555",{"2":{"83":1}}],["291577",{"2":{"32":1}}],["29205",{"2":{"76":1}}],["293126",{"2":{"48":1}}],["290734",{"2":{"30":2}}],["299799",{"2":{"28":1}}],["295319",{"2":{"28":3}}],["295548",{"2":{"25":5}}],["298179",{"2":{"28":3}}],["298383",{"2":{"26":1}}],["297023",{"2":{"17":1}}],["29",{"2":{"13":1,"45":2,"76":2,"80":2}}],["28346307460586856",{"2":{"80":1}}],["2868262581079416",{"2":{"79":1}}],["286",{"2":{"76":1}}],["28035",{"2":{"62":2,"64":2,"66":6}}],["2855663183499576",{"2":{"79":1}}],["2858",{"2":{"32":1}}],["285965",{"2":{"26":1}}],["28438",{"2":{"32":1}}],["284399",{"2":{"29":1,"31":2}}],["28405",{"2":{"26":1}}],["28708",{"2":{"25":3}}],["28",{"2":{"13":1,"45":1,"76":2}}],["2601",{"2":{"85":1}}],["2600×5",{"2":{"84":1}}],["2600×4",{"2":{"84":2}}],["2600",{"2":{"84":3}}],["26069",{"2":{"28":3}}],["266342",{"2":{"83":1}}],["266013",{"2":{"76":1}}],["26×11",{"2":{"76":1}}],["263531",{"2":{"76":1}}],["269905",{"2":{"78":1}}],["269685",{"2":{"30":1}}],["26917",{"2":{"26":1}}],["268319",{"2":{"25":3}}],["26",{"2":{"13":2}}],["216905",{"2":{"76":1}}],["216524",{"2":{"13":1}}],["21316",{"2":{"62":2,"64":2,"66":6}}],["213826",{"2":{"30":1}}],["214909",{"2":{"45":1,"47":1}}],["215458",{"2":{"30":1}}],["215049",{"2":{"26":1}}],["219583",{"2":{"29":1,"31":2}}],["21149",{"2":{"28":1}}],["2115",{"2":{"25":2}}],["21714",{"2":{"25":3}}],["218579",{"2":{"17":1}}],["21",{"2":{"5":4,"13":1,"17":2,"44":1,"45":1,"74":1}}],["256817",{"2":{"84":1}}],["2599",{"2":{"84":3}}],["2598",{"2":{"84":3}}],["2597",{"2":{"84":3}}],["2596",{"2":{"84":3}}],["2595",{"2":{"84":3}}],["259597",{"2":{"76":1}}],["2594",{"2":{"84":3}}],["2571287355813575",{"2":{"79":1,"81":2}}],["257129",{"2":{"78":1}}],["257822",{"2":{"29":1,"31":2}}],["2585",{"2":{"84":3}}],["258764",{"2":{"76":1}}],["25825",{"2":{"46":4}}],["255579",{"2":{"76":1}}],["255916",{"2":{"30":1}}],["253984",{"2":{"28":1}}],["253849",{"2":{"15":2,"17":1}}],["25243",{"2":{"28":1}}],["2504949184379115",{"2":{"79":2}}],["250913",{"2":{"28":1}}],["250752",{"2":{"25":5}}],["25",{"2":{"5":2,"13":1,"25":10,"46":2,"73":2}}],["236866",{"2":{"84":1}}],["23502",{"2":{"76":1}}],["23546",{"2":{"25":3}}],["233997",{"2":{"84":1}}],["233685",{"2":{"76":1}}],["233778",{"2":{"48":1}}],["231283",{"2":{"47":2}}],["2379",{"2":{"45":1}}],["23788",{"2":{"26":1}}],["230047",{"2":{"30":1}}],["239878",{"2":{"28":1}}],["234458",{"2":{"30":1}}],["2344",{"2":{"25":3}}],["23",{"2":{"5":1,"13":1,"25":3,"44":2,"45":2}}],["20636222545147498",{"2":{"85":1}}],["206362",{"2":{"84":2}}],["206406",{"2":{"30":1}}],["203",{"2":{"76":2}}],["203703",{"2":{"25":2}}],["201129",{"2":{"75":1}}],["201",{"2":{"73":1}}],["201734",{"2":{"25":3}}],["20758428874582302",{"2":{"85":1}}],["207584",{"2":{"84":2}}],["207735",{"2":{"76":1}}],["20779",{"2":{"26":1}}],["207882",{"2":{"62":2,"64":2,"66":6}}],["208365",{"2":{"30":1}}],["208384",{"2":{"28":1}}],["205929",{"2":{"28":1}}],["204879",{"2":{"84":1}}],["204084",{"2":{"78":1}}],["20412",{"2":{"28":1}}],["204559",{"2":{"28":1}}],["204551",{"2":{"25":5}}],["202035",{"2":{"47":2}}],["202743",{"2":{"28":2}}],["2026",{"2":{"25":2}}],["2021",{"2":{"0":25}}],["2005",{"2":{"74":1}}],["20051",{"2":{"29":1,"31":2}}],["2003",{"2":{"19":1}}],["2000",{"2":{"19":1,"25":72,"26":3,"44":32,"45":21,"47":16,"74":18}}],["2001",{"2":{"15":4,"44":28,"45":17,"47":3}}],["200",{"2":{"5":1,"15":9,"48":26,"49":14}}],["20",{"2":{"4":4,"5":18,"15":3,"19":2,"20":12,"44":1,"66":2,"75":1,"76":8,"79":1}}],["2×3",{"2":{"73":3}}],["2×3×2",{"2":{"1":1,"15":1}}],["2×2",{"2":{"17":2,"73":1}}],["2×10×3",{"2":{"13":2}}],["2×4",{"2":{"5":1,"15":4}}],["2×4×2",{"2":{"3":1}}],["2",{"2":{"0":10,"1":4,"3":3,"4":3,"5":14,"8":3,"13":6,"15":16,"16":1,"17":10,"19":9,"20":8,"21":4,"23":2,"25":13,"26":5,"28":12,"29":1,"30":8,"31":2,"32":5,"33":8,"34":2,"44":2,"45":17,"46":24,"47":6,"48":8,"61":2,"62":4,"64":6,"65":3,"66":11,"73":62,"74":2,"75":1,"76":21,"78":2,"79":2,"80":5,"83":2,"84":8,"85":2}}],["==",{"2":{"20":1,"30":1,"47":1}}],["=>",{"2":{"1":10,"2":10,"3":15,"4":22,"11":6,"15":29,"19":4,"20":29,"22":2,"45":7,"46":18,"47":2,"62":1,"64":6,"66":7,"73":1,"84":1}}],["=",{"2":{"0":15,"1":4,"3":4,"4":10,"5":11,"13":7,"15":7,"16":9,"17":4,"18":1,"19":7,"20":13,"21":2,"23":1,"25":5,"26":3,"28":3,"29":1,"30":2,"32":1,"33":1,"44":3,"45":2,"46":1,"47":2,"48":7,"61":3,"62":1,"64":3,"65":8,"68":1,"70":1,"73":2,"74":7,"75":1,"76":3,"77":2,"78":4,"79":84,"80":37,"81":8,"83":4}}],["few",{"2":{"64":2}}],["feb",{"2":{"46":6,"74":1}}],["fact",{"2":{"77":1}}],["facing",{"2":{"35":1}}],["facilitate",{"2":{"11":2,"74":1}}],["fails",{"2":{"25":1}}],["fail",{"2":{"24":1}}],["favours",{"2":{"68":1}}],["favour",{"2":{"20":1}}],["fale",{"2":{"49":1}}],["fallback",{"2":{"11":1}}],["falls",{"2":{"5":2,"73":1}}],["fall",{"2":{"5":2}}],["falses",{"2":{"61":1}}],["false",{"2":{"1":1,"3":5,"11":1,"15":1,"19":2,"20":1,"24":1,"49":27}}],["far",{"2":{"4":1}}],["fast",{"2":{"4":1,"74":1,"81":1}}],["fri",{"2":{"74":2}}],["friendly",{"2":{"27":1}}],["frequency",{"2":{"33":2}}],["freely",{"2":{"17":1}}],["freeunits",{"2":{"5":1}}],["free",{"2":{"3":1,"30":1}}],["fraction",{"2":{"19":1}}],["from",{"2":{"0":3,"1":1,"2":1,"3":3,"4":10,"5":3,"8":1,"15":3,"16":3,"17":1,"18":1,"19":6,"20":1,"21":5,"23":13,"25":1,"30":1,"34":1,"36":1,"37":1,"38":1,"41":1,"42":10,"48":7,"51":1,"64":1,"73":1,"74":2,"75":1,"76":2,"81":1,"84":1}}],["further",{"2":{"40":1,"46":1}}],["future",{"2":{"4":1,"5":1,"20":1,"23":1,"72":1}}],["full",{"2":{"3":1,"4":3}}],["functionality",{"2":{"52":1}}],["functional",{"2":{"27":1}}],["functions",{"0":{"44":1,"80":1},"2":{"15":1,"19":2,"27":1,"32":1,"44":2,"64":1,"67":1,"68":1,"80":2}}],["function",{"2":{"3":1,"4":2,"5":2,"19":12,"20":2,"40":1,"43":2,"44":2,"45":2,"46":4,"47":1,"73":1,"74":1}}],["foo",{"2":{"64":3}}],["follow",{"2":{"44":1,"67":1}}],["following",{"2":{"12":1}}],["four",{"2":{"19":2}}],["found",{"2":{"3":1,"7":1,"20":3,"31":2,"78":1}}],["forms",{"2":{"27":1}}],["formats",{"2":{"10":1}}],["format",{"0":{"41":1},"2":{"2":2,"8":1,"11":1,"36":1,"41":2}}],["forward",{"2":{"4":1,"7":1,"15":2}}],["forwardordered",{"2":{"0":6,"3":1,"4":6,"5":8,"7":3,"13":6,"15":8,"17":6,"19":4,"20":10,"21":1,"25":18,"26":2,"45":9,"46":7,"47":5,"48":15,"49":14,"62":1,"64":4,"66":9,"73":28,"74":3,"75":6,"76":8,"77":2,"78":15,"79":1,"80":41,"83":6,"84":2}}],["for",{"2":{"0":12,"1":3,"2":2,"3":7,"4":40,"5":19,"7":2,"8":3,"10":1,"11":4,"15":17,"16":10,"17":5,"18":3,"19":12,"20":8,"21":4,"22":3,"23":5,"24":1,"25":1,"27":1,"28":2,"29":1,"30":1,"34":1,"39":1,"40":5,"42":6,"43":1,"46":4,"48":3,"51":3,"53":1,"54":1,"56":1,"57":2,"59":1,"61":1,"68":1,"72":1,"73":1,"74":1,"75":6,"77":2,"78":1,"79":2,"82":1,"84":3}}],["flexible",{"2":{"40":1}}],["float32",{"2":{"26":4}}],["float64",{"2":{"0":3,"1":1,"3":1,"4":1,"5":1,"13":1,"15":9,"17":7,"18":1,"19":3,"20":13,"21":2,"25":7,"26":2,"28":12,"29":2,"30":4,"31":2,"32":2,"33":1,"45":9,"46":18,"47":5,"48":18,"49":14,"62":4,"64":4,"66":11,"73":30,"74":1,"75":1,"76":12,"77":6,"78":39,"79":9,"80":141,"83":3,"84":36}}],["flags",{"2":{"3":1}}],["final",{"2":{"46":1}}],["find",{"2":{"74":1}}],["findfirst",{"2":{"7":1}}],["finds",{"2":{"7":1}}],["fix",{"2":{"20":1}}],["fixed",{"2":{"8":1}}],["field",{"2":{"11":1,"15":1,"20":5,"40":1,"66":1}}],["fields",{"2":{"2":1,"3":1,"4":1,"6":1,"20":5,"23":1,"27":2,"40":3,"41":1}}],["firstindex",{"2":{"32":1}}],["first",{"2":{"3":3,"12":1,"13":1,"16":8,"21":1,"31":1,"44":1,"46":1,"48":2,"73":2}}],["filter",{"2":{"48":1,"49":1,"73":1}}],["filters",{"2":{"5":1}}],["fill",{"2":{"15":4,"20":2,"28":4,"41":1,"74":1}}],["filled",{"2":{"2":1,"10":1}}],["file",{"2":{"0":1,"11":2,"51":1}}],["f",{"2":{"1":5,"3":10,"4":2,"5":1,"13":1,"15":5,"17":3,"19":11,"20":11,"70":1,"73":1,"84":1}}],["gc",{"2":{"33":6}}],["goals",{"0":{"27":1},"2":{"27":1}}],["got",{"2":{"25":1}}],["good",{"2":{"16":1}}],["globally",{"2":{"24":1}}],["global",{"0":{"21":1},"1":{"22":1,"23":1},"2":{"21":2}}],["gpus",{"0":{"26":1},"1":{"27":1},"2":{"22":1,"26":1,"57":1}}],["gpu",{"0":{"27":1},"2":{"20":2,"26":4,"27":7,"61":1}}],["gribdatasets",{"2":{"35":1}}],["grid",{"2":{"4":1}}],["gridded",{"2":{"4":1}}],["groupmeans",{"2":{"19":2}}],["grouped",{"2":{"19":1,"47":1}}],["groups",{"2":{"19":12,"45":2,"46":4}}],["groupings",{"2":{"44":1}}],["groupingfunction",{"2":{"19":2}}],["grouping",{"0":{"44":1,"45":1},"2":{"19":9,"43":4,"46":2,"47":1}}],["groupby",{"2":{"19":13,"43":1,"45":13,"46":21,"47":4}}],["group",{"0":{"19":1,"43":1},"1":{"44":1,"45":1,"46":1,"47":1},"2":{"19":9,"44":1,"45":3,"46":13,"47":2}}],["gis",{"2":{"51":2}}],["giving",{"2":{"5":1,"82":1}}],["given",{"2":{"20":1,"82":1}}],["give",{"2":{"3":1,"4":1,"5":1,"15":1,"28":1,"78":1}}],["gives",{"2":{"0":1,"16":2,"66":1}}],["github",{"2":{"4":1,"66":1}}],["guide",{"2":{"43":1}}],["guarantee",{"2":{"11":1}}],["guaranteed",{"2":{"3":1,"15":1}}],["guessed",{"2":{"2":1,"8":2}}],["guess",{"2":{"0":1,"44":1}}],["gt",{"2":{"1":2,"3":3,"5":1,"15":2,"19":1,"20":2}}],["g",{"2":{"0":1,"3":1,"4":2,"5":1,"13":1,"15":1,"19":1,"36":1,"61":1,"65":1,"70":1,"84":1}}],["geotiff",{"2":{"10":1}}],["geospatial",{"2":{"4":3,"51":1}}],["gets",{"2":{"73":2}}],["getting",{"2":{"15":1,"46":1}}],["getters",{"0":{"48":1},"1":{"49":1}}],["getter",{"2":{"4":1}}],["get",{"2":{"1":3,"2":1,"3":1,"11":3,"15":4,"18":1,"23":1,"29":1,"48":7,"73":2,"74":1,"79":1}}],["getindex",{"2":{"0":1,"3":2,"16":3,"17":1,"23":2,"31":1,"42":2}}],["generator",{"2":{"21":4}}],["generators",{"0":{"17":1},"2":{"35":1}}],["generates",{"2":{"19":7}}],["generate",{"2":{"3":1,"19":2,"23":1}}],["generated",{"2":{"3":1,"18":1,"40":1}}],["general",{"2":{"11":1}}],["generally",{"2":{"0":1}}],["generic",{"2":{"0":1,"4":1,"65":1}}],["p",{"2":{"84":1}}],["pythons",{"2":{"35":1}}],["permafrost",{"2":{"56":1}}],["permutation",{"2":{"80":1}}],["permuting",{"2":{"20":2}}],["permute",{"2":{"20":1,"24":1,"68":1}}],["permuteddimsarray",{"2":{"80":2}}],["permutedims",{"2":{"32":1,"80":3}}],["permuted",{"2":{"20":1}}],["periods",{"2":{"19":3}}],["perform",{"2":{"32":1}}],["performed",{"2":{"4":1}}],["performance",{"0":{"33":1,"81":1},"2":{"4":3,"16":1,"51":1}}],["pkg",{"2":{"12":2}}],["pkg>",{"2":{"12":2}}],["put",{"2":{"11":1}}],["pixels",{"2":{"5":1}}],["powerful",{"2":{"55":1,"61":1}}],["polygon",{"2":{"51":1}}],["positions",{"0":{"10":1}}],["position",{"2":{"4":1,"9":1,"10":6}}],["possible",{"2":{"4":2,"5":1,"7":1,"20":1,"26":1,"32":1,"66":1,"67":1}}],["point",{"2":{"0":1,"4":2,"5":1,"9":1,"17":1,"74":1}}],["points",{"2":{"0":6,"4":7,"5":12,"8":2,"9":4,"13":4,"15":5,"17":5,"19":4,"20":9,"21":1,"25":18,"26":2,"45":9,"46":4,"47":5,"48":32,"49":28,"62":2,"64":2,"66":4,"73":9,"74":1,"75":4,"76":10,"77":2,"78":15,"79":1,"80":49,"83":4,"84":2}}],["planned",{"2":{"72":1}}],["plasma",{"2":{"71":2}}],["places",{"2":{"68":2}}],["place",{"2":{"27":1,"60":1}}],["placed",{"2":{"20":1}}],["please",{"2":{"4":1}}],["plus",{"2":{"4":1}}],["plots",{"0":{"67":1,"69":1},"1":{"70":1,"71":1,"72":1},"2":{"0":1,"3":1,"11":1,"15":2,"67":2,"68":1,"72":1}}],["plotted",{"2":{"0":1,"4":1,"7":1,"9":1,"10":1}}],["plotting",{"2":{"0":1}}],["plot",{"2":{"0":3,"2":2,"67":2,"68":2}}],["printing",{"2":{"74":1}}],["principles",{"2":{"44":1}}],["prior",{"2":{"20":1}}],["primarily",{"2":{"3":1}}],["primitives",{"2":{"31":2}}],["primitive",{"0":{"3":1}}],["process",{"2":{"57":1,"65":1}}],["providing",{"2":{"51":1}}],["provides",{"2":{"43":1,"48":1,"58":1,"82":1}}],["provide",{"2":{"4":2}}],["provided",{"2":{"4":5,"5":3,"8":1,"21":2,"74":1}}],["projected",{"2":{"36":1,"51":1}}],["prod",{"2":{"32":1,"80":2}}],["probably",{"2":{"22":1,"44":1}}],["problems",{"2":{"4":1}}],["property",{"2":{"22":1}}],["properties",{"2":{"2":2,"20":1,"25":1,"41":1,"74":1,"75":2}}],["programmatically",{"2":{"15":1}}],["predicates",{"0":{"49":1},"2":{"49":1}}],["predefined",{"2":{"34":1}}],["prefereble",{"2":{"19":1}}],["preserved",{"2":{"20":1}}],["present",{"2":{"5":1,"17":1,"35":1}}],["pressed",{"2":{"12":1}}],["previously",{"2":{"20":1}}],["previous",{"2":{"3":1,"5":1}}],["precedence",{"2":{"0":1}}],["paaarnet",{"2":{"23":3,"42":3}}],["padding",{"2":{"46":1}}],["pad",{"2":{"19":5}}],["past",{"2":{"15":1}}],["pass",{"2":{"11":1,"16":1,"20":3,"23":2,"41":1,"46":1,"66":1}}],["passing",{"2":{"3":2,"4":1,"19":1,"20":1,"25":1}}],["passed",{"2":{"0":1,"2":1,"3":5,"5":3,"17":1,"20":6,"21":1,"23":1,"27":1,"40":1,"73":2}}],["partly",{"2":{"76":1}}],["part",{"2":{"23":1,"66":1}}],["parentheses",{"2":{"20":1}}],["parent",{"2":{"15":1,"20":5,"21":4,"23":13,"24":1,"26":2,"27":1,"33":2,"41":1,"42":9,"61":5,"81":1}}],["parameters",{"2":{"3":1}}],["parameter",{"2":{"0":1,"11":1}}],["pair",{"2":{"11":1,"19":1,"20":4}}],["pairs",{"2":{"11":1,"19":1,"20":8}}],["packages",{"2":{"35":2,"36":1,"44":1,"67":1,"82":1}}],["package",{"2":{"4":1,"12":1,"13":1,"19":1,"52":1,"54":1,"55":1}}],["d=rand",{"2":{"77":1}}],["dynamicgrids",{"0":{"57":1},"2":{"27":1,"57":2}}],["dropdims",{"2":{"32":1,"80":1}}],["dropped",{"2":{"23":2,"42":2}}],["drop=true",{"2":{"21":3}}],["dd",{"2":{"5":3,"20":3,"34":1,"39":2,"44":1,"51":1,"53":1,"65":2,"66":1,"68":1,"82":1}}],["da4",{"2":{"33":1}}],["da5",{"2":{"32":2}}],["das",{"2":{"23":1}}],["daily",{"2":{"19":1}}],["dayofyear",{"2":{"44":2,"46":3}}],["dayofweek",{"2":{"44":1}}],["day",{"2":{"19":3,"44":2,"46":4}}],["days",{"2":{"4":1,"46":1}}],["da3",{"2":{"16":2}}],["da2",{"2":{"16":2,"20":7,"30":5}}],["da1",{"2":{"16":2,"20":7,"29":2,"30":1,"31":2}}],["da",{"2":{"4":2,"20":10,"28":2,"30":2}}],["dataframe",{"0":{"84":1},"2":{"84":8}}],["dataframes",{"0":{"82":1},"1":{"83":1,"84":1,"85":1},"2":{"5":1,"82":1,"83":1}}],["data2",{"2":{"83":1,"84":2,"85":1}}],["data2=rand",{"2":{"83":1}}],["data1",{"2":{"83":2,"84":2,"85":1}}],["dataset",{"2":{"36":2,"54":1}}],["datasets",{"0":{"16":1},"2":{"4":1,"52":1}}],["dataapi",{"2":{"19":1}}],["data=autovalues",{"2":{"4":1}}],["data",{"2":{"0":2,"1":1,"2":1,"4":17,"11":1,"13":2,"15":5,"16":6,"18":1,"19":2,"20":6,"21":2,"23":3,"25":8,"26":2,"27":2,"34":1,"35":1,"40":2,"46":1,"51":2,"52":1,"53":1,"56":1,"57":1,"59":1,"61":1,"64":3,"82":1,"83":2,"84":2,"85":1}}],["date",{"2":{"4":2,"74":1}}],["datetime",{"2":{"0":13,"5":1,"15":4,"19":2,"25":28,"44":5,"45":3,"47":11,"74":10,"75":1}}],["dates",{"2":{"0":15,"4":2,"15":1,"19":1,"25":36,"44":4,"45":4,"47":12,"74":9,"83":1}}],["d",{"0":{"24":1},"1":{"25":1},"2":{"3":2,"4":2,"13":1,"17":1,"20":12,"24":2,"25":6,"64":2,"70":1,"75":3,"77":1,"78":6,"79":23,"80":28,"81":2,"84":2}}],["dsl",{"2":{"55":1}}],["dst",{"2":{"21":6}}],["ds",{"2":{"3":1,"4":2,"20":2,"21":2}}],["docs",{"2":{"42":2}}],["documented",{"2":{"21":1}}],["dot",{"2":{"24":1}}],["dotview",{"2":{"3":1}}],["doing",{"2":{"17":1,"21":1,"46":1,"64":1,"76":1}}],["do",{"2":{"4":2,"11":1,"12":1,"19":1,"20":3,"32":1,"46":1,"62":1,"66":2}}],["doesn",{"2":{"17":1,"30":1,"31":1,"65":1}}],["does",{"2":{"4":1,"20":1,"24":1,"40":1,"44":1,"46":1,"78":1,"80":1,"82":1}}],["done",{"2":{"15":1,"20":1,"82":1}}],["don",{"2":{"2":1,"4":1,"21":4,"30":1,"64":1,"66":1}}],["direct",{"2":{"35":1}}],["directly",{"2":{"17":1,"33":1,"35":1,"46":1,"81":1,"85":1}}],["difficult",{"2":{"27":1}}],["different",{"0":{"71":1},"2":{"3":1,"5":3,"10":1,"11":1,"20":1,"48":1}}],["divide",{"2":{"19":1}}],["di",{"2":{"17":2}}],["dicts",{"2":{"27":1,"60":1}}],["dict",{"2":{"4":4,"11":3,"15":1,"19":3,"20":1,"28":5,"45":7,"46":11,"47":2,"64":2}}],["dictates",{"2":{"2":1}}],["distinguishing",{"2":{"48":1}}],["distance",{"2":{"4":2,"5":1}}],["discrete",{"2":{"46":1}}],["discarded",{"2":{"5":1,"15":1}}],["diskarray",{"2":{"52":1}}],["diskarrays",{"0":{"35":1},"2":{"19":1,"35":2}}],["disk",{"2":{"35":1}}],["dispatch",{"2":{"0":1,"11":1}}],["dimmatrix",{"2":{"68":1}}],["dimvector",{"2":{"21":1}}],["dimgroupbyarray",{"2":{"19":6,"45":1,"46":8,"47":1}}],["dimname",{"2":{"19":1}}],["dimnum",{"2":{"1":4,"15":4,"39":1}}],["dimcolumn",{"2":{"18":1}}],["dimtype",{"2":{"19":1}}],["dimtable",{"2":{"18":4,"84":4}}],["dimtuple",{"2":{"16":1,"48":4}}],["dimpoints",{"2":{"17":4}}],["dimindices",{"2":{"17":9,"30":2,"38":1,"76":1}}],["dimz",{"2":{"5":2,"16":4}}],["dimselector",{"0":{"76":1}}],["dimselectors",{"2":{"17":7,"76":3}}],["dimsmatch",{"2":{"3":2}}],["dimstoreduce",{"2":{"3":1}}],["dimstacks",{"0":{"77":1},"1":{"78":1,"79":1,"80":1,"81":1},"2":{"24":1}}],["dimstackinterface",{"2":{"23":2,"42":6}}],["dimstack",{"2":{"2":1,"16":19,"20":1,"21":2,"24":1,"42":7,"48":1,"61":2,"77":3,"78":11,"79":2,"80":25,"82":1,"83":2,"84":2,"85":2}}],["dims2indices",{"2":{"2":1}}],["dims=",{"2":{"20":3,"21":1,"25":4}}],["dims=ti",{"2":{"0":1,"16":2,"19":1,"21":1,"32":1}}],["dims=z",{"2":{"0":1}}],["dims=y",{"2":{"0":1,"20":1,"80":11}}],["dims=x",{"2":{"0":1}}],["dims",{"0":{"24":1,"32":1,"37":1,"39":1},"1":{"25":1,"38":1,"39":1},"2":{"0":4,"1":11,"2":8,"3":13,"4":18,"5":6,"11":2,"13":3,"15":42,"16":3,"17":14,"18":1,"19":9,"20":33,"21":13,"23":26,"24":4,"25":10,"26":1,"28":11,"29":3,"30":5,"31":4,"32":4,"33":1,"34":1,"36":1,"37":1,"38":1,"39":5,"40":2,"41":2,"42":17,"45":9,"46":19,"47":6,"48":24,"49":29,"61":5,"62":2,"64":4,"66":6,"73":15,"74":1,"75":1,"76":5,"77":5,"78":30,"79":5,"80":114,"83":4,"84":27}}],["dimarrays",{"0":{"28":1},"1":{"29":1,"30":1,"31":1,"32":1,"33":1},"2":{"28":1}}],["dimarrayinterface",{"2":{"23":2,"42":6}}],["dimarray",{"0":{"29":1},"2":{"0":4,"1":5,"2":1,"3":2,"4":6,"5":11,"13":7,"15":37,"16":11,"17":6,"18":2,"19":10,"20":10,"21":1,"24":2,"25":11,"26":2,"27":1,"28":17,"29":4,"30":4,"31":2,"32":2,"33":1,"42":4,"45":13,"46":39,"47":8,"48":7,"56":1,"59":1,"61":3,"62":2,"64":2,"66":6,"73":16,"74":4,"75":2,"76":5,"77":1,"78":3,"83":1,"84":1}}],["dim",{"2":{"0":11,"1":2,"2":4,"3":9,"4":12,"11":2,"15":7,"18":3,"20":16,"29":1,"32":1,"34":3,"38":1,"83":1}}],["dimensionmismatch",{"2":{"25":1,"78":1}}],["dimensionality",{"2":{"21":1}}],["dimensional",{"0":{"24":1,"30":1},"1":{"25":1},"2":{"0":1,"3":1,"16":1,"20":1,"23":2,"38":1,"43":1,"79":1}}],["dimensionaldata",{"0":{"36":1},"1":{"37":1,"38":1,"39":1,"40":1,"41":1,"42":1},"2":{"0":22,"1":9,"2":5,"3":20,"4":35,"5":21,"6":1,"7":6,"8":5,"9":3,"10":6,"11":4,"12":3,"13":1,"15":20,"16":3,"17":3,"18":4,"19":10,"20":20,"21":5,"22":3,"23":8,"25":1,"26":2,"27":3,"28":1,"31":6,"34":3,"35":1,"36":1,"37":1,"40":1,"41":2,"42":10,"43":1,"44":2,"48":3,"51":1,"52":1,"60":1,"61":1,"62":1,"64":1,"68":1,"73":2,"74":1,"77":1,"82":1,"83":1}}],["dimension",{"0":{"17":1,"25":1,"29":1,"38":1,"47":1},"2":{"0":21,"1":27,"2":11,"3":32,"4":24,"5":3,"10":2,"11":2,"15":75,"16":3,"17":9,"18":7,"19":2,"20":33,"21":9,"23":4,"24":2,"25":3,"28":2,"30":3,"31":1,"32":3,"34":3,"38":1,"39":5,"40":1,"41":2,"42":2,"43":1,"45":1,"47":2,"48":6,"62":1,"63":1,"64":4,"66":1,"73":2,"74":2,"75":1,"77":1,"79":1,"80":1,"82":2,"84":2}}],["dimensions",{"0":{"0":1,"34":1},"1":{"1":1,"2":1,"3":1},"2":{"0":30,"1":13,"2":7,"3":32,"4":39,"5":11,"6":1,"7":6,"8":5,"9":3,"10":8,"11":5,"15":25,"16":3,"17":5,"18":1,"19":3,"20":24,"21":9,"23":6,"24":2,"25":1,"28":1,"30":4,"31":4,"33":1,"34":7,"37":2,"38":1,"42":4,"47":2,"48":3,"49":2,"63":2,"64":1,"68":1,"73":1,"75":1,"77":1,"78":1,"79":1,"82":2,"83":1,"84":2}}],["during",{"2":{"0":1,"35":1,"57":1}}],["declarative",{"2":{"62":1}}],["dec",{"2":{"46":4,"74":1}}],["december",{"2":{"19":2}}],["demo",{"2":{"44":1}}],["developers",{"2":{"40":1,"52":1}}],["development",{"2":{"35":1,"67":1}}],["devicebuffer",{"2":{"26":1}}],["dest",{"2":{"20":4}}],["descriptive",{"2":{"19":1}}],["designed",{"2":{"35":1,"36":1}}],["design",{"2":{"16":2}}],["deprecated",{"2":{"20":1,"67":1}}],["depreciated",{"2":{"5":1}}],["dependencies",{"2":{"51":1}}],["dependency",{"2":{"35":1}}],["dependent",{"2":{"0":1}}],["dependentdim",{"2":{"0":4}}],["depending",{"2":{"1":1,"15":1}}],["detect",{"2":{"4":2,"15":4,"41":1}}],["detected",{"2":{"4":4,"41":1,"74":2,"75":5}}],["determine",{"2":{"7":1,"74":1}}],["determined",{"2":{"4":1}}],["determines",{"2":{"3":1,"17":1}}],["details",{"2":{"0":1,"23":2,"34":1}}],["definition",{"2":{"23":2,"42":2}}],["defining",{"2":{"4":2}}],["defines",{"2":{"4":1,"8":1,"17":1,"20":1,"23":2,"42":3,"48":1,"55":1}}],["defined",{"2":{"3":1,"4":1,"16":1,"20":3,"34":1,"40":1,"45":1}}],["define",{"2":{"0":1,"3":1,"4":1,"9":1,"19":1,"25":1,"28":1,"45":1,"48":1,"75":1,"76":1,"83":1}}],["default",{"0":{"70":1},"2":{"0":1,"1":3,"3":11,"4":7,"10":1,"15":4,"17":2,"19":5,"22":1,"67":1,"68":1}}],["w",{"2":{"84":1}}],["would",{"2":{"17":2,"24":1,"46":1,"48":1}}],["works",{"2":{"4":1,"20":1,"24":2,"31":2,"46":2,"57":1,"78":2}}],["work",{"2":{"2":1,"4":4,"5":1,"10":2,"11":1,"15":1,"16":1,"19":1,"20":1,"21":1,"24":2,"27":3,"31":3,"34":1,"40":2,"44":1,"52":1,"65":1,"67":1,"68":2,"74":1,"80":1}}],["working",{"2":{"1":1,"16":2}}],["word",{"2":{"0":1}}],["want",{"2":{"12":1,"21":4,"23":2,"46":2,"48":1,"62":1,"66":2}}],["way",{"2":{"4":1,"20":1,"25":1,"40":1,"64":1,"66":1}}],["warning",{"2":{"3":1,"31":2,"64":1}}],["warn",{"2":{"3":1}}],["whose",{"2":{"20":3}}],["whole",{"2":{"5":2}}],["what",{"2":{"20":1,"44":1,"46":1,"48":2,"62":1,"64":1,"66":1}}],["whatever",{"2":{"17":1,"48":1}}],["which",{"2":{"3":1,"4":1,"19":1,"20":4,"21":1,"24":1,"32":1,"48":1,"51":1,"71":1,"73":3,"76":1}}],["whichever",{"2":{"3":1}}],["while",{"2":{"3":1,"11":1,"16":2,"17":1}}],["wherever",{"2":{"21":1,"46":1}}],["where",{"2":{"3":4,"4":9,"5":7,"7":1,"8":2,"9":1,"10":2,"11":1,"16":1,"20":4,"32":1,"46":1,"48":1,"61":1,"64":1,"73":4,"75":1}}],["whether",{"2":{"1":1,"15":1}}],["whenever",{"2":{"27":1}}],["when",{"2":{"0":5,"2":1,"4":6,"5":2,"11":1,"16":2,"17":1,"19":3,"20":1,"21":3,"22":1,"27":1,"30":1,"31":1,"38":1,"41":1,"46":1,"74":1,"75":1,"78":1}}],["write",{"2":{"85":2}}],["written",{"2":{"20":1}}],["writing",{"2":{"3":1,"20":1}}],["wraps",{"2":{"38":1}}],["wrapping",{"2":{"3":1,"4":1,"48":5,"52":1,"74":4}}],["wrapper",{"2":{"4":4,"11":1,"19":1,"20":2,"21":4,"22":2,"34":1,"46":1,"64":1}}],["wrappers",{"2":{"0":2,"4":1,"5":1,"11":2,"22":1,"28":2,"30":1,"61":1}}],["wrapped",{"2":{"3":2,"19":1,"20":1,"34":1,"65":1}}],["wrap",{"2":{"0":2,"19":3,"34":3,"74":1}}],["weds",{"2":{"74":2}}],["were",{"2":{"31":2}}],["well",{"2":{"18":1,"30":1,"73":2}}],["weeks",{"2":{"4":1}}],["week",{"2":{"4":1}}],["we",{"2":{"0":1,"4":3,"5":1,"16":1,"17":2,"19":2,"20":2,"21":8,"24":3,"25":1,"28":2,"29":1,"30":2,"34":1,"42":2,"44":1,"45":3,"46":13,"47":2,"48":1,"52":1,"62":2,"73":3,"74":6,"75":1,"76":4,"78":2,"79":3,"84":2,"85":1}}],["winter",{"2":{"46":1}}],["wish",{"2":{"5":1}}],["wider",{"2":{"41":1}}],["wide",{"2":{"4":1,"51":1,"82":1}}],["widely",{"2":{"1":1}}],["within",{"2":{"5":1,"17":1,"73":2}}],["without",{"2":{"3":1,"4":2,"11":1,"16":1,"20":2,"30":1,"40":1,"61":1,"65":1,"74":1,"79":1}}],["with",{"0":{"24":1,"29":1,"72":1},"1":{"25":1},"2":{"0":3,"1":5,"2":2,"3":10,"4":13,"5":10,"7":1,"8":1,"10":8,"11":1,"12":1,"15":12,"16":8,"17":7,"18":1,"19":7,"20":14,"21":6,"23":3,"24":5,"25":3,"26":1,"27":1,"28":1,"29":1,"30":3,"31":2,"32":1,"33":3,"34":5,"35":1,"38":1,"40":2,"42":2,"43":3,"45":8,"46":11,"47":3,"48":1,"49":1,"52":2,"53":1,"61":2,"63":1,"64":5,"65":1,"67":2,"68":1,"73":10,"74":1,"75":2,"76":3,"78":5,"79":2,"80":1,"81":1,"82":1,"84":1}}],["will",{"2":{"0":7,"1":1,"2":2,"3":7,"4":13,"5":9,"7":2,"8":2,"10":3,"11":2,"15":10,"16":7,"18":1,"19":5,"20":15,"21":1,"30":2,"39":2,"40":2,"43":1,"44":2,"48":1,"64":1,"65":1,"67":1,"68":3,"73":1,"74":2,"80":1,"84":2}}],["btime",{"2":{"81":2}}],["blue",{"2":{"71":1,"72":1}}],["block",{"2":{"23":1}}],["blocks",{"2":{"23":1,"46":2}}],["blockwidth",{"2":{"23":4}}],["b=rand",{"2":{"77":1}}],["b=falses",{"2":{"61":1}}],["b=1",{"2":{"13":1,"29":1}}],["building",{"2":{"35":1}}],["but",{"2":{"0":1,"1":2,"3":9,"4":4,"5":1,"8":1,"11":1,"15":2,"16":3,"17":3,"19":6,"20":1,"23":2,"25":1,"26":1,"30":2,"31":1,"35":2,"36":1,"44":1,"46":1,"47":1,"48":1,"51":1,"55":1,"62":1,"63":1,"64":2,"65":1,"66":1,"68":1,"73":1,"74":2,"75":1,"76":1}}],["bin",{"2":{"46":4}}],["binning",{"0":{"46":1},"2":{"19":2}}],["bins",{"2":{"19":15,"43":1,"46":5}}],["bitmatrix",{"2":{"61":2}}],["bit",{"2":{"13":1}}],["bar",{"2":{"64":3}}],["bayesian",{"2":{"54":1}}],["band",{"2":{"18":2}}],["backend",{"2":{"27":1}}],["back",{"2":{"5":1,"11":1}}],["basic",{"2":{"31":1}}],["basics",{"0":{"13":1}}],["basically",{"2":{"3":1,"19":1,"64":1}}],["base",{"2":{"3":2,"5":1,"15":10,"16":3,"19":1,"20":1,"21":7,"23":4,"24":2,"27":1,"31":1,"42":2,"74":2,"80":1}}],["basetypeof",{"2":{"3":5}}],["basedims",{"2":{"3":2}}],["based",{"2":{"2":1,"23":1,"35":1,"64":1}}],["brackets",{"2":{"64":1}}],["break",{"2":{"46":1}}],["breaking",{"2":{"4":1,"23":1,"65":1}}],["broken",{"2":{"66":1}}],["brought",{"2":{"34":1}}],["brodcasting",{"2":{"21":2,"24":1}}],["broadcasts",{"0":{"24":1},"1":{"25":1},"2":{"21":5,"24":2,"27":1,"80":1}}],["broadcast",{"0":{"24":1},"1":{"25":1},"2":{"19":3,"20":11,"21":4,"24":7,"25":7,"26":1,"35":1,"80":2}}],["broadcasting",{"2":{"3":1,"20":2,"21":5,"24":1,"45":1}}],["bonus",{"2":{"24":1}}],["box",{"2":{"23":1,"67":1}}],["boundaries",{"2":{"5":1}}],["bounds",{"2":{"4":9,"8":6,"48":8,"74":1,"75":2}}],["both",{"2":{"3":1,"4":1,"35":2,"52":1,"63":1,"78":1}}],["bool",{"2":{"1":3,"3":5,"4":2,"5":1,"15":11,"19":1,"21":2,"61":7,"73":2}}],["bytes",{"2":{"33":2,"81":2}}],["by",{"0":{"19":1,"43":1,"47":1},"1":{"44":1,"45":1,"46":1,"47":1},"2":{"0":1,"1":2,"3":13,"4":8,"5":4,"9":1,"15":2,"17":1,"19":8,"20":2,"25":2,"29":1,"33":2,"34":1,"35":1,"40":2,"45":2,"46":2,"47":3,"68":1,"71":1,"73":4}}],["b",{"2":{"0":7,"3":4,"4":2,"5":11,"13":3,"15":9,"16":3,"17":1,"20":4,"29":3,"31":2,"34":2,"47":3,"61":2,"62":2,"64":5,"65":3,"66":3,"67":1,"68":1,"70":2,"71":1,"73":27,"75":3,"76":3,"77":1,"78":4,"79":23,"80":40,"81":2,"84":2}}],["best",{"2":{"66":1}}],["benchmarktools",{"2":{"33":3,"81":1}}],["benchmark",{"2":{"33":3}}],["before",{"2":{"21":9}}],["become",{"2":{"84":1}}],["becomes",{"2":{"18":2}}],["because",{"2":{"19":2,"24":1}}],["behaves",{"2":{"17":2,"36":1}}],["behaviour",{"2":{"4":4,"5":1,"6":1,"16":2,"19":1,"20":1,"41":1,"67":1,"74":1,"77":1}}],["behaviours",{"2":{"4":1,"52":1,"65":1}}],["begin+1",{"2":{"31":1}}],["beginendsteprange",{"2":{"10":2}}],["beginendrange",{"2":{"10":2}}],["begin",{"0":{"31":1},"2":{"10":4,"31":2}}],["better",{"2":{"5":1}}],["between",{"2":{"0":1,"4":5,"5":21,"10":1,"11":1,"15":1,"16":2}}],["been",{"2":{"2":1,"3":1,"16":1,"20":1}}],["be",{"2":{"0":5,"1":5,"2":4,"3":11,"4":33,"5":17,"6":1,"7":2,"8":3,"10":4,"11":3,"12":1,"15":10,"16":4,"17":3,"19":8,"20":16,"21":2,"22":1,"23":3,"24":1,"25":1,"27":4,"30":3,"31":1,"32":1,"34":3,"36":1,"38":1,"40":1,"41":1,"44":1,"46":1,"60":1,"61":2,"62":1,"64":1,"66":1,"73":2,"74":3,"75":2,"78":1,"80":1}}],["ecosystem",{"2":{"82":1}}],["edges",{"2":{"46":1}}],["edge",{"2":{"19":1}}],["equally",{"2":{"19":1}}],["equivalent",{"2":{"16":1,"17":1,"21":2}}],["estimate",{"2":{"33":4}}],["essentially",{"2":{"17":1,"19":1}}],["especially",{"2":{"17":1,"21":1,"68":1}}],["effects",{"2":{"15":2}}],["enforce",{"2":{"77":1}}],["entries",{"2":{"64":2}}],["entry",{"2":{"19":3,"45":7,"46":11,"47":2}}],["engine",{"2":{"57":1}}],["ensure",{"2":{"21":4}}],["enables",{"2":{"35":1}}],["enable",{"2":{"8":1}}],["end",{"0":{"31":1},"2":{"5":4,"9":1,"10":6,"19":3,"20":1,"31":3,"48":1}}],["evaluations",{"2":{"33":2}}],["evaluated",{"2":{"5":1}}],["everything",{"2":{"36":1,"60":1,"64":1}}],["everywhere",{"2":{"34":1}}],["every",{"2":{"4":1,"5":1,"8":1,"20":2}}],["even",{"2":{"4":1,"17":1,"24":2,"31":1,"65":1,"74":1,"80":1}}],["error",{"2":{"3":2,"5":2,"25":1,"30":2,"64":1,"78":1}}],["errors",{"2":{"2":1,"3":1}}],["empty",{"2":{"3":1,"15":2,"23":2,"42":2,"75":1}}],["eltype",{"2":{"21":2,"61":2,"77":4,"78":22,"79":4,"80":88,"83":2,"84":26}}],["else",{"2":{"2":1,"19":1,"60":1,"64":1}}],["element",{"2":{"0":1,"2":1,"13":1,"15":2,"19":2,"25":3,"29":1,"30":2,"31":1,"44":8,"45":7,"46":13,"47":1,"48":2,"73":3,"74":3,"78":1,"79":2,"80":1,"85":1}}],["either",{"2":{"1":1,"2":1,"3":1,"4":2,"11":1,"15":2,"17":1,"19":4,"21":4}}],["early",{"2":{"23":2}}],["easiest",{"2":{"40":1}}],["easier",{"2":{"22":1,"39":1}}],["easily",{"2":{"0":1,"4":1,"36":2,"64":1}}],["eachindex",{"2":{"38":2}}],["eachother",{"2":{"24":1}}],["eachslice",{"2":{"21":4,"25":2,"32":1,"47":1}}],["each",{"2":{"0":1,"3":2,"4":5,"5":2,"8":1,"16":1,"17":2,"18":1,"19":1,"20":1,"25":1,"45":1,"48":2,"67":1,"74":1,"79":1,"81":1,"84":3}}],["except",{"2":{"24":1,"27":1}}],["exception",{"2":{"21":2}}],["exact",{"2":{"4":1,"9":1,"17":2,"19":1}}],["exactly",{"2":{"4":1,"5":1,"46":1,"73":1}}],["examples",{"2":{"0":2,"20":1,"21":1,"36":2}}],["example",{"0":{"25":1,"83":1},"2":{"0":5,"1":4,"3":2,"4":5,"5":7,"15":12,"16":2,"17":2,"18":1,"19":2,"20":5,"21":3,"25":1,"27":1,"40":1,"48":1}}],["extrema",{"2":{"32":1,"80":2}}],["extra",{"2":{"0":1,"75":1}}],["extent",{"2":{"48":9}}],["extents",{"2":{"48":2}}],["extensible",{"2":{"36":1,"40":1}}],["extension",{"2":{"24":1,"55":1}}],["extends",{"2":{"51":1,"53":1}}],["extend",{"2":{"16":1}}],["extended",{"2":{"4":1,"23":2,"36":2}}],["extending",{"0":{"36":1},"1":{"37":1,"38":1,"39":1,"40":1,"41":1,"42":1},"2":{"4":3,"20":1,"37":1}}],["exploratory",{"2":{"54":1}}],["explicit",{"2":{"4":1,"8":1,"42":1}}],["explicitly",{"2":{"4":2,"8":1,"19":1,"20":2,"21":4}}],["expected",{"2":{"21":1}}],["expression",{"2":{"20":1}}],["exported",{"0":{"1":1,"2":1}}],["existing",{"2":{"5":1,"20":1,"23":1,"43":1}}],["exists",{"2":{"3":1,"51":1}}],["exist",{"2":{"2":1,"60":1}}],["e",{"2":{"0":1,"3":1,"4":2,"5":2,"13":1,"15":1,"17":1,"19":1,"36":1,"47":1,"61":1,"65":1,"70":1,"71":1,"75":3,"78":2,"84":1}}],["etc",{"2":{"0":2,"3":1,"16":1,"20":2}}],["l",{"2":{"48":2,"62":2,"64":2,"66":3,"74":9,"84":1}}],["lj",{"2":{"35":1}}],["lick",{"2":{"73":1}}],["line",{"2":{"67":1}}],["linearmap",{"2":{"4":1}}],["list",{"2":{"19":1,"71":1}}],["listed",{"2":{"8":1,"49":1,"64":1}}],["little",{"2":{"5":1,"13":1}}],["lies",{"2":{"16":2}}],["lie",{"2":{"5":1}}],["likely",{"2":{"4":1,"23":2}}],["like",{"0":{"78":1,"79":1},"2":{"0":1,"3":2,"4":5,"5":2,"15":1,"16":1,"17":4,"19":2,"20":3,"22":1,"30":3,"32":1,"34":1,"38":1,"41":1,"46":3,"48":2,"51":1,"62":1,"63":1,"64":1,"66":1,"73":6,"75":1,"76":2,"77":1,"78":1,"80":1}}],["legend",{"2":{"67":1}}],["less",{"2":{"46":1}}],["letting",{"2":{"34":1}}],["let",{"2":{"33":1}}],["lets",{"2":{"11":1,"22":1,"41":1,"44":2,"45":1,"46":1}}],["left",{"2":{"13":3,"23":1}}],["leans",{"2":{"26":1}}],["leave",{"2":{"15":1}}],["leaves",{"2":{"3":1}}],["leap",{"2":{"4":1}}],["least",{"2":{"3":1,"23":4}}],["level",{"2":{"3":2}}],["length=365",{"2":{"44":1}}],["lengths",{"2":{"3":1,"25":1,"78":1}}],["length",{"2":{"0":1,"3":6,"4":5,"8":1,"15":4,"19":4,"21":2,"23":3,"38":1,"42":2,"82":1}}],["lazily",{"2":{"82":1}}],["lazy",{"2":{"18":1,"35":1}}],["largest",{"2":{"80":1,"82":1}}],["large",{"2":{"52":1}}],["larger",{"2":{"25":1}}],["language",{"2":{"26":1}}],["lastindex",{"2":{"32":1}}],["last",{"2":{"19":2,"31":1,"48":1}}],["layermetadata",{"2":{"23":1,"64":1}}],["layerdims",{"2":{"23":5,"42":2,"64":1}}],["layernames=nothing",{"2":{"18":1}}],["layered",{"2":{"16":2}}],["layer",{"2":{"16":5,"21":2,"27":2,"30":1,"79":1,"80":1,"82":2,"84":1}}],["layersfrom=",{"2":{"84":2}}],["layersfrom=nothing",{"2":{"16":1,"18":1}}],["layersfrom",{"2":{"18":1}}],["layers",{"2":{"16":9,"18":1,"20":1,"21":5,"61":2,"77":4,"78":9,"79":2,"80":28,"81":2,"82":2,"83":1,"84":1}}],["layout",{"2":{"0":1}}],["later",{"2":{"19":1}}],["latitude",{"2":{"0":1}}],["lat",{"2":{"0":1}}],["labelled",{"2":{"67":1}}],["labelling",{"2":{"15":1}}],["labels=x",{"2":{"46":2}}],["labels",{"2":{"11":1,"19":21,"68":1}}],["label",{"2":{"0":3,"2":5,"34":1}}],["lt",{"2":{"0":12,"1":2,"3":4,"5":1,"15":2,"39":3,"57":1,"58":1,"79":1}}],["lot",{"2":{"46":1,"72":1}}],["log",{"2":{"33":1}}],["losing",{"2":{"19":1,"61":1}}],["looping",{"2":{"82":1}}],["loop",{"2":{"82":1}}],["look",{"2":{"44":1}}],["lookuparray",{"2":{"66":1}}],["lookupdim",{"2":{"20":1}}],["lookupcomponent",{"2":{"20":1}}],["lookuptrait",{"2":{"6":1,"7":1,"8":1,"9":1,"10":1,"20":1}}],["lookups",{"0":{"4":1,"74":1},"1":{"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1},"2":{"2":3,"3":2,"4":34,"5":11,"6":1,"7":6,"8":5,"9":3,"10":6,"11":4,"15":1,"17":2,"20":3,"21":1,"28":1,"34":2,"38":1,"48":1,"51":1,"62":1,"73":1,"74":4,"75":1,"76":1}}],["lookup",{"0":{"6":1,"21":1,"75":1},"1":{"7":1,"8":1,"9":1,"10":1,"22":1,"23":1},"2":{"0":4,"1":1,"2":13,"3":2,"4":52,"5":4,"6":2,"7":6,"9":1,"10":4,"15":9,"17":2,"19":2,"20":14,"21":5,"36":3,"38":1,"41":3,"46":2,"48":18,"49":8,"63":1,"64":1,"66":1,"73":2,"74":10,"75":4,"77":1}}],["loosely",{"2":{"6":1}}],["location",{"2":{"9":1}}],["located",{"2":{"5":1}}],["locus",{"2":{"0":1,"4":13,"5":3,"9":2,"10":5,"48":6}}],["lowerbound",{"2":{"8":1}}],["lower",{"2":{"5":1,"8":1}}],["low",{"2":{"3":1}}],["long",{"2":{"39":1,"40":1,"81":1}}],["longitudes",{"2":{"4":1}}],["longitude",{"2":{"0":1}}],["longer",{"2":{"0":1,"3":1,"4":1}}],["lon",{"2":{"0":1}}],["loading",{"2":{"0":1}}],["load",{"2":{"0":1,"4":1,"44":1,"51":1,"58":1}}],["csv",{"0":{"85":1},"2":{"82":1,"85":5}}],["c=rand",{"2":{"77":1}}],["cryogridoutput",{"2":{"56":1}}],["cryogrid",{"0":{"56":1},"2":{"56":2}}],["crs",{"2":{"51":1}}],["create",{"2":{"4":2,"10":2,"13":1,"15":4,"19":1,"20":1,"21":2,"26":1,"44":2,"66":1,"73":1,"74":5}}],["created",{"2":{"0":1}}],["creating",{"2":{"0":1,"28":1}}],["climate",{"2":{"53":1}}],["climatebase",{"0":{"53":1},"2":{"53":1}}],["cloud",{"2":{"35":1}}],["closest",{"2":{"73":1}}],["close",{"2":{"23":3,"73":1}}],["closely",{"2":{"21":4,"52":1}}],["closed",{"2":{"5":3,"46":35}}],["closedinterval",{"2":{"5":1}}],["clashes",{"2":{"0":1,"5":1}}],["cycling",{"2":{"4":1}}],["cyclical",{"2":{"74":1}}],["cyclicbins",{"2":{"19":4}}],["cyclic",{"2":{"4":5,"19":1,"74":5}}],["cycle=month",{"2":{"74":1}}],["cycle=24",{"2":{"46":1}}],["cycle=12",{"2":{"46":3}}],["cycles",{"2":{"19":1,"74":1}}],["cycled",{"2":{"4":3}}],["cycle",{"2":{"4":9,"19":5}}],["cua2",{"2":{"26":2}}],["cua",{"2":{"26":2}}],["cuarray",{"2":{"20":1,"26":2,"61":1}}],["cuda",{"0":{"26":1},"1":{"27":1},"2":{"26":2,"27":1}}],["currently",{"2":{"24":1}}],["current",{"2":{"4":1,"15":1,"21":1}}],["curresponding",{"2":{"4":2}}],["customise",{"2":{"65":1}}],["custom=dd",{"2":{"20":1}}],["custom=10",{"2":{"20":1}}],["custom",{"2":{"0":4,"3":1,"18":2,"19":1,"20":9,"27":1,"36":2,"47":1}}],["center",{"2":{"5":5,"9":2,"10":4,"48":7,"66":1,"75":1}}],["central",{"2":{"0":1}}],["cellular",{"2":{"57":1}}],["cells",{"2":{"9":1,"10":1,"73":1}}],["cell",{"2":{"3":1,"5":1}}],["choosing",{"2":{"73":1}}],["choose",{"2":{"40":1,"67":1}}],["chosen",{"2":{"2":1,"17":1,"19":1}}],["child",{"2":{"21":1}}],["chunked",{"2":{"35":1}}],["chunk",{"2":{"19":1}}],["channel",{"2":{"13":1}}],["channel=",{"2":{"13":1}}],["changing",{"2":{"4":1,"20":1,"65":1}}],["changes",{"2":{"23":1}}],["change",{"2":{"3":1,"4":4,"20":5,"66":1}}],["changed",{"2":{"3":1}}],["char",{"2":{"0":1,"3":1,"4":1,"13":1,"17":2,"62":2,"64":2,"66":3,"75":1,"83":2,"84":3}}],["checked",{"2":{"24":1}}],["checks",{"2":{"21":4,"24":2}}],["checking",{"2":{"21":1}}],["check=true",{"2":{"3":1}}],["check",{"2":{"1":2,"3":1,"4":1,"5":1,"12":1,"15":2,"20":1,"21":11,"64":1}}],["cost",{"2":{"33":1}}],["costly",{"2":{"21":1}}],["cover",{"2":{"43":1}}],["cov",{"2":{"32":1}}],["core",{"2":{"64":1}}],["cor",{"2":{"32":1}}],["correctly",{"2":{"42":2}}],["correct",{"2":{"4":2,"5":1,"10":1,"27":1}}],["corresponding",{"2":{"4":1}}],["correspond",{"2":{"3":1,"10":3}}],["coordinate",{"2":{"36":1}}],["coordinatetransformations",{"2":{"4":2}}],["coordination",{"2":{"35":1}}],["coords",{"2":{"20":2}}],["copy",{"2":{"20":1,"21":7}}],["code",{"2":{"16":2,"23":2,"26":1}}],["coded",{"2":{"6":1}}],["could",{"2":{"5":1,"25":1,"46":1}}],["counted",{"2":{"5":1}}],["colours",{"2":{"71":1}}],["color=",{"2":{"71":2,"72":1}}],["color",{"2":{"71":1}}],["colormap",{"0":{"70":1,"71":1},"2":{"71":2}}],["colormap=",{"2":{"68":1}}],["colon",{"2":{"2":2,"3":1,"16":1}}],["collected",{"2":{"82":1}}],["collection",{"2":{"77":1}}],["collect",{"2":{"61":1}}],["column",{"2":{"18":2,"84":3}}],["columns",{"2":{"1":1,"8":1,"15":1,"18":3,"82":2,"84":3}}],["command",{"2":{"12":1}}],["commands",{"2":{"12":1}}],["commondatamodel",{"2":{"35":1}}],["commondims",{"2":{"3":5}}],["commonly",{"2":{"4":1}}],["common",{"2":{"0":2,"4":1,"19":1,"25":1,"44":1,"51":1,"64":1}}],["compile",{"2":{"81":1}}],["compilation",{"2":{"81":1}}],["components",{"2":{"23":4,"42":4}}],["completely",{"2":{"21":4}}],["complicated",{"2":{"5":1,"13":1}}],["compatibility",{"0":{"35":1},"2":{"24":1}}],["compatible",{"2":{"18":1}}],["comparing",{"2":{"3":1,"21":1}}],["comparisons",{"2":{"3":2}}],["compare",{"2":{"3":6}}],["compared",{"2":{"3":1,"21":1}}],["comparedims",{"2":{"3":5}}],["combines",{"2":{"5":1,"48":1}}],["combined",{"2":{"4":1,"17":1,"20":1,"30":1,"63":1}}],["combinedims",{"2":{"3":1}}],["combine",{"2":{"3":1,"18":1}}],["combinations",{"2":{"17":2}}],["combination",{"2":{"1":1,"15":1,"35":2}}],["confusing",{"2":{"40":1}}],["confused",{"2":{"5":1}}],["consistency",{"2":{"77":1}}],["consistent",{"2":{"48":1}}],["consecutive",{"2":{"30":2}}],["constraint",{"2":{"30":1}}],["constructing",{"0":{"29":1},"2":{"41":1}}],["constructionbase",{"2":{"20":1,"40":2,"65":2}}],["construction",{"2":{"4":1,"10":1}}],["construct",{"2":{"18":1}}],["constructors",{"2":{"15":1,"41":2}}],["constructor",{"2":{"4":1,"16":1,"26":1,"64":1}}],["constructed",{"2":{"0":1,"3":1,"4":1,"16":1,"23":2,"37":1}}],["const",{"2":{"5":1,"20":1,"44":1}}],["concatenate",{"2":{"21":4}}],["concrete",{"2":{"0":1,"1":2,"3":3,"4":2,"15":3,"16":1}}],["converging",{"2":{"52":1}}],["conversion",{"2":{"11":1}}],["conversions",{"2":{"10":1}}],["converting",{"0":{"84":1,"85":1}}],["convertible",{"2":{"27":1}}],["converts",{"2":{"2":1,"27":1}}],["convert",{"2":{"2":1,"3":1,"4":1,"27":1,"74":1}}],["converted",{"2":{"0":1,"3":1,"4":1,"18":1,"27":1}}],["controlled",{"2":{"71":1}}],["control",{"2":{"20":1,"21":1}}],["contents",{"2":{"11":1}}],["contexts",{"2":{"4":3}}],["context",{"2":{"3":1,"4":1,"15":1,"23":1}}],["contained",{"2":{"4":1,"5":1,"17":1,"60":1}}],["contain",{"2":{"2":1,"3":1,"5":2,"20":2}}],["contains",{"2":{"1":1,"4":2,"5":10,"15":1,"17":2,"19":1,"20":1,"73":2,"76":1}}],["containing",{"2":{"1":1,"3":1,"15":2}}],["cairomakie",{"2":{"68":1}}],["caveats",{"2":{"64":1}}],["cartesianindex",{"2":{"30":2}}],["cartesianindices",{"2":{"17":4,"30":1,"76":1}}],["category",{"2":{"83":5,"84":10,"85":1}}],["categorises",{"2":{"11":1}}],["categories",{"2":{"4":3,"74":1}}],["categorical",{"2":{"0":2,"3":2,"4":8,"5":3,"13":2,"15":3,"17":2,"46":4,"62":2,"64":2,"66":4,"68":1,"73":15,"74":5,"75":3,"83":2}}],["cat",{"2":{"21":2,"32":1}}],["cases",{"2":{"21":1,"36":1,"38":1}}],["case",{"2":{"20":1,"66":1}}],["calculate",{"2":{"19":1}}],["call",{"2":{"23":1,"46":1}}],["calling",{"2":{"20":1,"39":1,"41":1}}],["callable",{"2":{"19":1}}],["called",{"2":{"3":2,"27":1,"41":1}}],["captions",{"2":{"15":1}}],["capable",{"2":{"4":1}}],["caution",{"2":{"5":1}}],["cant",{"2":{"74":1}}],["cannot",{"2":{"7":1}}],["can",{"2":{"0":2,"1":4,"2":3,"3":7,"4":18,"5":7,"10":3,"11":2,"12":1,"15":9,"16":2,"17":4,"18":1,"19":9,"20":8,"21":2,"24":2,"25":3,"28":1,"29":1,"30":4,"31":2,"32":2,"34":5,"36":1,"40":1,"42":2,"44":3,"45":2,"46":7,"47":2,"48":1,"49":1,"60":1,"61":1,"64":2,"65":1,"71":1,"73":7,"74":1,"75":2,"76":4,"78":3,"80":1,"81":1,"84":2,"85":1}}],["c",{"2":{"0":6,"3":2,"4":2,"13":2,"15":9,"17":3,"20":3,"47":2,"62":2,"64":2,"66":3,"67":1,"68":1,"70":1,"73":33,"75":3,"76":2,"77":1,"78":8,"79":23,"80":28,"81":2,"83":3,"84":2}}],["zarr",{"2":{"35":1}}],["zip",{"2":{"35":1}}],["zero",{"2":{"23":2,"73":1,"79":1}}],["zeros",{"2":{"0":1,"15":6,"20":1,"28":4,"42":2}}],["z=dd",{"2":{"20":1}}],["z=",{"2":{"20":1}}],["zdim",{"2":{"0":4}}],["z",{"2":{"0":8,"1":9,"3":4,"15":9,"20":9,"21":3,"30":13,"34":3,"42":2,"66":2,"68":1,"83":4,"84":22,"85":9}}],["yaxarray",{"2":{"36":1,"52":1}}],["yaxarrays",{"0":{"52":1},"2":{"35":1,"52":1}}],["y=near",{"2":{"79":1}}],["y=not",{"2":{"73":1}}],["y=4",{"2":{"79":1,"81":1}}],["y=where",{"2":{"73":1}}],["y=at",{"2":{"73":2}}],["y=begin+1",{"2":{"31":1}}],["y=end",{"2":{"31":1}}],["y=dimarray",{"2":{"21":1}}],["y=>isodd",{"2":{"19":2}}],["yet",{"2":{"10":1,"23":2}}],["yearday",{"2":{"44":1}}],["yearmonthday",{"2":{"44":1}}],["yearmonth",{"2":{"44":1}}],["year",{"2":{"4":4,"19":1,"44":1}}],["years",{"2":{"4":3}}],["your",{"2":{"5":1,"13":1,"20":1,"40":2}}],["yourdimarray",{"2":{"40":1}}],["yourdim",{"2":{"0":1}}],["you",{"2":{"4":2,"5":1,"12":4,"18":1,"20":5,"21":5,"23":2,"25":2,"31":1,"32":1,"34":1,"40":1,"44":1,"46":1,"48":2,"60":1,"64":4,"66":4,"74":1,"78":1}}],["ydim",{"2":{"0":7}}],["y",{"2":{"0":16,"1":12,"3":8,"4":9,"5":15,"15":26,"16":2,"17":13,"18":2,"19":4,"20":11,"21":6,"25":13,"26":2,"28":24,"30":7,"31":2,"32":3,"33":3,"34":3,"42":3,"48":31,"49":22,"61":8,"62":3,"64":2,"66":10,"68":2,"70":1,"73":16,"75":3,"76":8,"77":10,"78":34,"79":4,"80":92,"83":10,"84":32,"85":1}}],["xy",{"2":{"84":2}}],["xarray",{"2":{"35":1}}],["xz",{"2":{"30":1}}],["x2",{"2":{"21":2}}],["x1",{"2":{"21":2}}],["x=not",{"2":{"73":1}}],["x=near",{"2":{"73":2}}],["x=where",{"2":{"73":1}}],["x=touches",{"2":{"73":1}}],["x=interval",{"2":{"73":1}}],["x=openinterval",{"2":{"73":1}}],["x=1",{"2":{"73":2,"79":1,"81":1}}],["x=contains",{"2":{"73":2}}],["x=at",{"2":{"73":3,"79":2}}],["x=all",{"2":{"5":1}}],["x=>",{"2":{"47":1}}],["x=>bins",{"2":{"46":2}}],["x=begin",{"2":{"31":1}}],["x=begin+1",{"2":{"31":1}}],["x=dimarray",{"2":{"21":1}}],["xs",{"2":{"2":1,"3":2,"4":6,"11":1,"15":2,"18":1}}],["xdim",{"2":{"0":7}}],["x3c",{"2":{"0":10,"4":12,"5":9,"7":6,"8":4,"9":3,"10":6,"11":2,"15":3,"16":1,"17":3,"18":2,"19":3,"22":2,"23":2,"33":2}}],["x",{"2":{"0":17,"1":27,"2":9,"3":22,"4":28,"5":32,"11":6,"15":65,"16":3,"17":17,"18":5,"19":2,"20":27,"21":7,"25":13,"26":2,"28":24,"30":18,"31":2,"32":3,"33":3,"34":6,"40":1,"42":4,"44":3,"45":3,"46":14,"47":3,"48":29,"49":23,"61":8,"62":4,"64":5,"66":8,"67":1,"68":3,"70":1,"73":25,"74":7,"75":3,"76":8,"77":10,"78":25,"80":96,"83":10,"84":32,"85":1}}],["ideal",{"2":{"46":1}}],["identity",{"2":{"19":2,"46":2}}],["identical",{"2":{"4":2,"11":1,"77":1}}],["io",{"2":{"23":11}}],["images",{"2":{"58":1}}],["immutable",{"2":{"20":1,"27":1,"40":1,"66":1}}],["improving",{"2":{"66":1}}],["imperative",{"2":{"62":1}}],["imply",{"2":{"20":1}}],["implements",{"2":{"42":4,"82":1}}],["implemented",{"2":{"39":1,"42":2}}],["implement",{"2":{"16":1,"40":1,"82":1}}],["implementation",{"2":{"4":2,"16":1,"42":4,"56":1}}],["implementations",{"2":{"0":1}}],["important",{"2":{"4":3}}],["ignoring",{"2":{"15":1}}],["ignores",{"2":{"68":1}}],["ignore",{"2":{"3":2,"34":1,"40":1}}],["ignored",{"2":{"3":1,"21":2}}],["irregular",{"2":{"4":3,"5":6,"8":5,"15":1,"17":2,"19":4,"20":2,"45":7,"46":6,"73":6,"74":3,"75":1,"76":4}}],["i",{"2":{"2":2,"3":3,"13":1,"17":1,"38":1,"39":1,"47":1,"70":1,"71":1,"84":1}}],["if",{"2":{"0":1,"1":2,"2":3,"3":5,"4":8,"5":6,"11":2,"12":1,"15":2,"16":1,"17":2,"19":1,"20":7,"21":7,"38":1,"40":1,"48":1,"60":1,"64":2,"66":1,"68":1,"76":1,"79":2,"80":1}}],["isend",{"2":{"49":5}}],["isexplicit",{"2":{"49":5}}],["ispoints",{"2":{"49":6}}],["isintervals",{"2":{"49":6}}],["isreverse",{"2":{"49":5}}],["isregular",{"2":{"48":2,"49":5}}],["isforward",{"2":{"49":5}}],["isordered",{"2":{"49":6}}],["iscenter",{"2":{"49":5}}],["iscyclic",{"2":{"49":6}}],["iscategorical",{"2":{"49":7}}],["isstart",{"2":{"49":5}}],["issampled",{"2":{"49":7}}],["issue",{"2":{"4":1,"66":1}}],["isbits",{"2":{"22":1,"27":1}}],["isa",{"2":{"16":1}}],["isapprox",{"2":{"5":1}}],["is",{"2":{"0":7,"1":3,"2":4,"3":14,"4":31,"5":9,"6":1,"7":3,"8":2,"10":1,"11":2,"12":1,"15":7,"16":3,"17":6,"19":12,"20":11,"21":5,"22":3,"23":5,"24":2,"26":3,"27":2,"31":2,"32":1,"34":1,"35":3,"36":2,"39":2,"40":5,"42":3,"46":3,"47":1,"48":6,"51":4,"52":3,"54":2,"55":1,"57":1,"58":1,"61":1,"62":1,"63":1,"64":3,"65":1,"66":3,"67":2,"71":1,"72":1,"73":7,"74":2,"75":5,"77":2,"81":2,"82":1,"84":1}}],["its",{"2":{"15":1,"19":2,"20":3,"27":1,"36":1,"52":1,"55":1,"66":1}}],["iterates",{"2":{"21":2}}],["iterate",{"2":{"17":1}}],["iterator",{"2":{"16":2}}],["iteration",{"2":{"16":2,"35":1}}],["iter",{"2":{"13":1}}],["iter=1",{"2":{"13":1}}],["it",{"2":{"0":1,"2":1,"3":2,"4":11,"5":3,"7":1,"11":1,"12":3,"15":1,"16":2,"17":1,"19":3,"20":7,"21":1,"22":2,"23":1,"28":1,"30":1,"31":1,"32":1,"33":1,"34":2,"35":1,"38":1,"39":1,"40":1,"42":2,"44":1,"46":2,"48":1,"51":1,"52":1,"55":1,"62":1,"64":1,"66":2,"68":1,"73":3,"74":1,"78":2}}],["inverts",{"2":{"78":1}}],["invalid",{"2":{"30":1}}],["inferno",{"2":{"68":1}}],["information",{"2":{"4":3,"15":1,"48":1}}],["inner",{"2":{"20":1,"21":1,"23":1,"61":2}}],["inbuilt",{"2":{"20":1}}],["initially",{"2":{"16":2}}],["inaccurate",{"2":{"8":1}}],["including",{"2":{"7":1,"35":1,"73":1}}],["included",{"2":{"3":1,"5":1,"11":1,"46":1}}],["include",{"2":{"2":1,"3":1,"5":1,"23":1,"73":1,"74":1}}],["installed",{"2":{"12":1}}],["install",{"2":{"12":1}}],["installation",{"0":{"12":1}}],["instead",{"2":{"5":2,"7":1,"11":1,"19":1,"31":1,"68":1,"76":1}}],["inside",{"2":{"5":1,"31":1,"73":1}}],["inserted",{"2":{"0":1}}],["inputs",{"2":{"39":1,"41":1}}],["input",{"2":{"3":1,"5":1,"8":1,"71":1}}],["inds",{"2":{"30":2}}],["individual",{"2":{"17":1}}],["indicate",{"2":{"5":1,"10":1,"32":1}}],["indicates",{"2":{"4":2,"7":3,"9":1,"10":1,"11":1}}],["indicating",{"2":{"4":5}}],["indices",{"2":{"2":2,"5":7,"15":1,"17":3,"20":2,"34":1,"73":3,"74":1,"76":1}}],["independent",{"2":{"0":1,"4":1}}],["independentdim",{"2":{"0":5}}],["indexes",{"2":{"73":1}}],["indexed",{"2":{"4":2,"16":2}}],["indexing",{"0":{"30":1,"31":1,"78":1,"79":1},"2":{"0":2,"4":4,"15":3,"16":2,"17":1,"29":1,"30":4,"31":3,"33":1,"51":1,"73":7,"79":1,"81":3}}],["index",{"2":{"0":2,"3":3,"4":5,"5":8,"6":1,"7":4,"8":4,"9":2,"10":5,"15":6,"16":2,"17":4,"18":2,"20":5,"30":2,"31":1,"34":1,"73":3,"76":1,"79":1}}],["inherits",{"2":{"52":1}}],["inherit",{"2":{"0":1,"1":1,"15":1}}],["int8",{"2":{"13":5}}],["intselectors",{"2":{"5":1}}],["intselector",{"2":{"5":4}}],["intentionally",{"2":{"35":1}}],["intended",{"2":{"5":1}}],["integrate",{"2":{"35":1}}],["integrations",{"0":{"50":1},"1":{"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1}}],["integration",{"0":{"27":1}}],["integers",{"2":{"44":1,"46":1}}],["integer",{"2":{"3":1,"15":4,"19":7,"39":1}}],["inteface",{"2":{"23":2}}],["interoperability",{"2":{"82":1}}],["interpolate",{"2":{"17":1}}],["interpolation",{"2":{"17":3,"76":1}}],["interact",{"2":{"5":1}}],["intermediate",{"2":{"5":1}}],["interfaces",{"0":{"42":1},"2":{"23":2,"42":5}}],["interface",{"0":{"18":1,"23":1,"42":1},"2":{"3":1,"23":4,"35":1,"36":1,"65":1,"82":2,"85":1}}],["internally",{"2":{"64":1}}],["internal",{"0":{"23":1},"2":{"3":1,"20":1}}],["intervalbounds",{"2":{"48":4,"73":1}}],["interval",{"2":{"0":1,"4":5,"5":12,"8":1,"9":2,"10":4,"17":1,"19":2,"46":9,"48":2,"73":3,"74":1,"75":1}}],["intervalsets",{"2":{"5":2,"19":1,"46":6,"73":2,"75":1}}],["intervals",{"2":{"0":1,"4":13,"5":10,"8":3,"9":4,"10":1,"17":1,"19":4,"46":7,"48":1,"66":2,"73":14,"74":6,"75":2}}],["int",{"2":{"1":5,"2":2,"5":1,"15":5,"16":2,"18":1,"19":4,"31":2,"32":1,"34":1,"39":1,"46":1,"73":4}}],["int64",{"2":{"0":2,"4":2,"5":11,"13":4,"15":2,"17":2,"19":3,"20":2,"21":1,"25":11,"28":2,"30":6,"44":12,"45":11,"46":5,"48":17,"49":14,"66":2,"74":3,"75":1,"76":3,"83":4,"84":8}}],["into",{"2":{"0":3,"4":3,"17":2,"18":1,"19":1,"20":1,"26":1,"27":1,"34":2,"46":4,"56":1,"63":1,"68":1,"81":1}}],["in",{"2":{"0":7,"1":3,"2":2,"3":12,"4":12,"5":10,"7":3,"8":2,"9":1,"10":2,"11":2,"15":5,"16":6,"17":5,"19":6,"20":24,"21":11,"22":1,"23":11,"24":1,"27":1,"30":2,"31":4,"32":1,"34":1,"35":2,"36":2,"38":1,"40":2,"41":2,"42":10,"46":4,"48":2,"60":1,"64":5,"65":1,"66":2,"67":1,"68":2,"72":1,"73":6,"74":3,"77":1,"80":2,"81":1,"82":1}}],["hundreds",{"2":{"82":1}}],["humidity",{"2":{"21":6}}],["histogram",{"2":{"33":2}}],["hierarchy",{"2":{"0":1}}],["heatmap",{"2":{"68":1}}],["her",{"2":{"46":1}}],["here",{"2":{"16":1,"17":1,"20":1,"21":1,"28":1,"29":1,"46":2,"64":1,"68":1,"74":3}}],["helper",{"2":{"46":1}}],["help",{"2":{"23":2}}],["h",{"2":{"13":1,"70":1,"84":1}}],["having",{"2":{"21":1}}],["have",{"2":{"0":1,"4":3,"8":2,"11":1,"12":1,"15":1,"16":2,"18":1,"19":2,"20":3,"21":1,"30":1,"35":1,"36":1,"37":1,"38":1,"40":1,"46":1,"66":1,"68":1,"77":1,"84":1}}],["hard",{"2":{"6":1}}],["haskey",{"2":{"11":2}}],["hasselection",{"2":{"4":2}}],["hasn",{"2":{"2":1}}],["has",{"2":{"1":1,"3":2,"4":1,"11":1,"15":3,"16":1,"20":2,"21":2,"27":1,"33":1,"38":1,"40":2,"41":1,"48":1,"75":1}}],["hasdim",{"2":{"1":6,"15":6}}],["hold",{"2":{"19":1,"38":1,"74":1,"75":1}}],["holds",{"2":{"4":4,"16":1,"74":1}}],["holding",{"2":{"1":1,"2":1,"8":1,"15":9,"17":1,"19":2,"63":1,"76":1}}],["however",{"2":{"5":1,"20":1}}],["how",{"2":{"4":2,"7":2,"21":1,"34":1,"44":1,"62":1}}],["hours",{"2":{"19":4,"46":2}}],["hour",{"2":{"0":1,"19":1,"44":4,"45":1,"46":2,"47":3}}],["slower",{"2":{"81":1}}],["slowly",{"2":{"52":1}}],["slightly",{"2":{"46":1}}],["slicing",{"2":{"3":1}}],["sliced",{"2":{"16":1,"20":1}}],["slicedims",{"2":{"3":2,"15":1}}],["slices",{"2":{"15":1,"21":4}}],["slice",{"2":{"3":1,"15":1,"20":1}}],["synchronisation",{"2":{"57":1}}],["symmetry",{"2":{"34":1}}],["symbol",{"2":{"1":1,"2":1,"3":4,"4":7,"11":1,"13":1,"15":11,"16":6,"18":1,"19":3,"20":2,"21":1,"22":3,"39":2,"41":1,"45":7,"46":15,"47":2,"48":1,"64":2,"73":15,"75":2,"78":2,"82":1}}],["symbols",{"2":{"0":1,"1":1,"2":1,"3":1,"4":5,"11":1,"15":3,"20":1,"27":1,"29":1,"32":1}}],["system",{"2":{"27":1,"36":1}}],["scalar",{"2":{"79":1}}],["scalars",{"2":{"25":6,"79":1}}],["scaled",{"2":{"25":6}}],["scale",{"2":{"25":1}}],["scaling",{"0":{"25":1}}],["scope",{"2":{"0":1,"4":1,"34":1}}],["src",{"2":{"21":4,"31":2}}],["smaller",{"2":{"29":1}}],["small",{"2":{"21":1}}],["sat",{"2":{"74":2}}],["save",{"2":{"51":1}}],["saving",{"2":{"11":2}}],["samples",{"2":{"9":1,"33":2}}],["sampled",{"2":{"0":6,"4":16,"5":8,"9":1,"13":4,"15":5,"17":4,"19":4,"20":10,"21":1,"25":18,"26":2,"36":1,"45":9,"46":7,"47":5,"48":24,"49":28,"62":2,"64":2,"66":8,"73":13,"74":7,"75":3,"76":10,"77":2,"78":15,"79":1,"80":49,"83":4,"84":2}}],["sampling=dd",{"2":{"5":2}}],["sampling=intervals",{"2":{"4":2,"74":3}}],["sampling=points",{"2":{"4":2}}],["sampling",{"0":{"9":1},"2":{"0":1,"2":1,"3":1,"4":15,"5":1,"8":1,"9":6,"17":1,"20":1,"48":5,"64":1,"75":1}}],["same",{"2":{"0":2,"3":3,"4":1,"5":2,"11":1,"15":4,"17":2,"19":1,"20":2,"21":1,"25":1,"28":1,"30":1,"33":1,"38":2,"40":1,"44":1,"48":1,"67":1,"77":1,"82":1}}],["sharing",{"2":{"16":1}}],["share",{"2":{"16":1,"77":1}}],["shift",{"2":{"4":2}}],["shiftlocus",{"2":{"4":1}}],["show",{"2":{"23":9,"74":1}}],["shows",{"2":{"15":1}}],["shown",{"2":{"2":1}}],["should",{"2":{"2":1,"5":1,"12":1,"15":1,"20":1,"23":2,"38":1,"39":1,"40":1,"74":1,"84":1}}],["shortcuts",{"2":{"28":1}}],["shorthand",{"2":{"15":1,"74":1}}],["short",{"2":{"0":1}}],["swapping",{"2":{"20":1}}],["swap",{"2":{"3":1}}],["swapdims",{"2":{"3":3}}],["specialisations",{"2":{"19":1}}],["specify",{"2":{"10":5,"19":3,"20":3,"32":1,"34":1,"46":1,"66":1,"74":1,"84":1}}],["specifying",{"2":{"4":1,"9":1,"74":1}}],["specifies",{"2":{"7":1,"22":1,"30":1,"48":1}}],["specified",{"2":{"2":1,"3":1,"4":1,"15":1,"75":1}}],["specifically",{"2":{"21":1}}],["specific",{"2":{"4":5,"6":1,"8":1,"9":1,"34":1,"62":1}}],["space",{"2":{"20":2}}],["spaced",{"2":{"19":1}}],["spacing",{"2":{"4":2}}],["span=irregular",{"2":{"74":1}}],["span=regular",{"2":{"4":1,"74":1}}],["span=autospan",{"2":{"4":2}}],["span",{"0":{"8":1},"2":{"4":15,"8":7,"48":5,"64":1,"75":1}}],["spatial",{"2":{"0":1,"35":1,"51":1,"52":1,"57":2,"84":1}}],["signature",{"2":{"40":1}}],["sits",{"2":{"30":1}}],["sizes",{"2":{"46":1}}],["size",{"2":{"2":1,"3":1,"4":5,"8":1,"19":1,"20":2,"21":6,"23":5,"25":1,"32":2,"42":3,"47":2,"61":2,"77":4,"78":22,"79":3,"80":88,"82":1,"83":2,"84":26}}],["singleton",{"2":{"20":1}}],["single",{"2":{"1":8,"3":2,"4":1,"5":5,"9":1,"15":8,"16":1,"19":1,"20":3,"25":1,"31":1,"40":1,"48":1,"63":1,"73":1,"79":1,"81":1}}],["simultaneously",{"2":{"63":1}}],["simulations",{"2":{"57":1}}],["simulation",{"2":{"57":1}}],["simulataneously",{"2":{"16":1}}],["similar",{"2":{"0":1,"4":1,"7":1,"9":1,"17":1,"47":1,"61":1}}],["simpler",{"2":{"44":1}}],["simple",{"2":{"43":1}}],["simply",{"2":{"0":1,"4":1,"5":1,"11":1,"15":1,"20":1,"23":1,"48":1,"76":1}}],["simplicity",{"2":{"0":1}}],["st2",{"2":{"78":2}}],["st",{"2":{"61":4,"77":1,"78":8,"79":4,"80":35,"83":1,"84":2,"85":1}}],["storage",{"2":{"51":1}}],["stored",{"2":{"15":1,"77":1}}],["std",{"2":{"32":1,"80":2}}],["style",{"2":{"27":1}}],["still",{"2":{"11":1,"26":1,"31":1,"66":1}}],["standard",{"2":{"82":1}}],["standards",{"2":{"10":1}}],["stage",{"2":{"23":2}}],["statistics",{"2":{"16":2,"25":1,"44":1,"80":1}}],["status",{"2":{"12":2}}],["stack",{"2":{"16":2,"20":2,"21":8,"23":4,"42":2,"61":1,"80":1,"81":1,"82":2}}],["stacks",{"2":{"16":1,"21":5,"81":1,"84":1,"85":1}}],["starts",{"2":{"61":1}}],["start=6",{"2":{"46":4}}],["start=1",{"2":{"46":1}}],["start=12",{"2":{"46":1}}],["start=january",{"2":{"46":1}}],["start=0",{"2":{"19":1}}],["start=dates",{"2":{"19":2}}],["starting",{"2":{"8":1,"46":2}}],["start",{"2":{"0":2,"4":6,"5":3,"9":1,"10":4,"13":1,"19":9,"46":4,"48":1,"73":5,"74":7}}],["stripped",{"2":{"27":1}}],["strickt",{"2":{"21":1}}],["strict=true",{"2":{"21":4}}],["strict=false",{"2":{"20":1}}],["strictness",{"0":{"21":1},"1":{"22":1,"23":1}}],["strict",{"2":{"20":1,"21":8,"24":2}}],["strings",{"2":{"5":1}}],["string",{"2":{"2":4,"3":1,"4":1,"15":1,"23":1,"46":2,"64":2,"74":3,"75":1,"85":1}}],["string=string",{"2":{"0":1}}],["strongly",{"2":{"20":1}}],["struct",{"2":{"3":1,"20":1,"60":2}}],["step=12",{"2":{"46":1}}],["step=2",{"2":{"46":1}}],["step=3",{"2":{"46":2}}],["step=hour",{"2":{"44":1}}],["step=autostep",{"2":{"8":1}}],["steps",{"2":{"19":1}}],["step",{"2":{"3":1,"4":1,"8":2,"19":7,"20":1,"75":1}}],["s",{"2":{"0":1,"1":4,"2":1,"3":4,"5":16,"15":5,"16":3,"18":1,"19":1,"20":5,"22":1,"23":1,"33":1,"35":1,"52":1,"73":2,"84":1}}],["series",{"0":{"69":1},"1":{"70":1,"71":1,"72":1},"2":{"59":1,"70":1,"71":2,"72":1}}],["sep",{"2":{"46":6,"74":2}}],["separate",{"2":{"2":1,"51":1}}],["sequential",{"2":{"19":1}}],["seamlessly",{"2":{"27":1}}],["sea",{"2":{"21":4}}],["seasons",{"2":{"19":4,"46":5}}],["searched",{"2":{"7":1}}],["searchsortedfirst",{"2":{"7":1}}],["searchsorted",{"2":{"7":1}}],["sections",{"2":{"19":1}}],["second",{"2":{"0":1,"2":1,"4":4,"11":1,"15":2,"20":1}}],["sense",{"2":{"5":1,"51":1,"64":1}}],["seed",{"2":{"15":1}}],["see",{"2":{"3":1,"16":1,"25":1,"42":2,"44":1,"46":1}}],["selections",{"2":{"5":1}}],["selectindices",{"2":{"2":1}}],["selects",{"2":{"5":2,"73":1}}],["select",{"0":{"47":1},"2":{"5":6,"21":2,"47":1,"73":2,"74":1,"76":1}}],["selected",{"2":{"5":4,"19":4,"73":2}}],["selectors=near",{"2":{"17":1,"76":1}}],["selectorss",{"2":{"4":2}}],["selectors",{"0":{"5":1,"73":1},"1":{"74":1,"75":1,"76":1},"2":{"2":1,"4":12,"5":8,"8":1,"15":1,"16":1,"17":6,"31":1,"74":2,"75":1,"76":3,"79":1}}],["selector",{"2":{"0":1,"2":2,"4":3,"5":13,"34":1,"40":1,"64":1,"73":2,"78":1}}],["setproperties",{"2":{"20":1,"65":1}}],["settings",{"0":{"21":1},"1":{"22":1,"23":1}}],["setting",{"2":{"20":1,"21":1}}],["setindex",{"2":{"16":1,"31":1}}],["setdims",{"2":{"3":3}}],["set",{"0":{"66":1},"2":{"0":1,"4":6,"8":1,"11":2,"15":13,"20":22,"21":2,"25":1,"64":1,"66":11,"73":2,"75":3}}],["sounds",{"2":{"39":1}}],["sources",{"2":{"4":1,"20":7,"51":1}}],["source",{"2":{"0":15,"1":5,"2":5,"3":12,"4":23,"5":10,"6":1,"7":6,"8":5,"9":3,"10":6,"11":4,"15":16,"16":2,"17":3,"18":2,"19":9,"20":12,"21":9,"22":3,"23":6}}],["solution",{"2":{"19":1}}],["so",{"2":{"4":2,"5":1,"20":2,"24":1,"30":1,"46":1,"48":1,"65":1,"74":1,"82":1,"84":1}}],["sorted",{"2":{"5":1,"19":2}}],["sortdims",{"2":{"3":1}}],["sort",{"2":{"3":3}}],["sometimes",{"2":{"46":1,"66":1}}],["something",{"2":{"13":1,"19":1}}],["somewhere",{"2":{"16":2,"64":1}}],["some",{"2":{"0":1,"4":1,"15":1,"16":1,"19":1,"21":1,"25":1,"34":1,"38":1,"40":1,"44":2,"77":1,"81":1,"83":1}}],["sun",{"2":{"74":2}}],["surface",{"2":{"21":4}}],["sure",{"2":{"17":2}}],["surprising",{"2":{"16":2}}],["summer",{"2":{"46":1}}],["summary",{"2":{"42":2}}],["sum",{"2":{"16":1,"19":1,"32":3,"45":1,"80":5}}],["succinct",{"2":{"16":2}}],["such",{"2":{"0":2,"2":1,"4":1,"5":1,"10":1,"19":2}}],["supporting",{"2":{"85":1}}],["support",{"2":{"67":1}}],["supplied",{"2":{"5":1}}],["supertypes",{"2":{"3":1}}],["supertype=dimension",{"2":{"0":1}}],["supertype",{"2":{"0":8,"4":5,"5":3,"6":1,"7":1,"10":1,"11":1,"15":2,"16":1,"18":1,"22":1}}],["submodule",{"2":{"34":1}}],["subset",{"2":{"21":2,"78":1}}],["subsetting",{"2":{"5":1}}],["subtypes",{"2":{"23":1}}],["subtype",{"2":{"15":1}}],["sub",{"2":{"0":2}}],["m=rand",{"2":{"78":1}}],["my",{"2":{"64":3}}],["mydimstack",{"2":{"16":2}}],["mutable",{"2":{"60":1}}],["much",{"2":{"26":1,"64":1,"67":1}}],["multiplying",{"2":{"21":2}}],["multiplication",{"2":{"21":5}}],["multiple",{"2":{"4":1,"16":3,"19":1,"49":1,"63":1}}],["multipications",{"2":{"21":1}}],["multi",{"0":{"16":1},"2":{"38":1}}],["must",{"2":{"4":3,"5":3,"15":2,"16":2,"20":2,"23":2,"27":2,"37":1,"38":3,"40":1,"41":1,"60":1,"77":1}}],["mixing",{"2":{"30":1}}],["mix",{"2":{"30":1,"80":1}}],["mixed",{"2":{"16":2,"17":2,"36":1}}],["mime",{"2":{"23":5}}],["mid",{"2":{"5":1}}],["min",{"2":{"33":4}}],["minus",{"2":{"4":1}}],["minimum",{"2":{"3":1,"32":1,"45":1,"80":2}}],["missingval",{"2":{"20":1,"51":1}}],["missing",{"2":{"3":1,"20":1,"41":1,"51":1}}],["msg",{"2":{"3":1}}],["measures",{"2":{"81":1}}],["means",{"2":{"3":1,"5":1,"7":1,"10":1,"18":1,"20":1,"24":1,"25":1,"27":1,"34":1,"38":1,"49":2,"73":1}}],["mean",{"2":{"3":1,"4":1,"9":1,"15":1,"16":4,"19":10,"24":1,"25":2,"32":1,"33":4,"45":3,"46":3,"47":1,"80":3}}],["meaning",{"2":{"2":1,"4":1,"17":1}}],["merging",{"2":{"78":1}}],["merges",{"2":{"63":1}}],["merge",{"2":{"30":1,"78":5,"84":1}}],["merged",{"2":{"20":3}}],["mergedims=",{"2":{"84":1}}],["mergedims=nothing",{"2":{"18":3}}],["mergedims",{"0":{"63":1},"2":{"18":1,"20":5,"63":1}}],["mergedlookup",{"2":{"4":3,"20":3,"30":1}}],["median",{"2":{"32":1,"33":4,"45":1}}],["memory",{"2":{"33":2}}],["mem",{"2":{"26":1}}],["messy",{"2":{"19":1}}],["mesages",{"2":{"3":1}}],["metadata=dict",{"2":{"28":5,"64":1}}],["metadata=metadata",{"2":{"16":1}}],["metadata=nometadata",{"2":{"4":3,"15":1,"16":1}}],["metadata",{"0":{"11":1},"2":{"3":1,"4":16,"11":16,"15":11,"19":3,"20":4,"23":9,"27":1,"28":5,"40":1,"42":8,"45":7,"46":11,"47":2,"60":1,"64":5}}],["method",{"2":{"1":4,"3":3,"4":4,"9":1,"11":2,"15":7,"17":1,"20":2,"23":3,"40":1,"42":2}}],["methods",{"0":{"1":1,"2":1,"3":1,"19":1,"20":1},"2":{"0":2,"1":1,"3":3,"4":3,"7":1,"15":1,"16":5,"19":1,"21":3,"23":2,"32":1,"34":1,"36":1,"40":1,"47":1,"48":1,"49":1,"53":1}}],["m",{"2":{"0":1,"4":3,"62":2,"64":2,"66":3,"78":2,"84":1}}],["mon",{"2":{"74":2}}],["monthabbr",{"2":{"74":2}}],["months",{"2":{"19":5,"46":4,"74":1}}],["monthly",{"2":{"19":2}}],["month",{"2":{"0":6,"15":1,"19":4,"25":19,"44":1,"45":2,"46":13,"74":5}}],["moving",{"2":{"61":1,"67":1}}],["moved",{"2":{"27":2}}],["move",{"2":{"26":1}}],["moves",{"2":{"15":1}}],["mod",{"2":{"61":2}}],["models",{"2":{"54":1,"57":1}}],["model",{"2":{"27":1,"56":1}}],["modification",{"2":{"27":1}}],["modified",{"2":{"5":1}}],["modifying",{"0":{"60":1},"1":{"61":1,"62":1,"63":1,"64":1,"65":1,"66":1}}],["modify",{"0":{"61":1},"2":{"6":1,"20":6,"26":1,"60":1,"61":6}}],["module",{"2":{"0":2,"4":1}}],["mostly",{"2":{"15":1,"20":2,"67":1,"68":1}}],["most",{"2":{"4":1,"16":4,"20":1,"21":1,"23":1,"26":1,"35":1,"36":1,"64":1,"74":1,"75":1}}],["more",{"2":{"0":2,"4":4,"13":1,"15":1,"18":1,"23":1,"40":2,"52":1,"61":1,"65":1,"72":1,"73":1}}],["magic",{"0":{"65":1}}],["made",{"2":{"51":1}}],["masking",{"2":{"51":1}}],["mar",{"2":{"46":6,"74":1}}],["markersize=15",{"2":{"72":1}}],["markers",{"0":{"72":1},"2":{"10":1}}],["max",{"2":{"33":4}}],["maximum",{"2":{"5":1,"23":1,"32":1,"45":1,"80":3}}],["manipulation",{"2":{"51":1}}],["mandatory",{"2":{"23":4,"42":2}}],["many",{"2":{"16":4,"23":2,"32":1,"81":1}}],["manually",{"2":{"4":5,"19":1,"40":1,"74":2,"75":1,"81":1}}],["mapped",{"2":{"51":1}}],["mapslices",{"2":{"32":1}}],["mapreduce",{"2":{"32":1}}],["map",{"2":{"16":5,"19":4,"21":1}}],["maintains",{"2":{"15":1}}],["main",{"2":{"15":1,"23":4}}],["makie",{"0":{"68":1},"1":{"69":1,"70":1,"71":1,"72":1},"2":{"67":2,"68":3,"70":1,"72":1}}],["making",{"2":{"0":1}}],["makes",{"2":{"22":1,"48":1}}],["make",{"2":{"4":1,"5":1,"17":2,"34":1,"64":1,"74":1}}],["math",{"2":{"31":1}}],["matmul",{"2":{"21":4}}],["matrix",{"2":{"8":1,"21":6,"28":3,"61":3,"80":1}}],["matter",{"2":{"3":1,"17":1}}],["match",{"2":{"1":3,"2":2,"3":3,"4":1,"5":1,"15":3,"19":1,"20":4,"21":9,"24":1,"78":1,"80":1,"82":1}}],["matches",{"2":{"1":1,"5":1,"15":1,"19":1,"23":4,"42":4,"64":1}}],["matching",{"2":{"0":2,"1":1,"3":1,"4":3,"15":1,"16":2,"19":2,"20":1,"39":2,"73":1,"76":1}}],["macro",{"2":{"0":1,"3":1,"20":3,"24":1,"25":1}}],["may",{"2":{"0":2,"3":1,"4":5,"5":4,"6":1,"8":1,"11":2,"16":2,"21":1,"23":1,"46":6,"64":2,"66":1,"74":3}}],["tue",{"2":{"74":2}}],["turned",{"2":{"24":1}}],["turn",{"2":{"21":2}}],["tuples",{"2":{"3":4,"4":1,"17":1,"19":2,"30":2,"41":1,"44":1,"48":1,"63":1}}],["tuple",{"2":{"1":22,"2":8,"3":34,"4":32,"8":2,"11":5,"15":42,"16":3,"17":8,"19":2,"20":10,"21":1,"23":5,"30":3,"37":1,"41":1,"42":2,"44":4,"45":3,"48":6,"73":1,"78":1,"80":4,"84":2}}],["tell",{"2":{"62":1}}],["text",{"2":{"23":2}}],["testable",{"2":{"42":1}}],["testing",{"0":{"42":1},"2":{"42":2}}],["test",{"0":{"69":1},"1":{"70":1,"71":1,"72":1},"2":{"23":4,"42":4}}],["tested",{"2":{"23":2}}],["testname",{"2":{"20":1}}],["temporal",{"2":{"57":1}}],["tempo",{"2":{"44":9,"45":1}}],["temp",{"2":{"21":4}}],["term",{"2":{"6":1,"48":1}}],["terms",{"2":{"4":1}}],["twice",{"2":{"5":1}}],["two",{"2":{"3":1,"4":2,"5":4,"15":4,"16":2,"18":1,"27":1,"46":1,"73":1,"77":1}}],["tries",{"2":{"66":1}}],["trivially",{"2":{"47":1}}],["trial",{"2":{"33":2}}],["try",{"2":{"20":1}}],["treated",{"2":{"19":1}}],["treat",{"2":{"18":1}}],["track",{"2":{"15":1}}],["tracking",{"2":{"4":1,"8":1,"11":1}}],["trait",{"2":{"6":1,"20":2}}],["traits",{"0":{"6":1},"1":{"7":1,"8":1,"9":1,"10":1},"2":{"3":1,"4":1,"6":2,"7":1,"20":1,"74":1}}],["transforming",{"2":{"19":1,"20":1}}],["transform",{"2":{"4":1,"44":1,"64":1}}],["transformation",{"2":{"4":3}}],["transformations",{"2":{"3":1,"4":1,"15":1}}],["transformed",{"2":{"4":4}}],["transpose",{"2":{"0":1,"32":2,"80":1}}],["transect",{"2":{"0":1}}],["true",{"2":{"1":4,"3":3,"15":4,"16":1,"19":2,"20":2,"30":1,"42":89,"49":21}}],["typ",{"2":{"0":2}}],["typeof",{"2":{"20":1,"26":1,"74":2}}],["typed",{"2":{"20":1}}],["typemax",{"2":{"4":1}}],["typemin",{"2":{"4":1}}],["type",{"2":{"0":3,"1":6,"2":3,"3":15,"4":2,"8":1,"11":2,"15":6,"16":1,"18":2,"20":4,"22":1,"27":1,"30":1,"39":2,"41":1,"48":1,"64":1,"66":1,"85":1}}],["types",{"2":{"0":6,"1":5,"2":1,"3":8,"4":7,"5":1,"6":1,"10":1,"11":2,"15":7,"18":1,"20":3,"31":1,"32":2,"34":2,"36":2,"44":1,"51":1,"55":1,"75":2}}],["tabular",{"2":{"82":1}}],["table",{"2":{"18":1,"84":1}}],["tabletraits",{"0":{"18":1},"2":{"18":1}}],["tables",{"0":{"18":1,"82":1},"1":{"83":1,"84":1,"85":1},"2":{"0":1,"15":1,"18":4,"82":2,"85":1}}],["taking",{"2":{"46":1}}],["taken",{"2":{"17":1}}],["take",{"2":{"0":1,"4":2,"5":1,"16":1,"19":2,"45":1,"71":1,"73":3,"81":1,"84":1}}],["target",{"2":{"17":2}}],["t",{"2":{"0":1,"2":2,"3":2,"4":10,"11":1,"17":1,"21":4,"25":3,"30":2,"31":1,"64":1,"65":1,"66":1,"75":1,"76":1,"84":1}}],["title",{"2":{"23":5}}],["ti=>",{"2":{"47":1}}],["ti=>cyclicbins",{"2":{"46":4}}],["ti=>bins",{"2":{"46":8}}],["ti=>yearday",{"2":{"45":2}}],["ti=>yearmonth",{"2":{"45":2}}],["ti=>yearmonthday",{"2":{"45":2}}],["ti=>hour",{"2":{"45":2}}],["ti=>dayofyear",{"2":{"45":2}}],["ti=>month",{"2":{"19":6,"45":3}}],["ti=2",{"2":{"17":1}}],["ti=all",{"2":{"5":1}}],["time=1",{"2":{"13":1}}],["timeseriestools",{"0":{"59":1},"2":{"59":1}}],["times",{"2":{"0":1,"45":1,"77":1}}],["timedime",{"2":{"0":1}}],["timedim",{"2":{"0":4,"3":1}}],["time",{"0":{"25":1},"2":{"0":4,"4":1,"13":1,"16":1,"19":1,"21":1,"23":1,"33":6,"45":1,"59":1,"81":1}}],["ti",{"2":{"0":14,"1":1,"3":3,"5":3,"15":5,"17":1,"18":2,"19":6,"20":5,"21":3,"25":14,"32":3,"34":1,"45":10,"46":23,"47":5,"68":1}}],["though",{"2":{"81":1}}],["those",{"2":{"5":1,"21":2,"34":1,"64":1}}],["thur",{"2":{"74":2}}],["think",{"2":{"66":1}}],["thing",{"2":{"66":2}}],["things",{"2":{"23":2,"26":1,"60":1,"61":1,"64":2,"75":1}}],["this",{"2":{"0":1,"2":3,"3":6,"4":13,"5":6,"7":1,"8":1,"10":2,"11":2,"12":1,"16":4,"17":2,"18":2,"19":6,"20":8,"21":6,"22":1,"23":3,"24":1,"26":1,"27":2,"30":1,"31":1,"32":1,"34":1,"35":1,"38":1,"39":1,"41":1,"42":1,"43":1,"46":5,"48":1,"57":1,"61":2,"64":1,"66":1,"67":1,"73":1,"75":2,"77":1,"80":1,"81":1}}],["through",{"2":{"15":1,"55":1}}],["throws",{"2":{"5":1}}],["throw",{"2":{"3":1,"30":1}}],["throwing",{"2":{"3":1}}],["thrown",{"2":{"2":1,"3":1,"5":1,"64":1}}],["three",{"2":{"4":2,"16":2,"19":1,"46":1}}],["than",{"2":{"3":1,"4":2,"5":2,"9":1,"19":2,"27":1,"39":1,"40":1,"46":1,"60":1,"62":1,"73":1,"81":1}}],["that",{"2":{"0":3,"1":2,"2":2,"3":1,"4":13,"5":15,"7":4,"8":3,"9":2,"10":1,"11":1,"12":1,"15":8,"16":4,"17":4,"19":4,"20":7,"21":12,"24":4,"27":2,"28":1,"31":1,"34":1,"36":1,"37":1,"38":1,"39":1,"40":3,"44":2,"48":2,"64":1,"74":2,"75":1,"77":1,"82":1,"84":1}}],["then",{"2":{"20":1,"73":1,"75":1}}],["their",{"2":{"3":2,"16":2,"20":3,"48":1,"51":1}}],["there",{"2":{"2":2,"4":2,"15":4,"20":1,"24":1,"28":1,"40":1,"46":1,"48":1,"66":1,"74":1,"81":1}}],["these",{"2":{"0":3,"1":1,"3":2,"4":4,"6":2,"7":1,"8":1,"9":1,"10":1,"15":2,"16":1,"17":2,"18":1,"19":2,"20":1,"21":3,"30":1,"34":1,"36":1,"39":1,"40":3,"49":1,"64":1,"74":2,"76":1}}],["they",{"2":{"0":1,"2":1,"3":2,"4":3,"5":2,"10":2,"11":1,"15":1,"17":2,"20":2,"21":1,"23":2,"27":1,"30":1,"34":2,"35":1,"60":1,"64":1,"67":1,"74":1,"75":3,"82":1}}],["them",{"2":{"0":1,"4":1,"5":3,"11":1,"21":1,"27":1,"30":1,"45":1,"46":1,"48":1,"73":1,"74":1}}],["the",{"0":{"25":1},"2":{"0":20,"1":13,"2":8,"3":43,"4":85,"5":45,"6":3,"7":9,"8":7,"9":7,"10":9,"11":6,"12":3,"13":1,"15":49,"16":24,"17":16,"18":4,"19":48,"20":56,"21":22,"22":4,"23":9,"24":3,"25":8,"26":9,"27":5,"28":1,"29":1,"30":6,"31":4,"32":3,"33":2,"34":6,"35":1,"36":1,"38":7,"39":3,"40":6,"41":4,"42":4,"44":5,"45":4,"46":10,"48":11,"49":1,"51":1,"52":1,"56":1,"60":3,"61":4,"62":1,"63":1,"64":7,"65":4,"66":9,"67":4,"68":5,"71":2,"73":11,"74":9,"75":6,"76":1,"77":3,"78":2,"79":1,"80":5,"82":10,"84":3,"85":1}}],["tolerance",{"2":{"73":1}}],["todo",{"2":{"47":1,"66":1}}],["together",{"2":{"24":1}}],["top",{"2":{"23":1,"30":1}}],["tools",{"2":{"35":1,"51":2,"58":1}}],["too",{"2":{"21":1,"27":1,"55":1,"64":1}}],["total",{"2":{"19":1}}],["touched",{"2":{"73":1}}],["touches",{"2":{"5":7,"73":2}}],["touch",{"2":{"5":2}}],["touching",{"2":{"5":1}}],["tosort",{"2":{"3":4}}],["to",{"0":{"84":1,"85":1},"2":{"0":8,"1":5,"2":4,"3":18,"4":35,"5":18,"6":1,"8":1,"9":2,"10":12,"11":5,"12":3,"15":19,"16":8,"17":5,"18":1,"19":16,"20":32,"21":21,"22":2,"23":6,"24":4,"25":4,"26":2,"27":10,"30":1,"31":2,"32":3,"34":5,"35":3,"36":4,"38":1,"39":1,"40":3,"41":1,"42":2,"44":2,"46":7,"47":2,"48":1,"49":1,"51":1,"57":1,"58":1,"60":1,"61":5,"62":2,"64":3,"66":6,"67":2,"73":3,"74":4,"75":3,"77":1,"78":1,"80":1,"81":2,"82":2,"85":1}}],["jan",{"2":{"46":4,"74":1}}],["january",{"2":{"19":2,"46":1}}],["jarring",{"2":{"16":2}}],["jump",{"0":{"55":1},"2":{"55":1}}],["jul",{"2":{"46":6,"74":1}}],["juliaprint",{"2":{"23":2}}],["juliaposition",{"2":{"10":1}}],["juliapoints",{"2":{"9":1}}],["juliahours",{"2":{"19":1}}],["juliahasselection",{"2":{"4":1}}],["juliahasdim",{"2":{"1":1,"15":1}}],["juliaranges",{"2":{"19":1}}],["juliareorder",{"2":{"20":1}}],["juliarebuild",{"2":{"20":1,"23":1,"40":1}}],["juliarefdims",{"2":{"15":1,"23":1}}],["juliaregular",{"2":{"8":1}}],["juliareverseordered",{"2":{"7":1}}],["juliareducedims",{"2":{"3":1}}],["juliagroupby",{"2":{"19":1}}],["juliamakie",{"2":{"68":1,"71":2,"72":1}}],["juliamap",{"2":{"16":1}}],["juliamodify",{"2":{"20":1}}],["juliamonths",{"2":{"19":1}}],["juliamergedims",{"2":{"20":3}}],["juliamergedlookup",{"2":{"4":1}}],["juliametadata",{"2":{"11":1,"15":1}}],["juliamean",{"2":{"0":4,"16":1}}],["juliafunction",{"2":{"16":1}}],["juliaforwardordered",{"2":{"7":1}}],["juliaformat",{"2":{"2":1,"41":1}}],["juliaend",{"2":{"10":1}}],["juliaexplicit",{"2":{"8":1}}],["juliairregular",{"2":{"8":1}}],["juliaintervals",{"2":{"9":1,"19":1}}],["juliaintselector",{"2":{"5":1}}],["juliaindependentdim",{"2":{"0":1}}],["juliawhere",{"2":{"5":1}}],["juliaordered",{"2":{"7":1}}],["juliaorder",{"2":{"4":1,"7":1}}],["juliaotherdims",{"2":{"1":1,"15":1}}],["juliab",{"2":{"70":1}}],["juliablockwidth",{"2":{"23":1}}],["juliabroadcast",{"2":{"20":2}}],["juliabins",{"2":{"19":1}}],["juliabegin",{"2":{"10":1}}],["juliabetween",{"2":{"5":1}}],["juliabounds",{"2":{"4":1}}],["juliabase",{"2":{"15":4,"21":5}}],["juliabasedims",{"2":{"3":1}}],["juliabasetypeof",{"2":{"3":1}}],["julianame",{"2":{"15":1,"22":1}}],["julianame2dim",{"2":{"3":1}}],["julianoname",{"2":{"22":1}}],["julianometadata",{"2":{"11":1}}],["julianolookup",{"2":{"4":1}}],["julianear",{"2":{"5":1}}],["juliatouches",{"2":{"5":1}}],["juliatransformed",{"2":{"4":1}}],["juliatimedim",{"2":{"0":2}}],["juliaunmergedims",{"2":{"20":2}}],["juliaunits",{"2":{"11":1}}],["juliaunordered",{"2":{"7":1}}],["juliaunaligned",{"2":{"4":1}}],["juliausing",{"2":{"0":3,"3":2,"4":6,"5":7,"13":1,"20":3,"25":1,"26":1,"34":1,"44":1,"48":1,"68":1,"73":1,"74":1,"80":1,"83":1,"85":1}}],["juliacat",{"2":{"21":1}}],["juliacategorical",{"2":{"4":1}}],["juliacenter",{"2":{"10":1}}],["juliacopy",{"2":{"21":2}}],["juliacontains",{"2":{"5":1}}],["juliacombinedims",{"2":{"3":1}}],["juliacomparedims",{"2":{"3":1}}],["juliacommondims",{"2":{"3":1}}],["juliacyclicbins",{"2":{"19":1}}],["juliacyclic",{"2":{"4":1}}],["juliaa",{"2":{"20":1}}],["juliaall",{"2":{"5":1}}],["juliaaligned",{"2":{"4":1}}],["juliaat",{"2":{"5":1}}],["juliaarrayselector",{"2":{"5":1}}],["juliaautoposition",{"2":{"10":1}}],["juliaautospan",{"2":{"8":1}}],["juliaautoorder",{"2":{"7":1}}],["juliaautovalues",{"2":{"4":1}}],["juliaautolookup",{"2":{"4":1}}],["juliaabstractname",{"2":{"22":1}}],["juliaabstractdimtable",{"2":{"18":1}}],["juliaabstractdimstack",{"2":{"16":1}}],["juliaabstractdimarray",{"2":{"15":1}}],["juliaabstractbasicdimarray",{"2":{"15":1}}],["juliaabstractmetadata",{"2":{"11":1}}],["juliaabstractcategorical",{"2":{"4":1}}],["juliaabstractcyclic",{"2":{"4":1}}],["juliaabstractsampled",{"2":{"4":1}}],["juliaanondim",{"2":{"0":1}}],["julias",{"2":{"35":1}}],["juliashow",{"2":{"23":2}}],["juliashiftlocus",{"2":{"4":1}}],["juliastrict",{"2":{"21":4}}],["juliastart",{"2":{"10":1}}],["juliaspan",{"2":{"4":1,"8":1}}],["juliasampling",{"2":{"4":1,"9":1}}],["juliasampled",{"2":{"4":1}}],["juliaset",{"2":{"20":1}}],["juliasetdims",{"2":{"3":1}}],["juliaseasons",{"2":{"19":1}}],["juliaselector",{"2":{"5":1}}],["juliaselectindices",{"2":{"2":1}}],["juliasortdims",{"2":{"3":1}}],["juliaslicedims",{"2":{"3":1}}],["juliaswapdims",{"2":{"3":1}}],["julialocus",{"2":{"4":1}}],["julialookuptrait",{"2":{"6":1}}],["julialookups",{"2":{"4":1}}],["julialookup",{"2":{"2":1,"4":1}}],["julialabel",{"2":{"2":1}}],["julia>",{"2":{"1":12,"3":4,"12":1,"15":24,"16":8,"17":4,"18":2,"19":2,"20":4,"21":4,"28":1,"33":1,"34":1,"42":1,"48":1,"61":1,"62":2,"73":2,"74":1,"77":1,"81":1}}],["julia",{"2":{"0":1,"19":1,"20":2,"23":2,"24":2,"26":1,"27":1,"31":1,"32":1,"35":2,"54":1,"56":1,"82":1}}],["juliajulia>",{"2":{"0":1,"1":4,"3":1,"12":3,"13":4,"15":9,"16":1,"17":2,"18":1,"19":4,"20":6,"21":1,"25":10,"26":2,"28":14,"29":2,"30":7,"31":2,"32":2,"33":3,"34":4,"42":4,"44":9,"45":8,"46":13,"47":4,"48":50,"49":73,"61":8,"62":2,"64":6,"65":2,"66":6,"73":17,"74":11,"75":1,"76":5,"77":2,"78":9,"79":4,"80":34,"81":2,"83":3,"84":5}}],["juliaz",{"2":{"0":1}}],["juliazdim",{"2":{"0":2}}],["juliayearday",{"2":{"44":1}}],["juliay",{"2":{"0":1}}],["juliaydim",{"2":{"0":2}}],["juliaval",{"2":{"0":4,"4":1}}],["juliadimgroupbyarray",{"2":{"19":1}}],["juliadimtable",{"2":{"18":1}}],["juliadimpoints",{"2":{"17":1}}],["juliadimindices",{"2":{"17":1}}],["juliadimarray",{"2":{"15":1}}],["juliadimnum",{"2":{"1":1,"15":1}}],["juliadimselectors",{"2":{"17":1}}],["juliadimstack",{"2":{"16":1}}],["juliadimsmatch",{"2":{"3":1}}],["juliadims2indices",{"2":{"2":1}}],["juliadims",{"2":{"1":2,"15":2}}],["juliadim",{"2":{"0":1}}],["juliadimension",{"2":{"0":1}}],["juliadimensions",{"2":{"0":1}}],["juliadependentdim",{"2":{"0":1}}],["juliaxdim",{"2":{"0":2}}],["juliax",{"2":{"0":3}}],["jun",{"2":{"46":6,"74":1}}],["just",{"2":{"5":2,"21":1,"24":1,"38":1,"40":1,"46":3,"48":1,"65":1,"66":1,"78":1}}],["j",{"2":{"3":2,"13":3,"70":1,"84":1}}],["jl",{"0":{"18":2,"35":1,"42":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"67":1,"68":1},"1":{"69":1,"70":1,"71":1,"72":1},"2":{"0":2,"4":5,"5":2,"18":2,"19":1,"20":2,"23":6,"26":1,"27":7,"31":6,"34":1,"35":10,"36":1,"37":1,"38":2,"40":3,"42":1,"43":1,"48":2,"51":3,"52":4,"53":1,"54":1,"55":1,"56":1,"57":2,"58":1,"59":1,"60":1,"64":1,"65":2,"67":4,"68":1,"72":1,"82":5,"85":2}}],["omitted",{"2":{"84":4}}],["o=rand",{"2":{"78":1}}],["oct",{"2":{"46":4,"74":1}}],["own",{"2":{"44":1,"47":1,"55":1}}],["objs",{"2":{"39":1}}],["obj",{"2":{"37":1,"39":2,"40":2}}],["object",{"2":{"0":1,"1":9,"2":1,"3":7,"4":7,"6":1,"10":1,"11":2,"15":12,"17":1,"18":1,"20":11,"23":1,"31":2,"34":2,"40":1,"48":3,"62":1,"64":1,"66":1}}],["objects",{"0":{"60":1},"1":{"61":1,"62":1,"63":1,"64":1,"65":1,"66":1},"2":{"0":1,"2":2,"3":1,"4":1,"5":2,"7":1,"11":1,"15":1,"16":3,"19":1,"20":4,"27":1,"30":1,"34":1,"37":1,"38":1,"39":1,"40":3,"47":3,"48":1,"60":1,"65":2,"66":1,"80":1}}],["our",{"2":{"30":2,"44":1,"46":6,"48":1}}],["outer",{"2":{"41":1,"61":1,"74":1,"75":3}}],["outcome",{"2":{"16":2}}],["out",{"2":{"4":1,"18":1,"34":1,"51":1,"67":1}}],["outputs",{"2":{"57":1}}],["output",{"2":{"0":4,"3":2,"4":5,"5":7,"20":2,"25":1,"46":1,"47":1,"56":1}}],["old",{"2":{"20":6}}],["optimization",{"2":{"55":1}}],["optimised",{"2":{"7":1}}],["options",{"2":{"20":5,"42":2}}],["optional",{"2":{"15":1,"23":4,"42":2}}],["operation",{"2":{"19":1,"32":1}}],["operations",{"2":{"0":1,"15":1,"19":1,"21":1,"27":1}}],["open",{"2":{"5":1,"46":35,"73":1}}],["openinterval",{"2":{"5":1}}],["o",{"2":{"4":1,"78":2,"84":1}}],["overheads",{"2":{"81":1}}],["overlapping",{"2":{"19":1}}],["over",{"2":{"0":1,"4":4,"9":1,"16":3,"17":2,"19":2,"20":6,"21":2,"24":2,"25":1,"45":1,"74":1,"80":1}}],["others",{"2":{"20":2,"77":1}}],["otherwise",{"2":{"4":1,"19":1,"20":1,"21":1,"36":1}}],["otherdims",{"2":{"1":3,"15":3,"17":1,"48":8,"49":13}}],["other",{"2":{"0":2,"3":2,"4":2,"5":2,"19":1,"20":3,"21":2,"25":1,"27":1,"28":1,"36":1,"44":1,"47":1,"49":1,"68":1,"74":1,"75":2,"78":1,"82":1,"85":1}}],["orange",{"2":{"71":1,"72":1}}],["organised",{"2":{"34":1}}],["organises",{"2":{"0":1}}],["originates",{"2":{"19":1}}],["original",{"2":{"3":3,"20":7}}],["origin",{"2":{"11":1}}],["ordering",{"2":{"4":1}}],["order=unordered",{"2":{"4":1,"74":1}}],["order=autoorder",{"2":{"4":2}}],["order=forwardordered",{"2":{"3":1,"74":2}}],["ordered",{"2":{"1":1,"4":1,"7":4,"15":3,"74":2}}],["order",{"0":{"7":1},"2":{"1":1,"2":1,"3":12,"4":23,"5":1,"7":9,"15":1,"17":7,"20":17,"21":4,"25":1,"30":4,"48":6,"64":3,"68":1,"75":2}}],["or",{"2":{"0":5,"1":20,"2":7,"3":20,"4":33,"5":7,"7":1,"8":5,"9":3,"10":3,"11":6,"12":1,"13":2,"15":31,"16":7,"17":6,"18":4,"19":16,"20":15,"21":5,"23":4,"25":2,"27":1,"30":1,"31":2,"32":2,"34":1,"36":3,"38":1,"39":1,"41":1,"42":2,"43":1,"46":1,"48":10,"49":1,"60":1,"61":1,"64":1,"71":1,"73":4,"74":3,"75":3,"76":2,"77":1,"78":2,"82":2,"85":1}}],["off",{"2":{"21":1}}],["offsetarrays",{"2":{"38":2}}],["offset",{"2":{"5":1}}],["often",{"2":{"19":1,"20":1,"27":1,"51":1,"74":1}}],["of",{"2":{"0":5,"1":13,"2":6,"3":17,"4":45,"5":13,"6":5,"7":3,"8":1,"9":2,"10":7,"11":5,"15":34,"16":10,"17":16,"18":3,"19":40,"20":29,"21":10,"22":1,"23":16,"24":2,"25":2,"26":2,"27":1,"28":2,"30":8,"31":1,"34":2,"35":3,"36":1,"37":1,"38":1,"39":1,"40":2,"41":4,"42":10,"44":2,"45":2,"46":5,"48":10,"51":2,"53":1,"54":1,"56":1,"60":1,"61":1,"63":2,"64":4,"66":2,"67":1,"71":1,"73":2,"74":4,"75":3,"76":2,"77":5,"78":2,"79":1,"80":3,"82":4,"84":1}}],["oneto",{"2":{"21":2,"74":2}}],["one",{"2":{"3":1,"4":3,"9":1,"16":2,"20":1,"21":3,"24":1,"26":1,"27":1,"40":2,"64":2,"73":1,"77":1,"79":1,"84":3}}],["ones",{"2":{"1":4,"3":3,"4":1,"15":10,"18":1,"20":4,"28":4,"33":1}}],["only",{"2":{"2":1,"4":1,"5":1,"15":3,"17":4,"20":4,"40":2,"46":1,"60":1,"64":1,"77":1,"78":1,"80":1,"84":1}}],["on",{"2":{"0":6,"1":1,"2":3,"3":1,"4":2,"5":1,"10":1,"11":1,"15":3,"16":2,"19":3,"20":3,"21":2,"22":1,"23":3,"24":2,"26":3,"27":2,"30":1,"35":1,"41":1,"42":2,"46":1,"57":1,"64":1,"65":1,"67":2,"78":2}}],["away",{"2":{"64":1}}],["aware",{"2":{"24":1,"51":1}}],["a1",{"2":{"64":4}}],["aimed",{"2":{"52":1}}],["aggregate",{"2":{"46":1}}],["again",{"2":{"16":1,"30":1}}],["a=rand",{"2":{"77":1}}],["a=falses",{"2":{"61":1}}],["a=3",{"2":{"29":1}}],["a=1",{"2":{"13":1}}],["aug",{"2":{"46":6,"74":1}}],["auxiliary",{"2":{"27":1,"57":1}}],["autodetection",{"0":{"75":1}}],["automata",{"2":{"57":1}}],["automated",{"2":{"20":1}}],["automatic",{"2":{"0":1,"4":1,"10":1}}],["automatically",{"2":{"0":1,"4":3,"7":1,"27":1,"40":1,"74":2,"75":1}}],["autoposition",{"2":{"10":2}}],["autospan",{"2":{"8":2,"74":1}}],["autovalues",{"2":{"4":1,"74":1}}],["autolookup",{"2":{"4":3}}],["autoorder",{"2":{"4":3,"7":2,"74":1}}],["auto",{"2":{"2":1}}],["amazing",{"2":{"26":1}}],["amp",{"0":{"26":1},"1":{"27":1}}],["ambiguity",{"2":{"2":1,"11":1,"20":1,"24":1,"66":1}}],["after",{"2":{"15":1,"19":3,"23":3,"25":1,"46":1}}],["affine",{"2":{"4":1}}],["affect",{"2":{"0":1}}],["apr",{"2":{"46":6,"74":2}}],["appearance",{"2":{"20":1}}],["applicable",{"2":{"20":1}}],["applications",{"2":{"64":1}}],["application",{"2":{"19":1,"35":1}}],["applied",{"2":{"4":1,"16":1,"19":2,"20":1,"61":1,"80":1}}],["applying",{"2":{"19":2}}],["apply",{"2":{"16":3,"47":1}}],["api",{"0":{"14":1},"1":{"15":1,"16":1,"17":1,"18":1}}],["adherence",{"2":{"35":1}}],["adjoint",{"2":{"32":1,"80":1}}],["adjacent",{"2":{"5":1}}],["adapt",{"2":{"27":3}}],["additional",{"2":{"23":2,"74":1}}],["additionally",{"2":{"12":1}}],["adding",{"2":{"4":3,"23":2}}],["add",{"2":{"12":2,"23":1,"28":1,"74":1}}],["added",{"2":{"3":1,"23":3,"24":1,"36":1,"42":2}}],["available",{"2":{"4":1,"11":2}}],["avoids",{"2":{"16":1,"19":1}}],["avoid",{"2":{"0":1,"5":1,"16":1,"23":1,"24":1}}],["actual",{"2":{"27":1}}],["actually",{"2":{"2":1,"4":1}}],["active",{"2":{"21":2}}],["acepted",{"2":{"15":4}}],["accessed",{"2":{"78":1}}],["accessors",{"2":{"65":1}}],["accessing",{"2":{"33":1}}],["access",{"2":{"28":1,"34":1}}],["accepted",{"2":{"23":2,"42":2,"64":1}}],["accept",{"2":{"15":1,"16":1,"39":1,"41":1,"64":1}}],["acceptable",{"2":{"8":1}}],["accepts",{"2":{"4":1,"5":1,"55":1}}],["accurate",{"2":{"8":1}}],["account",{"2":{"4":2}}],["atol=0",{"2":{"73":1}}],["atol=nothing",{"2":{"5":1}}],["atol",{"2":{"5":1,"17":6,"64":1}}],["attach",{"2":{"4":1}}],["attached",{"2":{"3":1,"38":1}}],["attempting",{"2":{"21":2}}],["attempt",{"2":{"0":1}}],["at",{"2":{"0":1,"3":2,"4":6,"5":11,"9":3,"15":1,"16":3,"17":4,"19":2,"20":1,"23":5,"44":1,"46":1,"48":1,"51":1,"52":1,"73":2,"74":2,"76":2,"77":1}}],["astroimage",{"2":{"58":1}}],["astroimages",{"0":{"58":1},"2":{"58":1}}],["astronomical",{"2":{"58":1}}],["assumes",{"2":{"64":1}}],["assert",{"2":{"47":1}}],["associate",{"2":{"34":2}}],["assignment",{"2":{"20":1,"25":1}}],["assigned",{"2":{"4":9,"60":1,"75":1}}],["ascending",{"2":{"5":1}}],["as",{"2":{"0":6,"1":1,"2":3,"3":5,"4":8,"5":4,"8":1,"10":3,"15":7,"16":6,"17":4,"18":5,"19":5,"20":8,"21":4,"23":2,"24":2,"26":2,"27":2,"32":1,"33":1,"34":1,"36":1,"38":1,"39":2,"40":4,"64":3,"67":3,"68":1,"71":1,"73":4,"74":1,"75":5}}],["above",{"2":{"45":2,"49":1}}],["about",{"2":{"0":1,"4":3,"11":1,"26":1,"65":1}}],["abstracdimarray",{"2":{"31":1}}],["abstractname",{"2":{"22":3}}],["abstraction",{"2":{"20":1}}],["abstractdimarry",{"2":{"43":1}}],["abstractdimarrays",{"2":{"3":1,"20":4,"22":1,"23":2,"31":1}}],["abstractdimarray",{"2":{"0":1,"3":2,"4":1,"11":2,"15":7,"16":5,"17":1,"18":4,"19":7,"20":17,"21":7,"23":6,"24":1,"27":2,"32":1,"36":1,"40":3,"41":2,"51":1,"52":1,"55":1,"57":2,"58":1,"61":1,"64":2,"67":1,"68":1,"77":1,"80":1,"82":1}}],["abstractdimtable",{"2":{"18":2}}],["abstractdimstack",{"2":{"16":4,"18":3,"19":5,"20":10,"21":7,"23":5,"36":1,"41":1,"51":1,"54":1,"61":1,"64":2,"77":1,"80":2,"82":1}}],["abstractrng",{"2":{"15":2}}],["abstractrange",{"2":{"4":4,"19":2,"74":1,"75":1}}],["abstractbasicarray",{"2":{"15":1}}],["abstractbasicdimarray",{"2":{"15":2,"20":1}}],["abstractmetadata",{"2":{"11":3,"20":1}}],["abstractmatrix",{"2":{"8":1}}],["abstractsample",{"2":{"51":1}}],["abstractsampled",{"2":{"4":6,"36":1,"74":1}}],["abstractstring",{"2":{"4":1}}],["abstractcolumns",{"2":{"18":1}}],["abstractcategorical",{"2":{"4":4,"36":1}}],["abstractcyclic",{"2":{"4":2}}],["abstractarray",{"2":{"2":3,"3":2,"4":4,"5":1,"15":4,"16":2,"17":3,"19":4,"20":4,"21":2,"28":1,"35":1,"38":1,"46":2,"74":1,"75":1,"77":1}}],["abstractvector",{"2":{"0":1,"4":4,"15":8}}],["abstract",{"2":{"0":7,"1":2,"3":4,"4":4,"5":3,"6":1,"10":1,"11":1,"15":4,"16":2,"18":1,"20":1,"22":1}}],["abs",{"2":{"13":1}}],["absent",{"2":{"3":1}}],["axis",{"2":{"0":6,"2":1,"3":2,"4":9,"10":3,"15":4,"17":1,"20":1,"38":1,"46":1,"67":1,"68":2,"73":2,"74":2}}],["axes",{"0":{"38":1},"2":{"0":1,"1":1,"4":1,"15":1,"21":3,"30":2,"32":1,"38":2,"64":1,"68":2}}],["alpha",{"2":{"13":1}}],["alpha=",{"2":{"13":1}}],["align",{"2":{"10":1}}],["aligned",{"2":{"4":6,"76":1}}],["although",{"2":{"4":1,"15":1,"67":1}}],["alone",{"2":{"4":2}}],["along",{"0":{"25":1},"2":{"0":1,"19":1,"32":1,"48":1,"74":1}}],["algorithms",{"2":{"3":1,"64":1}}],["always",{"2":{"1":1,"3":1,"9":1,"11":2,"15":1,"16":2,"20":2,"21":4,"23":2,"40":1,"49":1,"51":1,"64":1}}],["already",{"2":{"0":1,"27":1}}],["also",{"2":{"0":3,"3":3,"5":2,"10":1,"11":1,"16":1,"19":1,"20":3,"25":1,"30":1,"31":1,"32":1,"34":1,"38":1,"39":1,"40":1,"45":1,"46":3,"47":2,"51":1,"66":1,"68":2,"73":4,"74":1,"76":1,"79":1,"85":1}}],["allocate",{"2":{"82":1}}],["allocations",{"2":{"81":2}}],["allocation",{"2":{"20":1}}],["allocs",{"2":{"33":2}}],["allows",{"2":{"10":1,"19":1,"20":1}}],["allowing",{"2":{"4":1}}],["allow",{"2":{"4":1,"10":1,"11":1,"57":1}}],["all",{"2":{"0":5,"2":1,"3":3,"4":5,"5":6,"6":1,"11":1,"15":3,"16":5,"17":3,"20":11,"21":8,"22":1,"23":2,"27":1,"31":1,"40":2,"42":2,"46":1,"48":1,"49":3,"51":1,"57":2,"60":1,"61":3,"73":1,"77":2,"78":1,"79":1,"80":1,"81":1,"82":1}}],["arviz",{"0":{"54":1},"2":{"36":1,"54":2}}],["archgdal",{"2":{"35":1}}],["around",{"2":{"19":3}}],["arbitrary",{"0":{"29":1},"2":{"17":1,"19":2,"29":1,"46":1}}],["arg",{"2":{"23":3,"42":3,"64":1}}],["args",{"2":{"3":1,"20":3,"23":12,"40":1,"42":12}}],["argumenterror",{"2":{"30":1}}],["argument",{"2":{"2":1,"3":2,"4":4,"11":2,"15":2,"16":1,"20":4,"25":1,"39":1,"40":3,"71":1}}],["arguments",{"2":{"0":1,"1":4,"3":4,"4":8,"8":1,"15":6,"16":1,"19":1,"20":5,"23":2,"27":1,"40":1,"42":2,"64":2}}],["arrays",{"0":{"15":1},"2":{"5":1,"15":5,"16":1,"19":1,"20":2,"21":1,"22":1,"23":2,"25":1,"60":1,"61":3,"75":3,"76":1,"84":1,"85":1}}],["arrayselectors",{"2":{"5":1}}],["arrayselector",{"2":{"5":4}}],["array",{"0":{"16":1,"79":1},"2":{"0":3,"1":1,"2":2,"3":4,"4":16,"5":1,"9":1,"10":1,"11":1,"13":1,"15":6,"16":3,"17":3,"18":1,"19":1,"20":8,"21":4,"22":2,"23":2,"24":1,"25":1,"26":1,"27":3,"31":1,"32":1,"33":1,"36":2,"38":3,"41":2,"42":2,"45":1,"46":1,"55":1,"61":4,"64":4,"73":2,"74":1,"75":2,"76":1,"81":1,"82":1}}],["aren",{"2":{"76":1}}],["areound",{"2":{"20":1}}],["area",{"2":{"5":3}}],["are",{"2":{"0":7,"1":1,"2":2,"3":17,"4":15,"5":11,"7":1,"8":2,"9":2,"11":1,"15":9,"16":3,"17":4,"18":2,"19":1,"20":15,"21":5,"23":13,"24":2,"25":1,"27":2,"28":2,"30":1,"34":4,"35":2,"36":5,"40":2,"42":10,"44":1,"46":1,"48":1,"51":2,"57":2,"60":2,"64":3,"68":1,"74":2,"75":9,"76":1,"79":2,"80":1,"81":1,"82":3}}],["analysis",{"2":{"46":1,"53":1,"54":1}}],["analagous",{"2":{"24":1}}],["answer",{"2":{"35":1}}],["ansi",{"2":{"23":1}}],["anomalies",{"2":{"19":1}}],["another",{"2":{"4":1,"15":1,"16":1,"17":2,"21":1,"29":1,"43":1,"52":1,"64":1,"73":1,"76":1,"78":1,"79":2}}],["anonymous",{"2":{"0":1}}],["anondim",{"2":{"0":2}}],["annual",{"2":{"4":1}}],["anything",{"2":{"2":1,"20":1}}],["any",{"2":{"0":1,"1":5,"2":1,"3":4,"4":5,"5":5,"11":2,"15":5,"19":8,"20":1,"21":1,"23":2,"27":1,"28":10,"34":2,"39":3,"40":1,"45":7,"46":11,"47":3,"48":2,"55":1,"74":1,"77":1,"80":1,"85":1}}],["an",{"2":{"0":2,"1":8,"2":1,"3":5,"4":9,"5":5,"6":1,"7":1,"8":1,"9":1,"10":3,"11":2,"15":21,"16":1,"17":6,"18":3,"19":6,"20":8,"21":2,"22":1,"23":6,"24":1,"27":1,"30":1,"31":2,"32":1,"34":1,"38":1,"40":1,"41":2,"45":1,"46":3,"47":1,"48":6,"54":2,"71":1,"73":2,"74":2,"75":1,"77":2,"82":1}}],["and",{"0":{"24":1,"45":1,"82":1},"1":{"25":1,"83":1,"84":1,"85":1},"2":{"0":9,"2":7,"3":8,"4":27,"5":10,"7":2,"8":3,"10":2,"11":4,"13":1,"15":17,"16":13,"17":2,"18":3,"19":4,"20":10,"21":11,"22":1,"23":12,"24":3,"25":4,"26":1,"27":4,"28":2,"29":2,"30":1,"31":3,"34":2,"35":5,"36":1,"38":2,"39":1,"40":3,"41":3,"42":6,"46":4,"47":1,"48":2,"49":2,"51":7,"52":2,"57":2,"58":1,"60":1,"61":2,"64":2,"65":1,"66":1,"67":3,"68":4,"73":3,"74":3,"75":8,"76":1,"77":1,"78":1,"80":1,"81":2,"82":5,"84":3,"85":1}}],["a",{"0":{"71":1},"2":{"0":30,"1":30,"2":11,"3":32,"4":50,"5":38,"6":1,"7":2,"8":4,"9":1,"10":6,"11":8,"13":6,"15":68,"16":32,"17":16,"18":5,"19":43,"20":46,"21":12,"22":2,"23":13,"24":3,"25":7,"26":5,"27":1,"28":7,"29":3,"31":2,"34":4,"36":2,"37":1,"38":2,"40":1,"41":2,"42":4,"43":2,"44":1,"45":8,"46":14,"47":4,"48":64,"49":73,"51":5,"52":1,"54":1,"55":2,"56":1,"57":1,"60":1,"61":10,"62":9,"63":2,"64":13,"65":4,"66":14,"67":2,"68":6,"70":1,"71":3,"72":2,"73":59,"74":14,"75":6,"76":5,"77":5,"78":14,"79":27,"80":41,"81":5,"83":5,"84":33,"85":9}}]],"serializationVersion":2}';export{e as default}; diff --git a/dev/assets/chunks/VPLocalSearchBox.Oxp-ssWh.js b/dev/assets/chunks/VPLocalSearchBox.96yseQxt.js similarity index 99% rename from dev/assets/chunks/VPLocalSearchBox.Oxp-ssWh.js rename to dev/assets/chunks/VPLocalSearchBox.96yseQxt.js index d360353a5..50905869b 100644 --- a/dev/assets/chunks/VPLocalSearchBox.Oxp-ssWh.js +++ b/dev/assets/chunks/VPLocalSearchBox.96yseQxt.js @@ -1,4 +1,4 @@ -var Nt=Object.defineProperty;var Ft=(a,e,t)=>e in a?Nt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var Re=(a,e,t)=>Ft(a,typeof e!="symbol"?e+"":e,t);import{V as Ot,p as se,h as pe,aj as Xe,ak as Rt,al as Ct,q as je,am as Mt,d as At,D as ye,an as et,ao as Lt,ap as Dt,s as zt,aq as Pt,v as Ce,P as ue,O as we,ar as jt,as as Vt,W as $t,R as Bt,$ as Wt,o as q,b as Kt,j as S,a0 as Jt,k as D,at as Ut,au as qt,av as Gt,c as Y,n as tt,e as xe,C as st,F as nt,a as de,t as he,aw as Ht,ax as it,ay as Qt,a8 as Yt,ae as Zt,az as Xt,_ as es}from"./framework.C6EFuEL4.js";import{u as ts,c as ss}from"./theme.nAO4pd4Y.js";const ns={root:()=>Ot(()=>import("./@localSearchIndexroot.BZAoIRmY.js"),[])};/*! +var Nt=Object.defineProperty;var Ft=(a,e,t)=>e in a?Nt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var Re=(a,e,t)=>Ft(a,typeof e!="symbol"?e+"":e,t);import{V as Ot,p as se,h as pe,aj as Xe,ak as Rt,al as Ct,q as je,am as Mt,d as At,D as ye,an as et,ao as Lt,ap as Dt,s as zt,aq as Pt,v as Ce,P as ue,O as we,ar as jt,as as Vt,W as $t,R as Bt,$ as Wt,o as q,b as Kt,j as S,a0 as Jt,k as D,at as Ut,au as qt,av as Gt,c as Y,n as tt,e as xe,C as st,F as nt,a as de,t as he,aw as Ht,ax as it,ay as Qt,a8 as Yt,ae as Zt,az as Xt,_ as es}from"./framework.B8l2DGq3.js";import{u as ts,c as ss}from"./theme.b8NutB4I.js";const ns={root:()=>Ot(()=>import("./@localSearchIndexroot.CMyb46FE.js"),[])};/*! * tabbable 6.2.0 * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE */var vt=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],Ie=vt.join(","),mt=typeof Element>"u",ie=mt?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,ke=!mt&&Element.prototype.getRootNode?function(a){var e;return a==null||(e=a.getRootNode)===null||e===void 0?void 0:e.call(a)}:function(a){return a==null?void 0:a.ownerDocument},Ne=function a(e,t){var s;t===void 0&&(t=!0);var n=e==null||(s=e.getAttribute)===null||s===void 0?void 0:s.call(e,"inert"),r=n===""||n==="true",i=r||t&&e&&a(e.parentNode);return i},is=function(e){var t,s=e==null||(t=e.getAttribute)===null||t===void 0?void 0:t.call(e,"contenteditable");return s===""||s==="true"},gt=function(e,t,s){if(Ne(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Ie));return t&&ie.call(e,Ie)&&n.unshift(e),n=n.filter(s),n},bt=function a(e,t,s){for(var n=[],r=Array.from(e);r.length;){var i=r.shift();if(!Ne(i,!1))if(i.tagName==="SLOT"){var o=i.assignedElements(),l=o.length?o:i.children,c=a(l,!0,s);s.flatten?n.push.apply(n,c):n.push({scopeParent:i,candidates:c})}else{var h=ie.call(i,Ie);h&&s.filter(i)&&(t||!e.includes(i))&&n.push(i);var v=i.shadowRoot||typeof s.getShadowRoot=="function"&&s.getShadowRoot(i),p=!Ne(v,!1)&&(!s.shadowRootFilter||s.shadowRootFilter(i));if(v&&p){var b=a(v===!0?i.children:v.children,!0,s);s.flatten?n.push.apply(n,b):n.push({scopeParent:i,candidates:b})}else r.unshift.apply(r,i.children)}}return n},yt=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},ne=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||is(e))&&!yt(e)?0:e.tabIndex},rs=function(e,t){var s=ne(e);return s<0&&t&&!yt(e)?0:s},as=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},wt=function(e){return e.tagName==="INPUT"},os=function(e){return wt(e)&&e.type==="hidden"},ls=function(e){var t=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(s){return s.tagName==="SUMMARY"});return t},cs=function(e,t){for(var s=0;s<e.length;s++)if(e[s].checked&&e[s].form===t)return e[s]},us=function(e){if(!e.name)return!0;var t=e.form||ke(e),s=function(o){return t.querySelectorAll('input[type="radio"][name="'+o+'"]')},n;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")n=s(window.CSS.escape(e.name));else try{n=s(e.name)}catch(i){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",i.message),!1}var r=cs(n,e.form);return!r||r===e},ds=function(e){return wt(e)&&e.type==="radio"},hs=function(e){return ds(e)&&!us(e)},fs=function(e){var t,s=e&&ke(e),n=(t=s)===null||t===void 0?void 0:t.host,r=!1;if(s&&s!==e){var i,o,l;for(r=!!((i=n)!==null&&i!==void 0&&(o=i.ownerDocument)!==null&&o!==void 0&&o.contains(n)||e!=null&&(l=e.ownerDocument)!==null&&l!==void 0&&l.contains(e));!r&&n;){var c,h,v;s=ke(n),n=(c=s)===null||c===void 0?void 0:c.host,r=!!((h=n)!==null&&h!==void 0&&(v=h.ownerDocument)!==null&&v!==void 0&&v.contains(n))}}return r},rt=function(e){var t=e.getBoundingClientRect(),s=t.width,n=t.height;return s===0&&n===0},ps=function(e,t){var s=t.displayCheck,n=t.getShadowRoot;if(getComputedStyle(e).visibility==="hidden")return!0;var r=ie.call(e,"details>summary:first-of-type"),i=r?e.parentElement:e;if(ie.call(i,"details:not([open]) *"))return!0;if(!s||s==="full"||s==="legacy-full"){if(typeof n=="function"){for(var o=e;e;){var l=e.parentElement,c=ke(e);if(l&&!l.shadowRoot&&n(l)===!0)return rt(e);e.assignedSlot?e=e.assignedSlot:!l&&c!==e.ownerDocument?e=c.host:e=l}e=o}if(fs(e))return!e.getClientRects().length;if(s!=="legacy-full")return!0}else if(s==="non-zero-area")return rt(e);return!1},vs=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if(t.tagName==="FIELDSET"&&t.disabled){for(var s=0;s<t.children.length;s++){var n=t.children.item(s);if(n.tagName==="LEGEND")return ie.call(t,"fieldset[disabled] *")?!0:!n.contains(e)}return!0}t=t.parentElement}return!1},Fe=function(e,t){return!(t.disabled||Ne(t)||os(t)||ps(t,e)||ls(t)||vs(t))},Ve=function(e,t){return!(hs(t)||ne(t)<0||!Fe(e,t))},ms=function(e){var t=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(t)||t>=0)},gs=function a(e){var t=[],s=[];return e.forEach(function(n,r){var i=!!n.scopeParent,o=i?n.scopeParent:n,l=rs(o,i),c=i?a(n.candidates):o;l===0?i?t.push.apply(t,c):t.push(o):s.push({documentOrder:r,tabIndex:l,item:n,isScope:i,content:c})}),s.sort(as).reduce(function(n,r){return r.isScope?n.push.apply(n,r.content):n.push(r.content),n},[]).concat(t)},bs=function(e,t){t=t||{};var s;return t.getShadowRoot?s=bt([e],t.includeContainer,{filter:Ve.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:ms}):s=gt(e,t.includeContainer,Ve.bind(null,t)),gs(s)},ys=function(e,t){t=t||{};var s;return t.getShadowRoot?s=bt([e],t.includeContainer,{filter:Fe.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):s=gt(e,t.includeContainer,Fe.bind(null,t)),s},re=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return ie.call(e,Ie)===!1?!1:Ve(t,e)},ws=vt.concat("iframe").join(","),Me=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return ie.call(e,ws)===!1?!1:Fe(t,e)};/*! diff --git a/dev/assets/chunks/framework.B8l2DGq3.js b/dev/assets/chunks/framework.B8l2DGq3.js new file mode 100644 index 000000000..a784c3868 --- /dev/null +++ b/dev/assets/chunks/framework.B8l2DGq3.js @@ -0,0 +1,18 @@ +/** +* @vue/shared v3.5.11 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Ds(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const Z={},Tt=[],Be=()=>{},zo=()=>!1,Zt=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Hs=e=>e.startsWith("onUpdate:"),fe=Object.assign,$s=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Jo=Object.prototype.hasOwnProperty,J=(e,t)=>Jo.call(e,t),K=Array.isArray,Ct=e=>Hn(e)==="[object Map]",fi=e=>Hn(e)==="[object Set]",q=e=>typeof e=="function",re=e=>typeof e=="string",st=e=>typeof e=="symbol",ne=e=>e!==null&&typeof e=="object",ui=e=>(ne(e)||q(e))&&q(e.then)&&q(e.catch),di=Object.prototype.toString,Hn=e=>di.call(e),Qo=e=>Hn(e).slice(8,-1),hi=e=>Hn(e)==="[object Object]",js=e=>re(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,At=Ds(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),$n=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Zo=/-(\w)/g,Le=$n(e=>e.replace(Zo,(t,n)=>n?n.toUpperCase():"")),el=/\B([A-Z])/g,rt=$n(e=>e.replace(el,"-$1").toLowerCase()),jn=$n(e=>e.charAt(0).toUpperCase()+e.slice(1)),Sn=$n(e=>e?`on${jn(e)}`:""),tt=(e,t)=>!Object.is(e,t),En=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},pi=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},Ss=e=>{const t=parseFloat(e);return isNaN(t)?e:t},tl=e=>{const t=re(e)?Number(e):NaN;return isNaN(t)?e:t};let dr;const gi=()=>dr||(dr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Vs(e){if(K(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],r=re(s)?il(s):Vs(s);if(r)for(const i in r)t[i]=r[i]}return t}else if(re(e)||ne(e))return e}const nl=/;(?![^(]*\))/g,sl=/:([^]+)/,rl=/\/\*[^]*?\*\//g;function il(e){const t={};return e.replace(rl,"").split(nl).forEach(n=>{if(n){const s=n.split(sl);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Us(e){let t="";if(re(e))t=e;else if(K(e))for(let n=0;n<e.length;n++){const s=Us(e[n]);s&&(t+=s+" ")}else if(ne(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const ol="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",ll=Ds(ol);function mi(e){return!!e||e===""}const yi=e=>!!(e&&e.__v_isRef===!0),cl=e=>re(e)?e:e==null?"":K(e)||ne(e)&&(e.toString===di||!q(e.toString))?yi(e)?cl(e.value):JSON.stringify(e,vi,2):String(e),vi=(e,t)=>yi(t)?vi(e,t.value):Ct(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[ts(s,i)+" =>"]=r,n),{})}:fi(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>ts(n))}:st(t)?ts(t):ne(t)&&!K(t)&&!hi(t)?String(t):t,ts=(e,t="")=>{var n;return st(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.5.11 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let _e;class al{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].pause();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume()}}run(t){if(this._active){const n=_e;try{return _e=this,t()}finally{_e=n}}}on(){_e=this}off(){_e=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n<s;n++)this.effects[n].stop();for(n=0,s=this.cleanups.length;n<s;n++)this.cleanups[n]();if(this.scopes)for(n=0,s=this.scopes.length;n<s;n++)this.scopes[n].stop(!0);if(!this.detached&&this.parent&&!t){const r=this.parent.scopes.pop();r&&r!==this&&(this.parent.scopes[this.index]=r,r.index=this.index)}this.parent=void 0,this._active=!1}}}function bi(){return _e}function fl(e,t=!1){_e&&_e.cleanups.push(e)}let te;const ns=new WeakSet;class _i{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,_e&&_e.active&&_e.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,ns.has(this)&&(ns.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||Si(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,hr(this),Ei(this);const t=te,n=Ne;te=this,Ne=!0;try{return this.fn()}finally{xi(this),te=t,Ne=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Ws(t);this.deps=this.depsTail=void 0,hr(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?ns.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Es(this)&&this.run()}get dirty(){return Es(this)}}let wi=0,$t,jt;function Si(e,t=!1){if(e.flags|=8,t){e.next=jt,jt=e;return}e.next=$t,$t=e}function Bs(){wi++}function ks(){if(--wi>0)return;if(jt){let t=jt;for(jt=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;$t;){let t=$t;for($t=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function Ei(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function xi(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Ws(s),ul(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function Es(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Ti(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Ti(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Kt))return;e.globalVersion=Kt;const t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!Es(e)){e.flags&=-3;return}const n=te,s=Ne;te=e,Ne=!0;try{Ei(e);const r=e.fn(e._value);(t.version===0||tt(r,e._value))&&(e._value=r,t.version++)}catch(r){throw t.version++,r}finally{te=n,Ne=s,xi(e),e.flags&=-3}}function Ws(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s),!n.subs&&n.computed){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)Ws(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function ul(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ne=!0;const Ci=[];function it(){Ci.push(Ne),Ne=!1}function ot(){const e=Ci.pop();Ne=e===void 0?!0:e}function hr(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=te;te=void 0;try{t()}finally{te=n}}}let Kt=0;class dl{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Vn{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(t){if(!te||!Ne||te===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==te)n=this.activeLink=new dl(te,this),te.deps?(n.prevDep=te.depsTail,te.depsTail.nextDep=n,te.depsTail=n):te.deps=te.depsTail=n,Ai(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=te.depsTail,n.nextDep=void 0,te.depsTail.nextDep=n,te.depsTail=n,te.deps===n&&(te.deps=s)}return n}trigger(t){this.version++,Kt++,this.notify(t)}notify(t){Bs();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{ks()}}}function Ai(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)Ai(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const On=new WeakMap,ht=Symbol(""),xs=Symbol(""),qt=Symbol("");function ve(e,t,n){if(Ne&&te){let s=On.get(e);s||On.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new Vn),r.map=s,r.key=n),r.track()}}function Ge(e,t,n,s,r,i){const o=On.get(e);if(!o){Kt++;return}const l=c=>{c&&c.trigger()};if(Bs(),t==="clear")o.forEach(l);else{const c=K(e),f=c&&js(n);if(c&&n==="length"){const a=Number(s);o.forEach((h,g)=>{(g==="length"||g===qt||!st(g)&&g>=a)&&l(h)})}else switch(n!==void 0&&l(o.get(n)),f&&l(o.get(qt)),t){case"add":c?f&&l(o.get("length")):(l(o.get(ht)),Ct(e)&&l(o.get(xs)));break;case"delete":c||(l(o.get(ht)),Ct(e)&&l(o.get(xs)));break;case"set":Ct(e)&&l(o.get(ht));break}}ks()}function hl(e,t){const n=On.get(e);return n&&n.get(t)}function _t(e){const t=z(e);return t===e?t:(ve(t,"iterate",qt),Pe(e)?t:t.map(me))}function Un(e){return ve(e=z(e),"iterate",qt),e}const pl={__proto__:null,[Symbol.iterator](){return ss(this,Symbol.iterator,me)},concat(...e){return _t(this).concat(...e.map(t=>K(t)?_t(t):t))},entries(){return ss(this,"entries",e=>(e[1]=me(e[1]),e))},every(e,t){return We(this,"every",e,t,void 0,arguments)},filter(e,t){return We(this,"filter",e,t,n=>n.map(me),arguments)},find(e,t){return We(this,"find",e,t,me,arguments)},findIndex(e,t){return We(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return We(this,"findLast",e,t,me,arguments)},findLastIndex(e,t){return We(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return We(this,"forEach",e,t,void 0,arguments)},includes(...e){return rs(this,"includes",e)},indexOf(...e){return rs(this,"indexOf",e)},join(e){return _t(this).join(e)},lastIndexOf(...e){return rs(this,"lastIndexOf",e)},map(e,t){return We(this,"map",e,t,void 0,arguments)},pop(){return Ft(this,"pop")},push(...e){return Ft(this,"push",e)},reduce(e,...t){return pr(this,"reduce",e,t)},reduceRight(e,...t){return pr(this,"reduceRight",e,t)},shift(){return Ft(this,"shift")},some(e,t){return We(this,"some",e,t,void 0,arguments)},splice(...e){return Ft(this,"splice",e)},toReversed(){return _t(this).toReversed()},toSorted(e){return _t(this).toSorted(e)},toSpliced(...e){return _t(this).toSpliced(...e)},unshift(...e){return Ft(this,"unshift",e)},values(){return ss(this,"values",me)}};function ss(e,t,n){const s=Un(e),r=s[t]();return s!==e&&!Pe(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.value&&(i.value=n(i.value)),i}),r}const gl=Array.prototype;function We(e,t,n,s,r,i){const o=Un(e),l=o!==e&&!Pe(e),c=o[t];if(c!==gl[t]){const h=c.apply(e,i);return l?me(h):h}let f=n;o!==e&&(l?f=function(h,g){return n.call(this,me(h),g,e)}:n.length>2&&(f=function(h,g){return n.call(this,h,g,e)}));const a=c.call(o,f,s);return l&&r?r(a):a}function pr(e,t,n,s){const r=Un(e);let i=n;return r!==e&&(Pe(e)?n.length>3&&(i=function(o,l,c){return n.call(this,o,l,c,e)}):i=function(o,l,c){return n.call(this,o,me(l),c,e)}),r[t](i,...s)}function rs(e,t,n){const s=z(e);ve(s,"iterate",qt);const r=s[t](...n);return(r===-1||r===!1)&&Ys(n[0])?(n[0]=z(n[0]),s[t](...n)):r}function Ft(e,t,n=[]){it(),Bs();const s=z(e)[t].apply(e,n);return ks(),ot(),s}const ml=Ds("__proto__,__v_isRef,__isVue"),Ri=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(st));function yl(e){st(e)||(e=String(e));const t=z(this);return ve(t,"has",e),t.hasOwnProperty(e)}class Oi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?Ml:Ii:i?Li:Pi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=K(t);if(!r){let c;if(o&&(c=pl[n]))return c;if(n==="hasOwnProperty")return yl}const l=Reflect.get(t,n,ae(t)?t:s);return(st(n)?Ri.has(n):ml(n))||(r||ve(t,"get",n),i)?l:ae(l)?o&&js(n)?l:l.value:ne(l)?r?Wn(l):kn(l):l}}class Mi extends Oi{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const c=vt(i);if(!Pe(s)&&!vt(s)&&(i=z(i),s=z(s)),!K(t)&&ae(i)&&!ae(s))return c?!1:(i.value=s,!0)}const o=K(t)&&js(n)?Number(n)<t.length:J(t,n),l=Reflect.set(t,n,s,ae(t)?t:r);return t===z(r)&&(o?tt(s,i)&&Ge(t,"set",n,s):Ge(t,"add",n,s)),l}deleteProperty(t,n){const s=J(t,n);t[n];const r=Reflect.deleteProperty(t,n);return r&&s&&Ge(t,"delete",n,void 0),r}has(t,n){const s=Reflect.has(t,n);return(!st(n)||!Ri.has(n))&&ve(t,"has",n),s}ownKeys(t){return ve(t,"iterate",K(t)?"length":ht),Reflect.ownKeys(t)}}class vl extends Oi{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const bl=new Mi,_l=new vl,wl=new Mi(!0);const Ks=e=>e,Bn=e=>Reflect.getPrototypeOf(e);function cn(e,t,n=!1,s=!1){e=e.__v_raw;const r=z(e),i=z(t);n||(tt(t,i)&&ve(r,"get",t),ve(r,"get",i));const{has:o}=Bn(r),l=s?Ks:n?Xs:me;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function an(e,t=!1){const n=this.__v_raw,s=z(n),r=z(e);return t||(tt(e,r)&&ve(s,"has",e),ve(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function fn(e,t=!1){return e=e.__v_raw,!t&&ve(z(e),"iterate",ht),Reflect.get(e,"size",e)}function gr(e,t=!1){!t&&!Pe(e)&&!vt(e)&&(e=z(e));const n=z(this);return Bn(n).has.call(n,e)||(n.add(e),Ge(n,"add",e,e)),this}function mr(e,t,n=!1){!n&&!Pe(t)&&!vt(t)&&(t=z(t));const s=z(this),{has:r,get:i}=Bn(s);let o=r.call(s,e);o||(e=z(e),o=r.call(s,e));const l=i.call(s,e);return s.set(e,t),o?tt(t,l)&&Ge(s,"set",e,t):Ge(s,"add",e,t),this}function yr(e){const t=z(this),{has:n,get:s}=Bn(t);let r=n.call(t,e);r||(e=z(e),r=n.call(t,e)),s&&s.call(t,e);const i=t.delete(e);return r&&Ge(t,"delete",e,void 0),i}function vr(){const e=z(this),t=e.size!==0,n=e.clear();return t&&Ge(e,"clear",void 0,void 0),n}function un(e,t){return function(s,r){const i=this,o=i.__v_raw,l=z(o),c=t?Ks:e?Xs:me;return!e&&ve(l,"iterate",ht),o.forEach((f,a)=>s.call(r,c(f),c(a),i))}}function dn(e,t,n){return function(...s){const r=this.__v_raw,i=z(r),o=Ct(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,f=r[e](...s),a=n?Ks:t?Xs:me;return!t&&ve(i,"iterate",c?xs:ht),{next(){const{value:h,done:g}=f.next();return g?{value:h,done:g}:{value:l?[a(h[0]),a(h[1])]:a(h),done:g}},[Symbol.iterator](){return this}}}}function Xe(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Sl(){const e={get(i){return cn(this,i)},get size(){return fn(this)},has:an,add:gr,set:mr,delete:yr,clear:vr,forEach:un(!1,!1)},t={get(i){return cn(this,i,!1,!0)},get size(){return fn(this)},has:an,add(i){return gr.call(this,i,!0)},set(i,o){return mr.call(this,i,o,!0)},delete:yr,clear:vr,forEach:un(!1,!0)},n={get(i){return cn(this,i,!0)},get size(){return fn(this,!0)},has(i){return an.call(this,i,!0)},add:Xe("add"),set:Xe("set"),delete:Xe("delete"),clear:Xe("clear"),forEach:un(!0,!1)},s={get(i){return cn(this,i,!0,!0)},get size(){return fn(this,!0)},has(i){return an.call(this,i,!0)},add:Xe("add"),set:Xe("set"),delete:Xe("delete"),clear:Xe("clear"),forEach:un(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=dn(i,!1,!1),n[i]=dn(i,!0,!1),t[i]=dn(i,!1,!0),s[i]=dn(i,!0,!0)}),[e,n,t,s]}const[El,xl,Tl,Cl]=Sl();function qs(e,t){const n=t?e?Cl:Tl:e?xl:El;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(J(n,r)&&r in s?n:s,r,i)}const Al={get:qs(!1,!1)},Rl={get:qs(!1,!0)},Ol={get:qs(!0,!1)};const Pi=new WeakMap,Li=new WeakMap,Ii=new WeakMap,Ml=new WeakMap;function Pl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Ll(e){return e.__v_skip||!Object.isExtensible(e)?0:Pl(Qo(e))}function kn(e){return vt(e)?e:Gs(e,!1,bl,Al,Pi)}function Il(e){return Gs(e,!1,wl,Rl,Li)}function Wn(e){return Gs(e,!0,_l,Ol,Ii)}function Gs(e,t,n,s,r){if(!ne(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=Ll(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function pt(e){return vt(e)?pt(e.__v_raw):!!(e&&e.__v_isReactive)}function vt(e){return!!(e&&e.__v_isReadonly)}function Pe(e){return!!(e&&e.__v_isShallow)}function Ys(e){return e?!!e.__v_raw:!1}function z(e){const t=e&&e.__v_raw;return t?z(t):e}function xn(e){return!J(e,"__v_skip")&&Object.isExtensible(e)&&pi(e,"__v_skip",!0),e}const me=e=>ne(e)?kn(e):e,Xs=e=>ne(e)?Wn(e):e;function ae(e){return e?e.__v_isRef===!0:!1}function oe(e){return Ni(e,!1)}function zs(e){return Ni(e,!0)}function Ni(e,t){return ae(e)?e:new Nl(e,t)}class Nl{constructor(t,n){this.dep=new Vn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:z(t),this._value=n?t:me(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Pe(t)||vt(t);t=s?t:z(t),tt(t,n)&&(this._rawValue=t,this._value=s?t:me(t),this.dep.trigger())}}function Fi(e){return ae(e)?e.value:e}const Fl={get:(e,t,n)=>t==="__v_raw"?e:Fi(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return ae(r)&&!ae(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Di(e){return pt(e)?e:new Proxy(e,Fl)}class Dl{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new Vn,{get:s,set:r}=t(n.track.bind(n),n.trigger.bind(n));this._get=s,this._set=r}get value(){return this._value=this._get()}set value(t){this._set(t)}}function Hl(e){return new Dl(e)}class $l{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return hl(z(this._object),this._key)}}class jl{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Vl(e,t,n){return ae(e)?e:q(e)?new jl(e):ne(e)&&arguments.length>1?Ul(e,t,n):oe(e)}function Ul(e,t,n){const s=e[t];return ae(s)?s:new $l(e,t,n)}class Bl{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Vn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Kt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&te!==this)return Si(this,!0),!0}get value(){const t=this.dep.track();return Ti(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function kl(e,t,n=!1){let s,r;return q(e)?s=e:(s=e.get,r=e.set),new Bl(s,r,n)}const hn={},Mn=new WeakMap;let ut;function Wl(e,t=!1,n=ut){if(n){let s=Mn.get(n);s||Mn.set(n,s=[]),s.push(e)}}function Kl(e,t,n=Z){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:c}=n,f=m=>r?m:Pe(m)||r===!1||r===0?qe(m,1):qe(m);let a,h,g,b,S=!1,_=!1;if(ae(e)?(h=()=>e.value,S=Pe(e)):pt(e)?(h=()=>f(e),S=!0):K(e)?(_=!0,S=e.some(m=>pt(m)||Pe(m)),h=()=>e.map(m=>{if(ae(m))return m.value;if(pt(m))return f(m);if(q(m))return c?c(m,2):m()})):q(e)?t?h=c?()=>c(e,2):e:h=()=>{if(g){it();try{g()}finally{ot()}}const m=ut;ut=a;try{return c?c(e,3,[b]):e(b)}finally{ut=m}}:h=Be,t&&r){const m=h,M=r===!0?1/0:r;h=()=>qe(m(),M)}const k=bi(),N=()=>{a.stop(),k&&$s(k.effects,a)};if(i&&t){const m=t;t=(...M)=>{m(...M),N()}}let j=_?new Array(e.length).fill(hn):hn;const p=m=>{if(!(!(a.flags&1)||!a.dirty&&!m))if(t){const M=a.run();if(r||S||(_?M.some((F,H)=>tt(F,j[H])):tt(M,j))){g&&g();const F=ut;ut=a;try{const H=[M,j===hn?void 0:_&&j[0]===hn?[]:j,b];c?c(t,3,H):t(...H),j=M}finally{ut=F}}}else a.run()};return l&&l(p),a=new _i(h),a.scheduler=o?()=>o(p,!1):p,b=m=>Wl(m,!1,a),g=a.onStop=()=>{const m=Mn.get(a);if(m){if(c)c(m,4);else for(const M of m)M();Mn.delete(a)}},t?s?p(!0):j=a.run():o?o(p.bind(null,!0),!0):a.run(),N.pause=a.pause.bind(a),N.resume=a.resume.bind(a),N.stop=N,N}function qe(e,t=1/0,n){if(t<=0||!ne(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,ae(e))qe(e.value,t,n);else if(K(e))for(let s=0;s<e.length;s++)qe(e[s],t,n);else if(fi(e)||Ct(e))e.forEach(s=>{qe(s,t,n)});else if(hi(e)){for(const s in e)qe(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&qe(e[s],t,n)}return e}/** +* @vue/runtime-core v3.5.11 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function en(e,t,n,s){try{return s?e(...s):e()}catch(r){tn(r,t,n)}}function De(e,t,n,s){if(q(e)){const r=en(e,t,n,s);return r&&ui(r)&&r.catch(i=>{tn(i,t,n)}),r}if(K(e)){const r=[];for(let i=0;i<e.length;i++)r.push(De(e[i],t,n,s));return r}}function tn(e,t,n,s=!0){const r=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:o}=t&&t.appContext.config||Z;if(t){let l=t.parent;const c=t.proxy,f=`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const a=l.ec;if(a){for(let h=0;h<a.length;h++)if(a[h](e,c,f)===!1)return}l=l.parent}if(i){it(),en(i,null,10,[e,c,f]),ot();return}}ql(e,n,r,s,o)}function ql(e,t,n,s=!0,r=!1){if(r)throw e;console.error(e)}const we=[];let Ve=-1;const Rt=[];let Qe=null,St=0;const Hi=Promise.resolve();let Pn=null;function Kn(e){const t=Pn||Hi;return e?t.then(this?e.bind(this):e):t}function Gl(e){let t=Ve+1,n=we.length;for(;t<n;){const s=t+n>>>1,r=we[s],i=Gt(r);i<e||i===e&&r.flags&2?t=s+1:n=s}return t}function Js(e){if(!(e.flags&1)){const t=Gt(e),n=we[we.length-1];!n||!(e.flags&2)&&t>=Gt(n)?we.push(e):we.splice(Gl(t),0,e),e.flags|=1,$i()}}function $i(){Pn||(Pn=Hi.then(ji))}function Yl(e){K(e)?Rt.push(...e):Qe&&e.id===-1?Qe.splice(St+1,0,e):e.flags&1||(Rt.push(e),e.flags|=1),$i()}function br(e,t,n=Ve+1){for(;n<we.length;n++){const s=we[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;we.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function Ln(e){if(Rt.length){const t=[...new Set(Rt)].sort((n,s)=>Gt(n)-Gt(s));if(Rt.length=0,Qe){Qe.push(...t);return}for(Qe=t,St=0;St<Qe.length;St++){const n=Qe[St];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}Qe=null,St=0}}const Gt=e=>e.id==null?e.flags&2?-1:1/0:e.id;function ji(e){try{for(Ve=0;Ve<we.length;Ve++){const t=we[Ve];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),en(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Ve<we.length;Ve++){const t=we[Ve];t&&(t.flags&=-2)}Ve=-1,we.length=0,Ln(),Pn=null,(we.length||Rt.length)&&ji()}}let de=null,Vi=null;function In(e){const t=de;return de=e,Vi=e&&e.type.__scopeId||null,t}function Xl(e,t=de,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&Ir(-1);const i=In(t);let o;try{o=e(...r)}finally{In(i),s._d&&Ir(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function Pf(e,t){if(de===null)return e;const n=Jn(de),s=e.dirs||(e.dirs=[]);for(let r=0;r<t.length;r++){let[i,o,l,c=Z]=t[r];i&&(q(i)&&(i={mounted:i,updated:i}),i.deep&&qe(o),s.push({dir:i,instance:n,value:o,oldValue:void 0,arg:l,modifiers:c}))}return e}function Ue(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;o<r.length;o++){const l=r[o];i&&(l.oldValue=i[o].value);let c=l.dir[s];c&&(it(),De(c,n,8,[e.el,l,e,t]),ot())}}const Ui=Symbol("_vte"),Bi=e=>e.__isTeleport,Vt=e=>e&&(e.disabled||e.disabled===""),zl=e=>e&&(e.defer||e.defer===""),_r=e=>typeof SVGElement<"u"&&e instanceof SVGElement,wr=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Ts=(e,t)=>{const n=e&&e.to;return re(n)?t?t(n):null:n},Jl={name:"Teleport",__isTeleport:!0,process(e,t,n,s,r,i,o,l,c,f){const{mc:a,pc:h,pbc:g,o:{insert:b,querySelector:S,createText:_,createComment:k}}=f,N=Vt(t.props);let{shapeFlag:j,children:p,dynamicChildren:m}=t;if(e==null){const M=t.el=_(""),F=t.anchor=_("");b(M,n,s),b(F,n,s);const H=(R,v)=>{j&16&&(r&&r.isCE&&(r.ce._teleportTarget=R),a(p,R,v,r,i,o,l,c))},V=()=>{const R=t.target=Ts(t.props,S),v=ki(R,t,_,b);R&&(o!=="svg"&&_r(R)?o="svg":o!=="mathml"&&wr(R)&&(o="mathml"),N||(H(R,v),Tn(t)))};N&&(H(n,F),Tn(t)),zl(t.props)?Ee(V,i):V()}else{t.el=e.el,t.targetStart=e.targetStart;const M=t.anchor=e.anchor,F=t.target=e.target,H=t.targetAnchor=e.targetAnchor,V=Vt(e.props),R=V?n:F,v=V?M:H;if(o==="svg"||_r(F)?o="svg":(o==="mathml"||wr(F))&&(o="mathml"),m?(g(e.dynamicChildren,m,R,r,i,o,l),nr(e,t,!0)):c||h(e,t,R,v,r,i,o,l,!1),N)V?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):pn(t,n,M,f,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const I=t.target=Ts(t.props,S);I&&pn(t,I,null,f,0)}else V&&pn(t,F,H,f,1);Tn(t)}},remove(e,t,n,{um:s,o:{remove:r}},i){const{shapeFlag:o,children:l,anchor:c,targetStart:f,targetAnchor:a,target:h,props:g}=e;if(h&&(r(f),r(a)),i&&r(c),o&16){const b=i||!Vt(g);for(let S=0;S<l.length;S++){const _=l[S];s(_,t,n,b,!!_.dynamicChildren)}}},move:pn,hydrate:Ql};function pn(e,t,n,{o:{insert:s},m:r},i=2){i===0&&s(e.targetAnchor,t,n);const{el:o,anchor:l,shapeFlag:c,children:f,props:a}=e,h=i===2;if(h&&s(o,t,n),(!h||Vt(a))&&c&16)for(let g=0;g<f.length;g++)r(f[g],t,n,2);h&&s(l,t,n)}function Ql(e,t,n,s,r,i,{o:{nextSibling:o,parentNode:l,querySelector:c,insert:f,createText:a}},h){const g=t.target=Ts(t.props,c);if(g){const b=g._lpa||g.firstChild;if(t.shapeFlag&16)if(Vt(t.props))t.anchor=h(o(e),t,l(e),n,s,r,i),t.targetStart=b,t.targetAnchor=b&&o(b);else{t.anchor=o(e);let S=b;for(;S;){if(S&&S.nodeType===8){if(S.data==="teleport start anchor")t.targetStart=S;else if(S.data==="teleport anchor"){t.targetAnchor=S,g._lpa=t.targetAnchor&&o(t.targetAnchor);break}}S=o(S)}t.targetAnchor||ki(g,t,a,f),h(b&&o(b),t,g,n,s,r,i)}Tn(t)}return t.anchor&&o(t.anchor)}const Lf=Jl;function Tn(e){const t=e.ctx;if(t&&t.ut){let n=e.targetStart;for(;n&&n!==e.targetAnchor;)n.nodeType===1&&n.setAttribute("data-v-owner",t.uid),n=n.nextSibling;t.ut()}}function ki(e,t,n,s){const r=t.targetStart=n(""),i=t.targetAnchor=n("");return r[Ui]=i,e&&(s(r,e),s(i,e)),i}const Ze=Symbol("_leaveCb"),gn=Symbol("_enterCb");function Zl(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Lt(()=>{e.isMounted=!0}),zi(()=>{e.isUnmounting=!0}),e}const Re=[Function,Array],Wi={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Re,onEnter:Re,onAfterEnter:Re,onEnterCancelled:Re,onBeforeLeave:Re,onLeave:Re,onAfterLeave:Re,onLeaveCancelled:Re,onBeforeAppear:Re,onAppear:Re,onAfterAppear:Re,onAppearCancelled:Re},Ki=e=>{const t=e.subTree;return t.component?Ki(t.component):t},ec={name:"BaseTransition",props:Wi,setup(e,{slots:t}){const n=zn(),s=Zl();return()=>{const r=t.default&&Yi(t.default(),!0);if(!r||!r.length)return;const i=qi(r),o=z(e),{mode:l}=o;if(s.isLeaving)return is(i);const c=Sr(i);if(!c)return is(i);let f=Cs(c,o,s,n,g=>f=g);c.type!==ye&&Yt(c,f);const a=n.subTree,h=a&&Sr(a);if(h&&h.type!==ye&&!dt(c,h)&&Ki(n).type!==ye){const g=Cs(h,o,s,n);if(Yt(h,g),l==="out-in"&&c.type!==ye)return s.isLeaving=!0,g.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete g.afterLeave},is(i);l==="in-out"&&c.type!==ye&&(g.delayLeave=(b,S,_)=>{const k=Gi(s,h);k[String(h.key)]=h,b[Ze]=()=>{S(),b[Ze]=void 0,delete f.delayedLeave},f.delayedLeave=_})}return i}}};function qi(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==ye){t=n;break}}return t}const tc=ec;function Gi(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Cs(e,t,n,s,r){const{appear:i,mode:o,persisted:l=!1,onBeforeEnter:c,onEnter:f,onAfterEnter:a,onEnterCancelled:h,onBeforeLeave:g,onLeave:b,onAfterLeave:S,onLeaveCancelled:_,onBeforeAppear:k,onAppear:N,onAfterAppear:j,onAppearCancelled:p}=t,m=String(e.key),M=Gi(n,e),F=(R,v)=>{R&&De(R,s,9,v)},H=(R,v)=>{const I=v[1];F(R,v),K(R)?R.every(x=>x.length<=1)&&I():R.length<=1&&I()},V={mode:o,persisted:l,beforeEnter(R){let v=c;if(!n.isMounted)if(i)v=k||c;else return;R[Ze]&&R[Ze](!0);const I=M[m];I&&dt(e,I)&&I.el[Ze]&&I.el[Ze](),F(v,[R])},enter(R){let v=f,I=a,x=h;if(!n.isMounted)if(i)v=N||f,I=j||a,x=p||h;else return;let W=!1;const se=R[gn]=ce=>{W||(W=!0,ce?F(x,[R]):F(I,[R]),V.delayedLeave&&V.delayedLeave(),R[gn]=void 0)};v?H(v,[R,se]):se()},leave(R,v){const I=String(e.key);if(R[gn]&&R[gn](!0),n.isUnmounting)return v();F(g,[R]);let x=!1;const W=R[Ze]=se=>{x||(x=!0,v(),se?F(_,[R]):F(S,[R]),R[Ze]=void 0,M[I]===e&&delete M[I])};M[I]=e,b?H(b,[R,W]):W()},clone(R){const v=Cs(R,t,n,s,r);return r&&r(v),v}};return V}function is(e){if(nn(e))return e=nt(e),e.children=null,e}function Sr(e){if(!nn(e))return Bi(e.type)&&e.children?qi(e.children):e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&q(n.default))return n.default()}}function Yt(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Yt(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Yi(e,t=!1,n){let s=[],r=0;for(let i=0;i<e.length;i++){let o=e[i];const l=n==null?o.key:String(n)+String(o.key!=null?o.key:i);o.type===Se?(o.patchFlag&128&&r++,s=s.concat(Yi(o.children,t,l))):(t||o.type!==ye)&&s.push(l!=null?nt(o,{key:l}):o)}if(r>1)for(let i=0;i<s.length;i++)s[i].patchFlag=-2;return s}/*! #__NO_SIDE_EFFECTS__ */function Qs(e,t){return q(e)?fe({name:e.name},t,{setup:e}):e}function Zs(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Nn(e,t,n,s,r=!1){if(K(e)){e.forEach((S,_)=>Nn(S,t&&(K(t)?t[_]:t),n,s,r));return}if(gt(s)&&!r)return;const i=s.shapeFlag&4?Jn(s.component):s.el,o=r?null:i,{i:l,r:c}=e,f=t&&t.r,a=l.refs===Z?l.refs={}:l.refs,h=l.setupState,g=z(h),b=h===Z?()=>!1:S=>J(g,S);if(f!=null&&f!==c&&(re(f)?(a[f]=null,b(f)&&(h[f]=null)):ae(f)&&(f.value=null)),q(c))en(c,l,12,[o,a]);else{const S=re(c),_=ae(c);if(S||_){const k=()=>{if(e.f){const N=S?b(c)?h[c]:a[c]:c.value;r?K(N)&&$s(N,i):K(N)?N.includes(i)||N.push(i):S?(a[c]=[i],b(c)&&(h[c]=a[c])):(c.value=[i],e.k&&(a[e.k]=c.value))}else S?(a[c]=o,b(c)&&(h[c]=o)):_&&(c.value=o,e.k&&(a[e.k]=o))};o?(k.id=-1,Ee(k,n)):k()}}}let Er=!1;const wt=()=>{Er||(console.error("Hydration completed but contains mismatches."),Er=!0)},nc=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",sc=e=>e.namespaceURI.includes("MathML"),mn=e=>{if(e.nodeType===1){if(nc(e))return"svg";if(sc(e))return"mathml"}},xt=e=>e.nodeType===8;function rc(e){const{mt:t,p:n,o:{patchProp:s,createText:r,nextSibling:i,parentNode:o,remove:l,insert:c,createComment:f}}=e,a=(p,m)=>{if(!m.hasChildNodes()){n(null,p,m),Ln(),m._vnode=p;return}h(m.firstChild,p,null,null,null),Ln(),m._vnode=p},h=(p,m,M,F,H,V=!1)=>{V=V||!!m.dynamicChildren;const R=xt(p)&&p.data==="[",v=()=>_(p,m,M,F,H,R),{type:I,ref:x,shapeFlag:W,patchFlag:se}=m;let ce=p.nodeType;m.el=p,se===-2&&(V=!1,m.dynamicChildren=null);let U=null;switch(I){case mt:ce!==3?m.children===""?(c(m.el=r(""),o(p),p),U=p):U=v():(p.data!==m.children&&(wt(),p.data=m.children),U=i(p));break;case ye:j(p)?(U=i(p),N(m.el=p.content.firstChild,p,M)):ce!==8||R?U=v():U=i(p);break;case Bt:if(R&&(p=i(p),ce=p.nodeType),ce===1||ce===3){U=p;const Y=!m.children.length;for(let $=0;$<m.staticCount;$++)Y&&(m.children+=U.nodeType===1?U.outerHTML:U.data),$===m.staticCount-1&&(m.anchor=U),U=i(U);return R?i(U):U}else v();break;case Se:R?U=S(p,m,M,F,H,V):U=v();break;default:if(W&1)(ce!==1||m.type.toLowerCase()!==p.tagName.toLowerCase())&&!j(p)?U=v():U=g(p,m,M,F,H,V);else if(W&6){m.slotScopeIds=H;const Y=o(p);if(R?U=k(p):xt(p)&&p.data==="teleport start"?U=k(p,p.data,"teleport end"):U=i(p),t(m,Y,null,M,F,mn(Y),V),gt(m)){let $;R?($=le(Se),$.anchor=U?U.previousSibling:Y.lastChild):$=p.nodeType===3?Eo(""):le("div"),$.el=p,m.component.subTree=$}}else W&64?ce!==8?U=v():U=m.type.hydrate(p,m,M,F,H,V,e,b):W&128&&(U=m.type.hydrate(p,m,M,F,mn(o(p)),H,V,e,h))}return x!=null&&Nn(x,null,F,m),U},g=(p,m,M,F,H,V)=>{V=V||!!m.dynamicChildren;const{type:R,props:v,patchFlag:I,shapeFlag:x,dirs:W,transition:se}=m,ce=R==="input"||R==="option";if(ce||I!==-1){W&&Ue(m,null,M,"created");let U=!1;if(j(p)){U=po(F,se)&&M&&M.vnode.props&&M.vnode.props.appear;const $=p.content.firstChild;U&&se.beforeEnter($),N($,p,M),m.el=p=$}if(x&16&&!(v&&(v.innerHTML||v.textContent))){let $=b(p.firstChild,m,p,M,F,H,V);for(;$;){yn(p,1)||wt();const he=$;$=$.nextSibling,l(he)}}else if(x&8){let $=m.children;$[0]===` +`&&(p.tagName==="PRE"||p.tagName==="TEXTAREA")&&($=$.slice(1)),p.textContent!==$&&(yn(p,0)||wt(),p.textContent=m.children)}if(v){if(ce||!V||I&48){const $=p.tagName.includes("-");for(const he in v)(ce&&(he.endsWith("value")||he==="indeterminate")||Zt(he)&&!At(he)||he[0]==="."||$)&&s(p,he,null,v[he],void 0,M)}else if(v.onClick)s(p,"onClick",null,v.onClick,void 0,M);else if(I&4&&pt(v.style))for(const $ in v.style)v.style[$]}let Y;(Y=v&&v.onVnodeBeforeMount)&&Oe(Y,M,m),W&&Ue(m,null,M,"beforeMount"),((Y=v&&v.onVnodeMounted)||W||U)&&bo(()=>{Y&&Oe(Y,M,m),U&&se.enter(p),W&&Ue(m,null,M,"mounted")},F)}return p.nextSibling},b=(p,m,M,F,H,V,R)=>{R=R||!!m.dynamicChildren;const v=m.children,I=v.length;for(let x=0;x<I;x++){const W=R?v[x]:v[x]=Me(v[x]),se=W.type===mt;p?(se&&!R&&x+1<I&&Me(v[x+1]).type===mt&&(c(r(p.data.slice(W.children.length)),M,i(p)),p.data=W.children),p=h(p,W,F,H,V,R)):se&&!W.children?c(W.el=r(""),M):(yn(M,1)||wt(),n(null,W,M,null,F,H,mn(M),V))}return p},S=(p,m,M,F,H,V)=>{const{slotScopeIds:R}=m;R&&(H=H?H.concat(R):R);const v=o(p),I=b(i(p),m,v,M,F,H,V);return I&&xt(I)&&I.data==="]"?i(m.anchor=I):(wt(),c(m.anchor=f("]"),v,I),I)},_=(p,m,M,F,H,V)=>{if(yn(p.parentElement,1)||wt(),m.el=null,V){const I=k(p);for(;;){const x=i(p);if(x&&x!==I)l(x);else break}}const R=i(p),v=o(p);return l(p),n(null,m,v,R,M,F,mn(v),H),R},k=(p,m="[",M="]")=>{let F=0;for(;p;)if(p=i(p),p&&xt(p)&&(p.data===m&&F++,p.data===M)){if(F===0)return i(p);F--}return p},N=(p,m,M)=>{const F=m.parentNode;F&&F.replaceChild(p,m);let H=M;for(;H;)H.vnode.el===m&&(H.vnode.el=H.subTree.el=p),H=H.parent},j=p=>p.nodeType===1&&p.tagName==="TEMPLATE";return[a,h]}const xr="data-allow-mismatch",ic={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function yn(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(xr);)e=e.parentElement;const n=e&&e.getAttribute(xr);if(n==null)return!1;if(n==="")return!0;{const s=n.split(",");return t===0&&s.includes("children")?!0:n.split(",").includes(ic[t])}}function oc(e,t){if(xt(e)&&e.data==="["){let n=1,s=e.nextSibling;for(;s;){if(s.nodeType===1){if(t(s)===!1)break}else if(xt(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else t(e)}const gt=e=>!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function If(e){q(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,hydrate:i,timeout:o,suspensible:l=!0,onError:c}=e;let f=null,a,h=0;const g=()=>(h++,f=null,b()),b=()=>{let S;return f||(S=f=t().catch(_=>{if(_=_ instanceof Error?_:new Error(String(_)),c)return new Promise((k,N)=>{c(_,()=>k(g()),()=>N(_),h+1)});throw _}).then(_=>S!==f&&f?f:(_&&(_.__esModule||_[Symbol.toStringTag]==="Module")&&(_=_.default),a=_,_)))};return Qs({name:"AsyncComponentWrapper",__asyncLoader:b,__asyncHydrate(S,_,k){const N=i?()=>{const j=i(k,p=>oc(S,p));j&&(_.bum||(_.bum=[])).push(j)}:k;a?N():b().then(()=>!_.isUnmounted&&N())},get __asyncResolved(){return a},setup(){const S=ue;if(Zs(S),a)return()=>os(a,S);const _=p=>{f=null,tn(p,S,13,!s)};if(l&&S.suspense||rn)return b().then(p=>()=>os(p,S)).catch(p=>(_(p),()=>s?le(s,{error:p}):null));const k=oe(!1),N=oe(),j=oe(!!r);return r&&setTimeout(()=>{j.value=!1},r),o!=null&&setTimeout(()=>{if(!k.value&&!N.value){const p=new Error(`Async component timed out after ${o}ms.`);_(p),N.value=p}},o),b().then(()=>{k.value=!0,S.parent&&nn(S.parent.vnode)&&S.parent.update()}).catch(p=>{_(p),N.value=p}),()=>{if(k.value&&a)return os(a,S);if(N.value&&s)return le(s,{error:N.value});if(n&&!j.value)return le(n)}}})}function os(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=le(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const nn=e=>e.type.__isKeepAlive;function lc(e,t){Xi(e,"a",t)}function cc(e,t){Xi(e,"da",t)}function Xi(e,t,n=ue){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(qn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)nn(r.parent.vnode)&&ac(s,t,n,r),r=r.parent}}function ac(e,t,n,s){const r=qn(t,e,s,!0);Gn(()=>{$s(s[t],r)},n)}function qn(e,t,n=ue,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{it();const l=sn(n),c=De(t,n,e,o);return l(),ot(),c});return s?r.unshift(i):r.push(i),i}}const Ye=e=>(t,n=ue)=>{(!rn||e==="sp")&&qn(e,(...s)=>t(...s),n)},fc=Ye("bm"),Lt=Ye("m"),uc=Ye("bu"),dc=Ye("u"),zi=Ye("bum"),Gn=Ye("um"),hc=Ye("sp"),pc=Ye("rtg"),gc=Ye("rtc");function mc(e,t=ue){qn("ec",e,t)}const Ji="components";function Nf(e,t){return Zi(Ji,e,!0,t)||e}const Qi=Symbol.for("v-ndc");function Ff(e){return re(e)?Zi(Ji,e,!1)||e:e||Qi}function Zi(e,t,n=!0,s=!1){const r=de||ue;if(r){const i=r.type;{const l=ta(i,!1);if(l&&(l===t||l===Le(t)||l===jn(Le(t))))return i}const o=Tr(r[e]||i[e],t)||Tr(r.appContext[e],t);return!o&&s?i:o}}function Tr(e,t){return e&&(e[t]||e[Le(t)]||e[jn(Le(t))])}function Df(e,t,n,s){let r;const i=n,o=K(e);if(o||re(e)){const l=o&&pt(e);let c=!1;l&&(c=!Pe(e),e=Un(e)),r=new Array(e.length);for(let f=0,a=e.length;f<a;f++)r[f]=t(c?me(e[f]):e[f],f,void 0,i)}else if(typeof e=="number"){r=new Array(e);for(let l=0;l<e;l++)r[l]=t(l+1,l,void 0,i)}else if(ne(e))if(e[Symbol.iterator])r=Array.from(e,(l,c)=>t(l,c,void 0,i));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,f=l.length;c<f;c++){const a=l[c];r[c]=t(e[a],a,c,i)}}else r=[];return r}function Hf(e,t,n={},s,r){if(de.ce||de.parent&>(de.parent)&&de.parent.ce)return t!=="default"&&(n.name=t),Ps(),Ls(Se,null,[le("slot",n,s&&s())],64);let i=e[t];i&&i._c&&(i._d=!1),Ps();const o=i&&eo(i(n)),l=Ls(Se,{key:(n.key||o&&o.key||`_${t}`)+(!o&&s?"_fb":"")},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function eo(e){return e.some(t=>zt(t)?!(t.type===ye||t.type===Se&&!eo(t.children)):!0)?e:null}function $f(e,t){const n={};for(const s in e)n[/[A-Z]/.test(s)?`on:${s}`:Sn(s)]=e[s];return n}const As=e=>e?xo(e)?Jn(e):As(e.parent):null,Ut=fe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>As(e.parent),$root:e=>As(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>er(e),$forceUpdate:e=>e.f||(e.f=()=>{Js(e.update)}),$nextTick:e=>e.n||(e.n=Kn.bind(e.proxy)),$watch:e=>$c.bind(e)}),ls=(e,t)=>e!==Z&&!e.__isScriptSetup&&J(e,t),yc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;let f;if(t[0]!=="$"){const b=o[t];if(b!==void 0)switch(b){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(ls(s,t))return o[t]=1,s[t];if(r!==Z&&J(r,t))return o[t]=2,r[t];if((f=e.propsOptions[0])&&J(f,t))return o[t]=3,i[t];if(n!==Z&&J(n,t))return o[t]=4,n[t];Rs&&(o[t]=0)}}const a=Ut[t];let h,g;if(a)return t==="$attrs"&&ve(e.attrs,"get",""),a(e);if((h=l.__cssModules)&&(h=h[t]))return h;if(n!==Z&&J(n,t))return o[t]=4,n[t];if(g=c.config.globalProperties,J(g,t))return g[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return ls(r,t)?(r[t]=n,!0):s!==Z&&J(s,t)?(s[t]=n,!0):J(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:i}},o){let l;return!!n[o]||e!==Z&&J(e,o)||ls(t,o)||(l=i[0])&&J(l,o)||J(s,o)||J(Ut,o)||J(r.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:J(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function jf(){return vc().slots}function vc(){const e=zn();return e.setupContext||(e.setupContext=Co(e))}function Cr(e){return K(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Rs=!0;function bc(e){const t=er(e),n=e.proxy,s=e.ctx;Rs=!1,t.beforeCreate&&Ar(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:f,created:a,beforeMount:h,mounted:g,beforeUpdate:b,updated:S,activated:_,deactivated:k,beforeDestroy:N,beforeUnmount:j,destroyed:p,unmounted:m,render:M,renderTracked:F,renderTriggered:H,errorCaptured:V,serverPrefetch:R,expose:v,inheritAttrs:I,components:x,directives:W,filters:se}=t;if(f&&_c(f,s,null),o)for(const Y in o){const $=o[Y];q($)&&(s[Y]=$.bind(n))}if(r){const Y=r.call(n,n);ne(Y)&&(e.data=kn(Y))}if(Rs=!0,i)for(const Y in i){const $=i[Y],he=q($)?$.bind(n,n):q($.get)?$.get.bind(n,n):Be,on=!q($)&&q($.set)?$.set.bind(n):Be,lt=ie({get:he,set:on});Object.defineProperty(s,Y,{enumerable:!0,configurable:!0,get:()=>lt.value,set:$e=>lt.value=$e})}if(l)for(const Y in l)to(l[Y],s,n,Y);if(c){const Y=q(c)?c.call(n):c;Reflect.ownKeys(Y).forEach($=>{Cc($,Y[$])})}a&&Ar(a,e,"c");function U(Y,$){K($)?$.forEach(he=>Y(he.bind(n))):$&&Y($.bind(n))}if(U(fc,h),U(Lt,g),U(uc,b),U(dc,S),U(lc,_),U(cc,k),U(mc,V),U(gc,F),U(pc,H),U(zi,j),U(Gn,m),U(hc,R),K(v))if(v.length){const Y=e.exposed||(e.exposed={});v.forEach($=>{Object.defineProperty(Y,$,{get:()=>n[$],set:he=>n[$]=he})})}else e.exposed||(e.exposed={});M&&e.render===Be&&(e.render=M),I!=null&&(e.inheritAttrs=I),x&&(e.components=x),W&&(e.directives=W),R&&Zs(e)}function _c(e,t,n=Be){K(e)&&(e=Os(e));for(const s in e){const r=e[s];let i;ne(r)?"default"in r?i=Mt(r.from||s,r.default,!0):i=Mt(r.from||s):i=Mt(r),ae(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function Ar(e,t,n){De(K(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function to(e,t,n,s){let r=s.includes(".")?mo(n,s):()=>n[s];if(re(e)){const i=t[e];q(i)&&Fe(r,i)}else if(q(e))Fe(r,e.bind(n));else if(ne(e))if(K(e))e.forEach(i=>to(i,t,n,s));else{const i=q(e.handler)?e.handler.bind(n):t[e.handler];q(i)&&Fe(r,i,e)}}function er(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(f=>Fn(c,f,o,!0)),Fn(c,t,o)),ne(t)&&i.set(t,c),c}function Fn(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Fn(e,i,n,!0),r&&r.forEach(o=>Fn(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=wc[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const wc={data:Rr,props:Or,emits:Or,methods:Ht,computed:Ht,beforeCreate:be,created:be,beforeMount:be,mounted:be,beforeUpdate:be,updated:be,beforeDestroy:be,beforeUnmount:be,destroyed:be,unmounted:be,activated:be,deactivated:be,errorCaptured:be,serverPrefetch:be,components:Ht,directives:Ht,watch:Ec,provide:Rr,inject:Sc};function Rr(e,t){return t?e?function(){return fe(q(e)?e.call(this,this):e,q(t)?t.call(this,this):t)}:t:e}function Sc(e,t){return Ht(Os(e),Os(t))}function Os(e){if(K(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function be(e,t){return e?[...new Set([].concat(e,t))]:t}function Ht(e,t){return e?fe(Object.create(null),e,t):t}function Or(e,t){return e?K(e)&&K(t)?[...new Set([...e,...t])]:fe(Object.create(null),Cr(e),Cr(t??{})):t}function Ec(e,t){if(!e)return t;if(!t)return e;const n=fe(Object.create(null),e);for(const s in t)n[s]=be(e[s],t[s]);return n}function no(){return{app:null,config:{isNativeTag:zo,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let xc=0;function Tc(e,t){return function(s,r=null){q(s)||(s=fe({},s)),r!=null&&!ne(r)&&(r=null);const i=no(),o=new WeakSet,l=[];let c=!1;const f=i.app={_uid:xc++,_component:s,_props:r,_container:null,_context:i,_instance:null,version:sa,get config(){return i.config},set config(a){},use(a,...h){return o.has(a)||(a&&q(a.install)?(o.add(a),a.install(f,...h)):q(a)&&(o.add(a),a(f,...h))),f},mixin(a){return i.mixins.includes(a)||i.mixins.push(a),f},component(a,h){return h?(i.components[a]=h,f):i.components[a]},directive(a,h){return h?(i.directives[a]=h,f):i.directives[a]},mount(a,h,g){if(!c){const b=f._ceVNode||le(s,r);return b.appContext=i,g===!0?g="svg":g===!1&&(g=void 0),h&&t?t(b,a):e(b,a,g),c=!0,f._container=a,a.__vue_app__=f,Jn(b.component)}},onUnmount(a){l.push(a)},unmount(){c&&(De(l,f._instance,16),e(null,f._container),delete f._container.__vue_app__)},provide(a,h){return i.provides[a]=h,f},runWithContext(a){const h=Ot;Ot=f;try{return a()}finally{Ot=h}}};return f}}let Ot=null;function Cc(e,t){if(ue){let n=ue.provides;const s=ue.parent&&ue.parent.provides;s===n&&(n=ue.provides=Object.create(s)),n[e]=t}}function Mt(e,t,n=!1){const s=ue||de;if(s||Ot){const r=Ot?Ot._context.provides:s?s.parent==null?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(r&&e in r)return r[e];if(arguments.length>1)return n&&q(t)?t.call(s&&s.proxy):t}}const so={},ro=()=>Object.create(so),io=e=>Object.getPrototypeOf(e)===so;function Ac(e,t,n,s=!1){const r={},i=ro();e.propsDefaults=Object.create(null),oo(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:Il(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function Rc(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=z(r),[c]=e.propsOptions;let f=!1;if((s||o>0)&&!(o&16)){if(o&8){const a=e.vnode.dynamicProps;for(let h=0;h<a.length;h++){let g=a[h];if(Xn(e.emitsOptions,g))continue;const b=t[g];if(c)if(J(i,g))b!==i[g]&&(i[g]=b,f=!0);else{const S=Le(g);r[S]=Ms(c,l,S,b,e,!1)}else b!==i[g]&&(i[g]=b,f=!0)}}}else{oo(e,t,r,i)&&(f=!0);let a;for(const h in l)(!t||!J(t,h)&&((a=rt(h))===h||!J(t,a)))&&(c?n&&(n[h]!==void 0||n[a]!==void 0)&&(r[h]=Ms(c,l,h,void 0,e,!0)):delete r[h]);if(i!==l)for(const h in i)(!t||!J(t,h))&&(delete i[h],f=!0)}f&&Ge(e.attrs,"set","")}function oo(e,t,n,s){const[r,i]=e.propsOptions;let o=!1,l;if(t)for(let c in t){if(At(c))continue;const f=t[c];let a;r&&J(r,a=Le(c))?!i||!i.includes(a)?n[a]=f:(l||(l={}))[a]=f:Xn(e.emitsOptions,c)||(!(c in s)||f!==s[c])&&(s[c]=f,o=!0)}if(i){const c=z(n),f=l||Z;for(let a=0;a<i.length;a++){const h=i[a];n[h]=Ms(r,c,h,f[h],e,!J(f,h))}}return o}function Ms(e,t,n,s,r,i){const o=e[n];if(o!=null){const l=J(o,"default");if(l&&s===void 0){const c=o.default;if(o.type!==Function&&!o.skipFactory&&q(c)){const{propsDefaults:f}=r;if(n in f)s=f[n];else{const a=sn(r);s=f[n]=c.call(null,t),a()}}else s=c;r.ce&&r.ce._setProp(n,s)}o[0]&&(i&&!l?s=!1:o[1]&&(s===""||s===rt(n))&&(s=!0))}return s}const Oc=new WeakMap;function lo(e,t,n=!1){const s=n?Oc:t.propsCache,r=s.get(e);if(r)return r;const i=e.props,o={},l=[];let c=!1;if(!q(e)){const a=h=>{c=!0;const[g,b]=lo(h,t,!0);fe(o,g),b&&l.push(...b)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!i&&!c)return ne(e)&&s.set(e,Tt),Tt;if(K(i))for(let a=0;a<i.length;a++){const h=Le(i[a]);Mr(h)&&(o[h]=Z)}else if(i)for(const a in i){const h=Le(a);if(Mr(h)){const g=i[a],b=o[h]=K(g)||q(g)?{type:g}:fe({},g),S=b.type;let _=!1,k=!0;if(K(S))for(let N=0;N<S.length;++N){const j=S[N],p=q(j)&&j.name;if(p==="Boolean"){_=!0;break}else p==="String"&&(k=!1)}else _=q(S)&&S.name==="Boolean";b[0]=_,b[1]=k,(_||J(b,"default"))&&l.push(h)}}const f=[o,l];return ne(e)&&s.set(e,f),f}function Mr(e){return e[0]!=="$"&&!At(e)}const co=e=>e[0]==="_"||e==="$stable",tr=e=>K(e)?e.map(Me):[Me(e)],Mc=(e,t,n)=>{if(t._n)return t;const s=Xl((...r)=>tr(t(...r)),n);return s._c=!1,s},ao=(e,t,n)=>{const s=e._ctx;for(const r in e){if(co(r))continue;const i=e[r];if(q(i))t[r]=Mc(r,i,s);else if(i!=null){const o=tr(i);t[r]=()=>o}}},fo=(e,t)=>{const n=tr(t);e.slots.default=()=>n},uo=(e,t,n)=>{for(const s in t)(n||s!=="_")&&(e[s]=t[s])},Pc=(e,t,n)=>{const s=e.slots=ro();if(e.vnode.shapeFlag&32){const r=t._;r?(uo(s,t,n),n&&pi(s,"_",r,!0)):ao(t,s)}else t&&fo(e,t)},Lc=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=Z;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:uo(r,t,n):(i=!t.$stable,ao(t,r)),o=t}else t&&(fo(e,t),o={default:1});if(i)for(const l in r)!co(l)&&o[l]==null&&delete r[l]},Ee=bo;function Ic(e){return ho(e)}function Nc(e){return ho(e,rc)}function ho(e,t){const n=gi();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:f,setElementText:a,parentNode:h,nextSibling:g,setScopeId:b=Be,insertStaticContent:S}=e,_=(u,d,y,T=null,w=null,E=null,P=void 0,O=null,A=!!d.dynamicChildren)=>{if(u===d)return;u&&!dt(u,d)&&(T=ln(u),$e(u,w,E,!0),u=null),d.patchFlag===-2&&(A=!1,d.dynamicChildren=null);const{type:C,ref:B,shapeFlag:L}=d;switch(C){case mt:k(u,d,y,T);break;case ye:N(u,d,y,T);break;case Bt:u==null&&j(d,y,T,P);break;case Se:x(u,d,y,T,w,E,P,O,A);break;default:L&1?M(u,d,y,T,w,E,P,O,A):L&6?W(u,d,y,T,w,E,P,O,A):(L&64||L&128)&&C.process(u,d,y,T,w,E,P,O,A,bt)}B!=null&&w&&Nn(B,u&&u.ref,E,d||u,!d)},k=(u,d,y,T)=>{if(u==null)s(d.el=l(d.children),y,T);else{const w=d.el=u.el;d.children!==u.children&&f(w,d.children)}},N=(u,d,y,T)=>{u==null?s(d.el=c(d.children||""),y,T):d.el=u.el},j=(u,d,y,T)=>{[u.el,u.anchor]=S(u.children,d,y,T,u.el,u.anchor)},p=({el:u,anchor:d},y,T)=>{let w;for(;u&&u!==d;)w=g(u),s(u,y,T),u=w;s(d,y,T)},m=({el:u,anchor:d})=>{let y;for(;u&&u!==d;)y=g(u),r(u),u=y;r(d)},M=(u,d,y,T,w,E,P,O,A)=>{d.type==="svg"?P="svg":d.type==="math"&&(P="mathml"),u==null?F(d,y,T,w,E,P,O,A):R(u,d,w,E,P,O,A)},F=(u,d,y,T,w,E,P,O)=>{let A,C;const{props:B,shapeFlag:L,transition:D,dirs:G}=u;if(A=u.el=o(u.type,E,B&&B.is,B),L&8?a(A,u.children):L&16&&V(u.children,A,null,T,w,cs(u,E),P,O),G&&Ue(u,null,T,"created"),H(A,u,u.scopeId,P,T),B){for(const ee in B)ee!=="value"&&!At(ee)&&i(A,ee,null,B[ee],E,T);"value"in B&&i(A,"value",null,B.value,E),(C=B.onVnodeBeforeMount)&&Oe(C,T,u)}G&&Ue(u,null,T,"beforeMount");const X=po(w,D);X&&D.beforeEnter(A),s(A,d,y),((C=B&&B.onVnodeMounted)||X||G)&&Ee(()=>{C&&Oe(C,T,u),X&&D.enter(A),G&&Ue(u,null,T,"mounted")},w)},H=(u,d,y,T,w)=>{if(y&&b(u,y),T)for(let E=0;E<T.length;E++)b(u,T[E]);if(w){let E=w.subTree;if(d===E||vo(E.type)&&(E.ssContent===d||E.ssFallback===d)){const P=w.vnode;H(u,P,P.scopeId,P.slotScopeIds,w.parent)}}},V=(u,d,y,T,w,E,P,O,A=0)=>{for(let C=A;C<u.length;C++){const B=u[C]=O?et(u[C]):Me(u[C]);_(null,B,d,y,T,w,E,P,O)}},R=(u,d,y,T,w,E,P)=>{const O=d.el=u.el;let{patchFlag:A,dynamicChildren:C,dirs:B}=d;A|=u.patchFlag&16;const L=u.props||Z,D=d.props||Z;let G;if(y&&ct(y,!1),(G=D.onVnodeBeforeUpdate)&&Oe(G,y,d,u),B&&Ue(d,u,y,"beforeUpdate"),y&&ct(y,!0),(L.innerHTML&&D.innerHTML==null||L.textContent&&D.textContent==null)&&a(O,""),C?v(u.dynamicChildren,C,O,y,T,cs(d,w),E):P||$(u,d,O,null,y,T,cs(d,w),E,!1),A>0){if(A&16)I(O,L,D,y,w);else if(A&2&&L.class!==D.class&&i(O,"class",null,D.class,w),A&4&&i(O,"style",L.style,D.style,w),A&8){const X=d.dynamicProps;for(let ee=0;ee<X.length;ee++){const Q=X[ee],xe=L[Q],pe=D[Q];(pe!==xe||Q==="value")&&i(O,Q,xe,pe,w,y)}}A&1&&u.children!==d.children&&a(O,d.children)}else!P&&C==null&&I(O,L,D,y,w);((G=D.onVnodeUpdated)||B)&&Ee(()=>{G&&Oe(G,y,d,u),B&&Ue(d,u,y,"updated")},T)},v=(u,d,y,T,w,E,P)=>{for(let O=0;O<d.length;O++){const A=u[O],C=d[O],B=A.el&&(A.type===Se||!dt(A,C)||A.shapeFlag&70)?h(A.el):y;_(A,C,B,null,T,w,E,P,!0)}},I=(u,d,y,T,w)=>{if(d!==y){if(d!==Z)for(const E in d)!At(E)&&!(E in y)&&i(u,E,d[E],null,w,T);for(const E in y){if(At(E))continue;const P=y[E],O=d[E];P!==O&&E!=="value"&&i(u,E,O,P,w,T)}"value"in y&&i(u,"value",d.value,y.value,w)}},x=(u,d,y,T,w,E,P,O,A)=>{const C=d.el=u?u.el:l(""),B=d.anchor=u?u.anchor:l("");let{patchFlag:L,dynamicChildren:D,slotScopeIds:G}=d;G&&(O=O?O.concat(G):G),u==null?(s(C,y,T),s(B,y,T),V(d.children||[],y,B,w,E,P,O,A)):L>0&&L&64&&D&&u.dynamicChildren?(v(u.dynamicChildren,D,y,w,E,P,O),(d.key!=null||w&&d===w.subTree)&&nr(u,d,!0)):$(u,d,y,B,w,E,P,O,A)},W=(u,d,y,T,w,E,P,O,A)=>{d.slotScopeIds=O,u==null?d.shapeFlag&512?w.ctx.activate(d,y,T,P,A):se(d,y,T,w,E,P,A):ce(u,d,A)},se=(u,d,y,T,w,E,P)=>{const O=u.component=Jc(u,T,w);if(nn(u)&&(O.ctx.renderer=bt),Qc(O,!1,P),O.asyncDep){if(w&&w.registerDep(O,U,P),!u.el){const A=O.subTree=le(ye);N(null,A,d,y)}}else U(O,u,d,y,w,E,P)},ce=(u,d,y)=>{const T=d.component=u.component;if(kc(u,d,y))if(T.asyncDep&&!T.asyncResolved){Y(T,d,y);return}else T.next=d,T.update();else d.el=u.el,T.vnode=d},U=(u,d,y,T,w,E,P)=>{const O=()=>{if(u.isMounted){let{next:L,bu:D,u:G,parent:X,vnode:ee}=u;{const Te=go(u);if(Te){L&&(L.el=ee.el,Y(u,L,P)),Te.asyncDep.then(()=>{u.isUnmounted||O()});return}}let Q=L,xe;ct(u,!1),L?(L.el=ee.el,Y(u,L,P)):L=ee,D&&En(D),(xe=L.props&&L.props.onVnodeBeforeUpdate)&&Oe(xe,X,L,ee),ct(u,!0);const pe=as(u),Ie=u.subTree;u.subTree=pe,_(Ie,pe,h(Ie.el),ln(Ie),u,w,E),L.el=pe.el,Q===null&&Wc(u,pe.el),G&&Ee(G,w),(xe=L.props&&L.props.onVnodeUpdated)&&Ee(()=>Oe(xe,X,L,ee),w)}else{let L;const{el:D,props:G}=d,{bm:X,m:ee,parent:Q,root:xe,type:pe}=u,Ie=gt(d);if(ct(u,!1),X&&En(X),!Ie&&(L=G&&G.onVnodeBeforeMount)&&Oe(L,Q,d),ct(u,!0),D&&es){const Te=()=>{u.subTree=as(u),es(D,u.subTree,u,w,null)};Ie&&pe.__asyncHydrate?pe.__asyncHydrate(D,u,Te):Te()}else{xe.ce&&xe.ce._injectChildStyle(pe);const Te=u.subTree=as(u);_(null,Te,y,T,u,w,E),d.el=Te.el}if(ee&&Ee(ee,w),!Ie&&(L=G&&G.onVnodeMounted)){const Te=d;Ee(()=>Oe(L,Q,Te),w)}(d.shapeFlag&256||Q&>(Q.vnode)&&Q.vnode.shapeFlag&256)&&u.a&&Ee(u.a,w),u.isMounted=!0,d=y=T=null}};u.scope.on();const A=u.effect=new _i(O);u.scope.off();const C=u.update=A.run.bind(A),B=u.job=A.runIfDirty.bind(A);B.i=u,B.id=u.uid,A.scheduler=()=>Js(B),ct(u,!0),C()},Y=(u,d,y)=>{d.component=u;const T=u.vnode.props;u.vnode=d,u.next=null,Rc(u,d.props,T,y),Lc(u,d.children,y),it(),br(u),ot()},$=(u,d,y,T,w,E,P,O,A=!1)=>{const C=u&&u.children,B=u?u.shapeFlag:0,L=d.children,{patchFlag:D,shapeFlag:G}=d;if(D>0){if(D&128){on(C,L,y,T,w,E,P,O,A);return}else if(D&256){he(C,L,y,T,w,E,P,O,A);return}}G&8?(B&16&&It(C,w,E),L!==C&&a(y,L)):B&16?G&16?on(C,L,y,T,w,E,P,O,A):It(C,w,E,!0):(B&8&&a(y,""),G&16&&V(L,y,T,w,E,P,O,A))},he=(u,d,y,T,w,E,P,O,A)=>{u=u||Tt,d=d||Tt;const C=u.length,B=d.length,L=Math.min(C,B);let D;for(D=0;D<L;D++){const G=d[D]=A?et(d[D]):Me(d[D]);_(u[D],G,y,null,w,E,P,O,A)}C>B?It(u,w,E,!0,!1,L):V(d,y,T,w,E,P,O,A,L)},on=(u,d,y,T,w,E,P,O,A)=>{let C=0;const B=d.length;let L=u.length-1,D=B-1;for(;C<=L&&C<=D;){const G=u[C],X=d[C]=A?et(d[C]):Me(d[C]);if(dt(G,X))_(G,X,y,null,w,E,P,O,A);else break;C++}for(;C<=L&&C<=D;){const G=u[L],X=d[D]=A?et(d[D]):Me(d[D]);if(dt(G,X))_(G,X,y,null,w,E,P,O,A);else break;L--,D--}if(C>L){if(C<=D){const G=D+1,X=G<B?d[G].el:T;for(;C<=D;)_(null,d[C]=A?et(d[C]):Me(d[C]),y,X,w,E,P,O,A),C++}}else if(C>D)for(;C<=L;)$e(u[C],w,E,!0),C++;else{const G=C,X=C,ee=new Map;for(C=X;C<=D;C++){const Ce=d[C]=A?et(d[C]):Me(d[C]);Ce.key!=null&&ee.set(Ce.key,C)}let Q,xe=0;const pe=D-X+1;let Ie=!1,Te=0;const Nt=new Array(pe);for(C=0;C<pe;C++)Nt[C]=0;for(C=G;C<=L;C++){const Ce=u[C];if(xe>=pe){$e(Ce,w,E,!0);continue}let je;if(Ce.key!=null)je=ee.get(Ce.key);else for(Q=X;Q<=D;Q++)if(Nt[Q-X]===0&&dt(Ce,d[Q])){je=Q;break}je===void 0?$e(Ce,w,E,!0):(Nt[je-X]=C+1,je>=Te?Te=je:Ie=!0,_(Ce,d[je],y,null,w,E,P,O,A),xe++)}const fr=Ie?Fc(Nt):Tt;for(Q=fr.length-1,C=pe-1;C>=0;C--){const Ce=X+C,je=d[Ce],ur=Ce+1<B?d[Ce+1].el:T;Nt[C]===0?_(null,je,y,ur,w,E,P,O,A):Ie&&(Q<0||C!==fr[Q]?lt(je,y,ur,2):Q--)}}},lt=(u,d,y,T,w=null)=>{const{el:E,type:P,transition:O,children:A,shapeFlag:C}=u;if(C&6){lt(u.component.subTree,d,y,T);return}if(C&128){u.suspense.move(d,y,T);return}if(C&64){P.move(u,d,y,bt);return}if(P===Se){s(E,d,y);for(let L=0;L<A.length;L++)lt(A[L],d,y,T);s(u.anchor,d,y);return}if(P===Bt){p(u,d,y);return}if(T!==2&&C&1&&O)if(T===0)O.beforeEnter(E),s(E,d,y),Ee(()=>O.enter(E),w);else{const{leave:L,delayLeave:D,afterLeave:G}=O,X=()=>s(E,d,y),ee=()=>{L(E,()=>{X(),G&&G()})};D?D(E,X,ee):ee()}else s(E,d,y)},$e=(u,d,y,T=!1,w=!1)=>{const{type:E,props:P,ref:O,children:A,dynamicChildren:C,shapeFlag:B,patchFlag:L,dirs:D,cacheIndex:G}=u;if(L===-2&&(w=!1),O!=null&&Nn(O,null,y,u,!0),G!=null&&(d.renderCache[G]=void 0),B&256){d.ctx.deactivate(u);return}const X=B&1&&D,ee=!gt(u);let Q;if(ee&&(Q=P&&P.onVnodeBeforeUnmount)&&Oe(Q,d,u),B&6)Xo(u.component,y,T);else{if(B&128){u.suspense.unmount(y,T);return}X&&Ue(u,null,d,"beforeUnmount"),B&64?u.type.remove(u,d,y,bt,T):C&&!C.hasOnce&&(E!==Se||L>0&&L&64)?It(C,d,y,!1,!0):(E===Se&&L&384||!w&&B&16)&&It(A,d,y),T&&cr(u)}(ee&&(Q=P&&P.onVnodeUnmounted)||X)&&Ee(()=>{Q&&Oe(Q,d,u),X&&Ue(u,null,d,"unmounted")},y)},cr=u=>{const{type:d,el:y,anchor:T,transition:w}=u;if(d===Se){Yo(y,T);return}if(d===Bt){m(u);return}const E=()=>{r(y),w&&!w.persisted&&w.afterLeave&&w.afterLeave()};if(u.shapeFlag&1&&w&&!w.persisted){const{leave:P,delayLeave:O}=w,A=()=>P(y,E);O?O(u.el,E,A):A()}else E()},Yo=(u,d)=>{let y;for(;u!==d;)y=g(u),r(u),u=y;r(d)},Xo=(u,d,y)=>{const{bum:T,scope:w,job:E,subTree:P,um:O,m:A,a:C}=u;Pr(A),Pr(C),T&&En(T),w.stop(),E&&(E.flags|=8,$e(P,u,d,y)),O&&Ee(O,d),Ee(()=>{u.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&u.asyncDep&&!u.asyncResolved&&u.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},It=(u,d,y,T=!1,w=!1,E=0)=>{for(let P=E;P<u.length;P++)$e(u[P],d,y,T,w)},ln=u=>{if(u.shapeFlag&6)return ln(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const d=g(u.anchor||u.el),y=d&&d[Ui];return y?g(y):d};let Qn=!1;const ar=(u,d,y)=>{u==null?d._vnode&&$e(d._vnode,null,null,!0):_(d._vnode||null,u,d,null,null,null,y),d._vnode=u,Qn||(Qn=!0,br(),Ln(),Qn=!1)},bt={p:_,um:$e,m:lt,r:cr,mt:se,mc:V,pc:$,pbc:v,n:ln,o:e};let Zn,es;return t&&([Zn,es]=t(bt)),{render:ar,hydrate:Zn,createApp:Tc(ar,Zn)}}function cs({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function ct({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function po(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function nr(e,t,n=!1){const s=e.children,r=t.children;if(K(s)&&K(r))for(let i=0;i<s.length;i++){const o=s[i];let l=r[i];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=r[i]=et(r[i]),l.el=o.el),!n&&l.patchFlag!==-2&&nr(o,l)),l.type===mt&&(l.el=o.el)}}function Fc(e){const t=e.slice(),n=[0];let s,r,i,o,l;const c=e.length;for(s=0;s<c;s++){const f=e[s];if(f!==0){if(r=n[n.length-1],e[r]<f){t[s]=r,n.push(s);continue}for(i=0,o=n.length-1;i<o;)l=i+o>>1,e[n[l]]<f?i=l+1:o=l;f<e[n[i]]&&(i>0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function go(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:go(t)}function Pr(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}const Dc=Symbol.for("v-scx"),Hc=()=>Mt(Dc);function sr(e,t){return Yn(e,null,t)}function Vf(e,t){return Yn(e,null,{flush:"post"})}function Fe(e,t,n){return Yn(e,t,n)}function Yn(e,t,n=Z){const{immediate:s,deep:r,flush:i,once:o}=n,l=fe({},n);let c;if(rn)if(i==="sync"){const g=Hc();c=g.__watcherHandles||(g.__watcherHandles=[])}else if(!t||s)l.once=!0;else{const g=()=>{};return g.stop=Be,g.resume=Be,g.pause=Be,g}const f=ue;l.call=(g,b,S)=>De(g,f,b,S);let a=!1;i==="post"?l.scheduler=g=>{Ee(g,f&&f.suspense)}:i!=="sync"&&(a=!0,l.scheduler=(g,b)=>{b?g():Js(g)}),l.augmentJob=g=>{t&&(g.flags|=4),a&&(g.flags|=2,f&&(g.id=f.uid,g.i=f))};const h=Kl(e,t,l);return c&&c.push(h),h}function $c(e,t,n){const s=this.proxy,r=re(e)?e.includes(".")?mo(s,e):()=>s[e]:e.bind(s,s);let i;q(t)?i=t:(i=t.handler,n=t);const o=sn(this),l=Yn(r,i.bind(s),n);return o(),l}function mo(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r<n.length&&s;r++)s=s[n[r]];return s}}const jc=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Le(t)}Modifiers`]||e[`${rt(t)}Modifiers`];function Vc(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||Z;let r=n;const i=t.startsWith("update:"),o=i&&jc(s,t.slice(7));o&&(o.trim&&(r=n.map(a=>re(a)?a.trim():a)),o.number&&(r=n.map(Ss)));let l,c=s[l=Sn(t)]||s[l=Sn(Le(t))];!c&&i&&(c=s[l=Sn(rt(t))]),c&&De(c,e,6,r);const f=s[l+"Once"];if(f){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,De(f,e,6,r)}}function yo(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!q(e)){const c=f=>{const a=yo(f,t,!0);a&&(l=!0,fe(o,a))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?(ne(e)&&s.set(e,null),null):(K(i)?i.forEach(c=>o[c]=null):fe(o,i),ne(e)&&s.set(e,o),o)}function Xn(e,t){return!e||!Zt(t)?!1:(t=t.slice(2).replace(/Once$/,""),J(e,t[0].toLowerCase()+t.slice(1))||J(e,rt(t))||J(e,t))}function as(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:c,render:f,renderCache:a,props:h,data:g,setupState:b,ctx:S,inheritAttrs:_}=e,k=In(e);let N,j;try{if(n.shapeFlag&4){const m=r||s,M=m;N=Me(f.call(M,m,a,h,b,g,S)),j=l}else{const m=t;N=Me(m.length>1?m(h,{attrs:l,slots:o,emit:c}):m(h,null)),j=t.props?l:Uc(l)}}catch(m){kt.length=0,tn(m,e,1),N=le(ye)}let p=N;if(j&&_!==!1){const m=Object.keys(j),{shapeFlag:M}=p;m.length&&M&7&&(i&&m.some(Hs)&&(j=Bc(j,i)),p=nt(p,j,!1,!0))}return n.dirs&&(p=nt(p,null,!1,!0),p.dirs=p.dirs?p.dirs.concat(n.dirs):n.dirs),n.transition&&Yt(p,n.transition),N=p,In(k),N}const Uc=e=>{let t;for(const n in e)(n==="class"||n==="style"||Zt(n))&&((t||(t={}))[n]=e[n]);return t},Bc=(e,t)=>{const n={};for(const s in e)(!Hs(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function kc(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,f=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?Lr(s,o,f):!!o;if(c&8){const a=t.dynamicProps;for(let h=0;h<a.length;h++){const g=a[h];if(o[g]!==s[g]&&!Xn(f,g))return!0}}}else return(r||l)&&(!l||!l.$stable)?!0:s===o?!1:s?o?Lr(s,o,f):!0:!!o;return!1}function Lr(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let r=0;r<s.length;r++){const i=s[r];if(t[i]!==e[i]&&!Xn(n,i))return!0}return!1}function Wc({vnode:e,parent:t},n){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.el=e.el),s===e)(e=t.vnode).el=n,t=t.parent;else break}}const vo=e=>e.__isSuspense;function bo(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):Yl(e)}const Se=Symbol.for("v-fgt"),mt=Symbol.for("v-txt"),ye=Symbol.for("v-cmt"),Bt=Symbol.for("v-stc"),kt=[];let Ae=null;function Ps(e=!1){kt.push(Ae=e?null:[])}function Kc(){kt.pop(),Ae=kt[kt.length-1]||null}let Xt=1;function Ir(e){Xt+=e,e<0&&Ae&&(Ae.hasOnce=!0)}function _o(e){return e.dynamicChildren=Xt>0?Ae||Tt:null,Kc(),Xt>0&&Ae&&Ae.push(e),e}function Uf(e,t,n,s,r,i){return _o(So(e,t,n,s,r,i,!0))}function Ls(e,t,n,s,r){return _o(le(e,t,n,s,r,!0))}function zt(e){return e?e.__v_isVNode===!0:!1}function dt(e,t){return e.type===t.type&&e.key===t.key}const wo=({key:e})=>e??null,Cn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?re(e)||ae(e)||q(e)?{i:de,r:e,k:t,f:!!n}:e:null);function So(e,t=null,n=null,s=0,r=null,i=e===Se?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&wo(t),ref:t&&Cn(t),scopeId:Vi,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:de};return l?(rr(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=re(n)?8:16),Xt>0&&!o&&Ae&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Ae.push(c),c}const le=qc;function qc(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Qi)&&(e=ye),zt(e)){const l=nt(e,t,!0);return n&&rr(l,n),Xt>0&&!i&&Ae&&(l.shapeFlag&6?Ae[Ae.indexOf(e)]=l:Ae.push(l)),l.patchFlag=-2,l}if(na(e)&&(e=e.__vccOpts),t){t=Gc(t);let{class:l,style:c}=t;l&&!re(l)&&(t.class=Us(l)),ne(c)&&(Ys(c)&&!K(c)&&(c=fe({},c)),t.style=Vs(c))}const o=re(e)?1:vo(e)?128:Bi(e)?64:ne(e)?4:q(e)?2:0;return So(e,t,n,s,r,o,i,!0)}function Gc(e){return e?Ys(e)||io(e)?fe({},e):e:null}function nt(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:c}=e,f=t?Yc(r||{},t):r,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:f,key:f&&wo(f),ref:t&&t.ref?n&&i?K(i)?i.concat(Cn(t)):[i,Cn(t)]:Cn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Se?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&nt(e.ssContent),ssFallback:e.ssFallback&&nt(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Yt(a,c.clone(a)),a}function Eo(e=" ",t=0){return le(mt,null,e,t)}function Bf(e,t){const n=le(Bt,null,e);return n.staticCount=t,n}function kf(e="",t=!1){return t?(Ps(),Ls(ye,null,e)):le(ye,null,e)}function Me(e){return e==null||typeof e=="boolean"?le(ye):K(e)?le(Se,null,e.slice()):zt(e)?et(e):le(mt,null,String(e))}function et(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:nt(e)}function rr(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(K(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),rr(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!io(t)?t._ctx=de:r===3&&de&&(de.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else q(t)?(t={default:t,_ctx:de},n=32):(t=String(t),s&64?(n=16,t=[Eo(t)]):n=8);e.children=t,e.shapeFlag|=n}function Yc(...e){const t={};for(let n=0;n<e.length;n++){const s=e[n];for(const r in s)if(r==="class")t.class!==s.class&&(t.class=Us([t.class,s.class]));else if(r==="style")t.style=Vs([t.style,s.style]);else if(Zt(r)){const i=t[r],o=s[r];o&&i!==o&&!(K(i)&&i.includes(o))&&(t[r]=i?[].concat(i,o):o)}else r!==""&&(t[r]=s[r])}return t}function Oe(e,t,n,s=null){De(e,t,7,[n,s])}const Xc=no();let zc=0;function Jc(e,t,n){const s=e.type,r=(t?t.appContext:e.appContext)||Xc,i={uid:zc++,vnode:e,type:s,parent:t,appContext:r,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new al(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(r.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:lo(s,r),emitsOptions:yo(s,r),emit:null,emitted:null,propsDefaults:Z,inheritAttrs:s.inheritAttrs,ctx:Z,data:Z,props:Z,attrs:Z,slots:Z,refs:Z,setupState:Z,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=Vc.bind(null,i),e.ce&&e.ce(i),i}let ue=null;const zn=()=>ue||de;let Dn,Is;{const e=gi(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Dn=t("__VUE_INSTANCE_SETTERS__",n=>ue=n),Is=t("__VUE_SSR_SETTERS__",n=>rn=n)}const sn=e=>{const t=ue;return Dn(e),e.scope.on(),()=>{e.scope.off(),Dn(t)}},Nr=()=>{ue&&ue.scope.off(),Dn(null)};function xo(e){return e.vnode.shapeFlag&4}let rn=!1;function Qc(e,t=!1,n=!1){t&&Is(t);const{props:s,children:r}=e.vnode,i=xo(e);Ac(e,s,i,t),Pc(e,r,n);const o=i?Zc(e,t):void 0;return t&&Is(!1),o}function Zc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,yc);const{setup:s}=n;if(s){const r=e.setupContext=s.length>1?Co(e):null,i=sn(e);it();const o=en(s,e,0,[e.props,r]);if(ot(),i(),ui(o)){if(gt(e)||Zs(e),o.then(Nr,Nr),t)return o.then(l=>{Fr(e,l,t)}).catch(l=>{tn(l,e,0)});e.asyncDep=o}else Fr(e,o,t)}else To(e,t)}function Fr(e,t,n){q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ne(t)&&(e.setupState=Di(t)),To(e,n)}let Dr;function To(e,t,n){const s=e.type;if(!e.render){if(!t&&Dr&&!s.render){const r=s.template||er(e).template;if(r){const{isCustomElement:i,compilerOptions:o}=e.appContext.config,{delimiters:l,compilerOptions:c}=s,f=fe(fe({isCustomElement:i,delimiters:l},o),c);s.render=Dr(r,f)}}e.render=s.render||Be}{const r=sn(e);it();try{bc(e)}finally{ot(),r()}}}const ea={get(e,t){return ve(e,"get",""),e[t]}};function Co(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,ea),slots:e.slots,emit:e.emit,expose:t}}function Jn(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Di(xn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Ut)return Ut[n](e)},has(t,n){return n in t||n in Ut}})):e.proxy}function ta(e,t=!0){return q(e)?e.displayName||e.name:e.name||t&&e.__name}function na(e){return q(e)&&"__vccOpts"in e}const ie=(e,t)=>kl(e,t,rn);function Ns(e,t,n){const s=arguments.length;return s===2?ne(t)&&!K(t)?zt(t)?le(e,null,[t]):le(e,t):le(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&zt(n)&&(n=[n]),le(e,t,n))}const sa="3.5.11";/** +* @vue/runtime-dom v3.5.11 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Fs;const Hr=typeof window<"u"&&window.trustedTypes;if(Hr)try{Fs=Hr.createPolicy("vue",{createHTML:e=>e})}catch{}const Ao=Fs?e=>Fs.createHTML(e):e=>e,ra="http://www.w3.org/2000/svg",ia="http://www.w3.org/1998/Math/MathML",Ke=typeof document<"u"?document:null,$r=Ke&&Ke.createElement("template"),oa={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?Ke.createElementNS(ra,e):t==="mathml"?Ke.createElementNS(ia,e):n?Ke.createElement(e,{is:n}):Ke.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Ke.createTextNode(e),createComment:e=>Ke.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ke.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{$r.innerHTML=Ao(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const l=$r.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},ze="transition",Dt="animation",Jt=Symbol("_vtc"),Ro={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},la=fe({},Wi,Ro),ca=e=>(e.displayName="Transition",e.props=la,e),Wf=ca((e,{slots:t})=>Ns(tc,aa(e),t)),at=(e,t=[])=>{K(e)?e.forEach(n=>n(...t)):e&&e(...t)},jr=e=>e?K(e)?e.some(t=>t.length>1):e.length>1:!1;function aa(e){const t={};for(const x in e)x in Ro||(t[x]=e[x]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:f=o,appearToClass:a=l,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:g=`${n}-leave-active`,leaveToClass:b=`${n}-leave-to`}=e,S=fa(r),_=S&&S[0],k=S&&S[1],{onBeforeEnter:N,onEnter:j,onEnterCancelled:p,onLeave:m,onLeaveCancelled:M,onBeforeAppear:F=N,onAppear:H=j,onAppearCancelled:V=p}=t,R=(x,W,se)=>{ft(x,W?a:l),ft(x,W?f:o),se&&se()},v=(x,W)=>{x._isLeaving=!1,ft(x,h),ft(x,b),ft(x,g),W&&W()},I=x=>(W,se)=>{const ce=x?H:j,U=()=>R(W,x,se);at(ce,[W,U]),Vr(()=>{ft(W,x?c:i),Je(W,x?a:l),jr(ce)||Ur(W,s,_,U)})};return fe(t,{onBeforeEnter(x){at(N,[x]),Je(x,i),Je(x,o)},onBeforeAppear(x){at(F,[x]),Je(x,c),Je(x,f)},onEnter:I(!1),onAppear:I(!0),onLeave(x,W){x._isLeaving=!0;const se=()=>v(x,W);Je(x,h),Je(x,g),ha(),Vr(()=>{x._isLeaving&&(ft(x,h),Je(x,b),jr(m)||Ur(x,s,k,se))}),at(m,[x,se])},onEnterCancelled(x){R(x,!1),at(p,[x])},onAppearCancelled(x){R(x,!0),at(V,[x])},onLeaveCancelled(x){v(x),at(M,[x])}})}function fa(e){if(e==null)return null;if(ne(e))return[fs(e.enter),fs(e.leave)];{const t=fs(e);return[t,t]}}function fs(e){return tl(e)}function Je(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Jt]||(e[Jt]=new Set)).add(t)}function ft(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[Jt];n&&(n.delete(t),n.size||(e[Jt]=void 0))}function Vr(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let ua=0;function Ur(e,t,n,s){const r=e._endId=++ua,i=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(i,n);const{type:o,timeout:l,propCount:c}=da(e,t);if(!o)return s();const f=o+"end";let a=0;const h=()=>{e.removeEventListener(f,g),i()},g=b=>{b.target===e&&++a>=c&&h()};setTimeout(()=>{a<c&&h()},l+1),e.addEventListener(f,g)}function da(e,t){const n=window.getComputedStyle(e),s=S=>(n[S]||"").split(", "),r=s(`${ze}Delay`),i=s(`${ze}Duration`),o=Br(r,i),l=s(`${Dt}Delay`),c=s(`${Dt}Duration`),f=Br(l,c);let a=null,h=0,g=0;t===ze?o>0&&(a=ze,h=o,g=i.length):t===Dt?f>0&&(a=Dt,h=f,g=c.length):(h=Math.max(o,f),a=h>0?o>f?ze:Dt:null,g=a?a===ze?i.length:c.length:0);const b=a===ze&&/\b(transform|all)(,|$)/.test(s(`${ze}Property`).toString());return{type:a,timeout:h,propCount:g,hasTransform:b}}function Br(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,s)=>kr(n)+kr(e[s])))}function kr(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function ha(){return document.body.offsetHeight}function pa(e,t,n){const s=e[Jt];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Wr=Symbol("_vod"),ga=Symbol("_vsh"),ma=Symbol(""),ya=/(^|;)\s*display\s*:/;function va(e,t,n){const s=e.style,r=re(n);let i=!1;if(n&&!r){if(t)if(re(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&An(s,l,"")}else for(const o in t)n[o]==null&&An(s,o,"");for(const o in n)o==="display"&&(i=!0),An(s,o,n[o])}else if(r){if(t!==n){const o=s[ma];o&&(n+=";"+o),s.cssText=n,i=ya.test(n)}}else t&&e.removeAttribute("style");Wr in e&&(e[Wr]=i?s.display:"",e[ga]&&(s.display="none"))}const Kr=/\s*!important$/;function An(e,t,n){if(K(n))n.forEach(s=>An(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=ba(e,t);Kr.test(n)?e.setProperty(rt(s),n.replace(Kr,""),"important"):e[s]=n}}const qr=["Webkit","Moz","ms"],us={};function ba(e,t){const n=us[t];if(n)return n;let s=Le(t);if(s!=="filter"&&s in e)return us[t]=s;s=jn(s);for(let r=0;r<qr.length;r++){const i=qr[r]+s;if(i in e)return us[t]=i}return t}const Gr="http://www.w3.org/1999/xlink";function Yr(e,t,n,s,r,i=ll(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Gr,t.slice(6,t.length)):e.setAttributeNS(Gr,t,n):n==null||i&&!mi(n)?e.removeAttribute(t):e.setAttribute(t,i?"":st(n)?String(n):n)}function Xr(e,t,n,s){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?Ao(n):n);return}const r=e.tagName;if(t==="value"&&r!=="PROGRESS"&&!r.includes("-")){const o=r==="OPTION"?e.getAttribute("value")||"":e.value,l=n==null?e.type==="checkbox"?"on":"":String(n);(o!==l||!("_value"in e))&&(e.value=l),n==null&&e.removeAttribute(t),e._value=n;return}let i=!1;if(n===""||n==null){const o=typeof e[t];o==="boolean"?n=mi(n):n==null&&o==="string"?(n="",i=!0):o==="number"&&(n=0,i=!0)}try{e[t]=n}catch{}i&&e.removeAttribute(t)}function Et(e,t,n,s){e.addEventListener(t,n,s)}function _a(e,t,n,s){e.removeEventListener(t,n,s)}const zr=Symbol("_vei");function wa(e,t,n,s,r=null){const i=e[zr]||(e[zr]={}),o=i[t];if(s&&o)o.value=s;else{const[l,c]=Sa(t);if(s){const f=i[t]=Ta(s,r);Et(e,l,f,c)}else o&&(_a(e,l,o,c),i[t]=void 0)}}const Jr=/(?:Once|Passive|Capture)$/;function Sa(e){let t;if(Jr.test(e)){t={};let s;for(;s=e.match(Jr);)e=e.slice(0,e.length-s[0].length),t[s[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):rt(e.slice(2)),t]}let ds=0;const Ea=Promise.resolve(),xa=()=>ds||(Ea.then(()=>ds=0),ds=Date.now());function Ta(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;De(Ca(s,n.value),t,5,[s])};return n.value=e,n.attached=xa(),n}function Ca(e,t){if(K(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Qr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Aa=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?pa(e,s,o):t==="style"?va(e,n,s):Zt(t)?Hs(t)||wa(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Ra(e,t,s,o))?(Xr(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Yr(e,t,s,o,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!re(s))?Xr(e,Le(t),s):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Yr(e,t,s,o))};function Ra(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Qr(t)&&q(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Qr(t)&&re(n)?!1:t in e}const Zr=e=>{const t=e.props["onUpdate:modelValue"]||!1;return K(t)?n=>En(t,n):t};function Oa(e){e.target.composing=!0}function ei(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const hs=Symbol("_assign"),Kf={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[hs]=Zr(r);const i=s||r.props&&r.props.type==="number";Et(e,t?"change":"input",o=>{if(o.target.composing)return;let l=e.value;n&&(l=l.trim()),i&&(l=Ss(l)),e[hs](l)}),n&&Et(e,"change",()=>{e.value=e.value.trim()}),t||(Et(e,"compositionstart",Oa),Et(e,"compositionend",ei),Et(e,"change",ei))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[hs]=Zr(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?Ss(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c))}},Ma=["ctrl","shift","alt","meta"],Pa={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Ma.some(n=>e[`${n}Key`]&&!t.includes(n))},qf=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...i)=>{for(let o=0;o<t.length;o++){const l=Pa[t[o]];if(l&&l(r,t))return}return e(r,...i)})},La={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Gf=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const i=rt(r.key);if(t.some(o=>o===i||La[o]===i))return e(r)})},Oo=fe({patchProp:Aa},oa);let Wt,ti=!1;function Ia(){return Wt||(Wt=Ic(Oo))}function Na(){return Wt=ti?Wt:Nc(Oo),ti=!0,Wt}const Yf=(...e)=>{const t=Ia().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Po(s);if(!r)return;const i=t._component;!q(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,Mo(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t},Xf=(...e)=>{const t=Na().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Po(s);if(r)return n(r,!0,Mo(r))},t};function Mo(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Po(e){return re(e)?document.querySelector(e):e}const zf=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Fa=window.__VP_SITE_DATA__;function ir(e){return bi()?(fl(e),!0):!1}function ke(e){return typeof e=="function"?e():Fi(e)}const Lo=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Jf=e=>e!=null,Da=Object.prototype.toString,Ha=e=>Da.call(e)==="[object Object]",Qt=()=>{},ni=$a();function $a(){var e,t;return Lo&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window==null?void 0:window.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function ja(e,t){function n(...s){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,s),{fn:t,thisArg:this,args:s})).then(r).catch(i)})}return n}const Io=e=>e();function Va(e,t={}){let n,s,r=Qt;const i=l=>{clearTimeout(l),r(),r=Qt};return l=>{const c=ke(e),f=ke(t.maxWait);return n&&i(n),c<=0||f!==void 0&&f<=0?(s&&(i(s),s=null),Promise.resolve(l())):new Promise((a,h)=>{r=t.rejectOnCancel?h:a,f&&!s&&(s=setTimeout(()=>{n&&i(n),s=null,a(l())},f)),n=setTimeout(()=>{s&&i(s),s=null,a(l())},c)})}}function Ua(e=Io){const t=oe(!0);function n(){t.value=!1}function s(){t.value=!0}const r=(...i)=>{t.value&&e(...i)};return{isActive:Wn(t),pause:n,resume:s,eventFilter:r}}function Ba(e){return zn()}function No(...e){if(e.length!==1)return Vl(...e);const t=e[0];return typeof t=="function"?Wn(Hl(()=>({get:t,set:Qt}))):oe(t)}function Fo(e,t,n={}){const{eventFilter:s=Io,...r}=n;return Fe(e,ja(s,t),r)}function ka(e,t,n={}){const{eventFilter:s,...r}=n,{eventFilter:i,pause:o,resume:l,isActive:c}=Ua(s);return{stop:Fo(e,t,{...r,eventFilter:i}),pause:o,resume:l,isActive:c}}function or(e,t=!0,n){Ba()?Lt(e,n):t?e():Kn(e)}function Qf(e,t,n={}){const{debounce:s=0,maxWait:r=void 0,...i}=n;return Fo(e,t,{...i,eventFilter:Va(s,{maxWait:r})})}function Zf(e,t,n){let s;ae(n)?s={evaluating:n}:s={};const{lazy:r=!1,evaluating:i=void 0,shallow:o=!0,onError:l=Qt}=s,c=oe(!r),f=o?zs(t):oe(t);let a=0;return sr(async h=>{if(!c.value)return;a++;const g=a;let b=!1;i&&Promise.resolve().then(()=>{i.value=!0});try{const S=await e(_=>{h(()=>{i&&(i.value=!1),b||_()})});g===a&&(f.value=S)}catch(S){l(S)}finally{i&&g===a&&(i.value=!1),b=!0}}),r?ie(()=>(c.value=!0,f.value)):f}const He=Lo?window:void 0;function Do(e){var t;const n=ke(e);return(t=n==null?void 0:n.$el)!=null?t:n}function Pt(...e){let t,n,s,r;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,s,r]=e,t=He):[t,n,s,r]=e,!t)return Qt;Array.isArray(n)||(n=[n]),Array.isArray(s)||(s=[s]);const i=[],o=()=>{i.forEach(a=>a()),i.length=0},l=(a,h,g,b)=>(a.addEventListener(h,g,b),()=>a.removeEventListener(h,g,b)),c=Fe(()=>[Do(t),ke(r)],([a,h])=>{if(o(),!a)return;const g=Ha(h)?{...h}:h;i.push(...n.flatMap(b=>s.map(S=>l(a,b,S,g))))},{immediate:!0,flush:"post"}),f=()=>{c(),o()};return ir(f),f}function Wa(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function eu(...e){let t,n,s={};e.length===3?(t=e[0],n=e[1],s=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,n=e[0],s=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);const{target:r=He,eventName:i="keydown",passive:o=!1,dedupe:l=!1}=s,c=Wa(t);return Pt(r,i,a=>{a.repeat&&ke(l)||c(a)&&n(a)},o)}function Ka(){const e=oe(!1),t=zn();return t&&Lt(()=>{e.value=!0},t),e}function qa(e){const t=Ka();return ie(()=>(t.value,!!e()))}function Ho(e,t={}){const{window:n=He}=t,s=qa(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let r;const i=oe(!1),o=f=>{i.value=f.matches},l=()=>{r&&("removeEventListener"in r?r.removeEventListener("change",o):r.removeListener(o))},c=sr(()=>{s.value&&(l(),r=n.matchMedia(ke(e)),"addEventListener"in r?r.addEventListener("change",o):r.addListener(o),i.value=r.matches)});return ir(()=>{c(),l(),r=void 0}),i}const vn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},bn="__vueuse_ssr_handlers__",Ga=Ya();function Ya(){return bn in vn||(vn[bn]=vn[bn]||{}),vn[bn]}function $o(e,t){return Ga[e]||t}function jo(e){return Ho("(prefers-color-scheme: dark)",e)}function Xa(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const za={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},si="vueuse-storage";function lr(e,t,n,s={}){var r;const{flush:i="pre",deep:o=!0,listenToStorageChanges:l=!0,writeDefaults:c=!0,mergeDefaults:f=!1,shallow:a,window:h=He,eventFilter:g,onError:b=v=>{console.error(v)},initOnMounted:S}=s,_=(a?zs:oe)(typeof t=="function"?t():t);if(!n)try{n=$o("getDefaultStorage",()=>{var v;return(v=He)==null?void 0:v.localStorage})()}catch(v){b(v)}if(!n)return _;const k=ke(t),N=Xa(k),j=(r=s.serializer)!=null?r:za[N],{pause:p,resume:m}=ka(_,()=>F(_.value),{flush:i,deep:o,eventFilter:g});h&&l&&or(()=>{n instanceof Storage?Pt(h,"storage",V):Pt(h,si,R),S&&V()}),S||V();function M(v,I){if(h){const x={key:e,oldValue:v,newValue:I,storageArea:n};h.dispatchEvent(n instanceof Storage?new StorageEvent("storage",x):new CustomEvent(si,{detail:x}))}}function F(v){try{const I=n.getItem(e);if(v==null)M(I,null),n.removeItem(e);else{const x=j.write(v);I!==x&&(n.setItem(e,x),M(I,x))}}catch(I){b(I)}}function H(v){const I=v?v.newValue:n.getItem(e);if(I==null)return c&&k!=null&&n.setItem(e,j.write(k)),k;if(!v&&f){const x=j.read(I);return typeof f=="function"?f(x,k):N==="object"&&!Array.isArray(x)?{...k,...x}:x}else return typeof I!="string"?I:j.read(I)}function V(v){if(!(v&&v.storageArea!==n)){if(v&&v.key==null){_.value=k;return}if(!(v&&v.key!==e)){p();try{(v==null?void 0:v.newValue)!==j.write(_.value)&&(_.value=H(v))}catch(I){b(I)}finally{v?Kn(m):m()}}}}function R(v){V(v.detail)}return _}const Ja="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function Qa(e={}){const{selector:t="html",attribute:n="class",initialValue:s="auto",window:r=He,storage:i,storageKey:o="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:c,emitAuto:f,disableTransition:a=!0}=e,h={auto:"",light:"light",dark:"dark",...e.modes||{}},g=jo({window:r}),b=ie(()=>g.value?"dark":"light"),S=c||(o==null?No(s):lr(o,s,i,{window:r,listenToStorageChanges:l})),_=ie(()=>S.value==="auto"?b.value:S.value),k=$o("updateHTMLAttrs",(m,M,F)=>{const H=typeof m=="string"?r==null?void 0:r.document.querySelector(m):Do(m);if(!H)return;const V=new Set,R=new Set;let v=null;if(M==="class"){const x=F.split(/\s/g);Object.values(h).flatMap(W=>(W||"").split(/\s/g)).filter(Boolean).forEach(W=>{x.includes(W)?V.add(W):R.add(W)})}else v={key:M,value:F};if(V.size===0&&R.size===0&&v===null)return;let I;a&&(I=r.document.createElement("style"),I.appendChild(document.createTextNode(Ja)),r.document.head.appendChild(I));for(const x of V)H.classList.add(x);for(const x of R)H.classList.remove(x);v&&H.setAttribute(v.key,v.value),a&&(r.getComputedStyle(I).opacity,document.head.removeChild(I))});function N(m){var M;k(t,n,(M=h[m])!=null?M:m)}function j(m){e.onChanged?e.onChanged(m,N):N(m)}Fe(_,j,{flush:"post",immediate:!0}),or(()=>j(_.value));const p=ie({get(){return f?S.value:_.value},set(m){S.value=m}});try{return Object.assign(p,{store:S,system:b,state:_})}catch{return p}}function Za(e={}){const{valueDark:t="dark",valueLight:n="",window:s=He}=e,r=Qa({...e,onChanged:(l,c)=>{var f;e.onChanged?(f=e.onChanged)==null||f.call(e,l==="dark",c,l):c(l)},modes:{dark:t,light:n}}),i=ie(()=>r.system?r.system.value:jo({window:s}).value?"dark":"light");return ie({get(){return r.value==="dark"},set(l){const c=l?"dark":"light";i.value===c?r.value="auto":r.value=c}})}function ps(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function tu(e,t,n={}){const{window:s=He}=n;return lr(e,t,s==null?void 0:s.localStorage,n)}function Vo(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth<e.scrollWidth||t.overflowY==="auto"&&e.clientHeight<e.scrollHeight)return!0;{const n=e.parentNode;return!n||n.tagName==="BODY"?!1:Vo(n)}}function ef(e){const t=e||window.event,n=t.target;return Vo(n)?!1:t.touches.length>1?!0:(t.preventDefault&&t.preventDefault(),!1)}const gs=new WeakMap;function nu(e,t=!1){const n=oe(t);let s=null,r="";Fe(No(e),l=>{const c=ps(ke(l));if(c){const f=c;if(gs.get(f)||gs.set(f,f.style.overflow),f.style.overflow!=="hidden"&&(r=f.style.overflow),f.style.overflow==="hidden")return n.value=!0;if(n.value)return f.style.overflow="hidden"}},{immediate:!0});const i=()=>{const l=ps(ke(e));!l||n.value||(ni&&(s=Pt(l,"touchmove",c=>{ef(c)},{passive:!1})),l.style.overflow="hidden",n.value=!0)},o=()=>{const l=ps(ke(e));!l||!n.value||(ni&&(s==null||s()),l.style.overflow=r,gs.delete(l),n.value=!1)};return ir(o),ie({get(){return n.value},set(l){l?i():o()}})}function su(e,t,n={}){const{window:s=He}=n;return lr(e,t,s==null?void 0:s.sessionStorage,n)}function ru(e={}){const{window:t=He,behavior:n="auto"}=e;if(!t)return{x:oe(0),y:oe(0)};const s=oe(t.scrollX),r=oe(t.scrollY),i=ie({get(){return s.value},set(l){scrollTo({left:l,behavior:n})}}),o=ie({get(){return r.value},set(l){scrollTo({top:l,behavior:n})}});return Pt(t,"scroll",()=>{s.value=t.scrollX,r.value=t.scrollY},{capture:!1,passive:!0}),{x:i,y:o}}function iu(e={}){const{window:t=He,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:s=Number.POSITIVE_INFINITY,listenOrientation:r=!0,includeScrollbar:i=!0,type:o="inner"}=e,l=oe(n),c=oe(s),f=()=>{t&&(o==="outer"?(l.value=t.outerWidth,c.value=t.outerHeight):i?(l.value=t.innerWidth,c.value=t.innerHeight):(l.value=t.document.documentElement.clientWidth,c.value=t.document.documentElement.clientHeight))};if(f(),or(f),Pt("resize",f,{passive:!0}),r){const a=Ho("(orientation: portrait)");Fe(a,()=>f())}return{width:l,height:c}}const ms={BASE_URL:"/DimensionalData.jl/dev/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};var ys={};const Uo=/^(?:[a-z]+:|\/\/)/i,tf="vitepress-theme-appearance",nf=/#.*$/,sf=/[?#].*$/,rf=/(?:(^|\/)index)?\.(?:md|html)$/,ge=typeof document<"u",Bo={relativePath:"404.md",filePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function of(e,t,n=!1){if(t===void 0)return!1;if(e=ri(`/${e}`),n)return new RegExp(t).test(e);if(ri(t)!==e)return!1;const s=t.match(nf);return s?(ge?location.hash:"")===s[0]:!0}function ri(e){return decodeURI(e).replace(sf,"").replace(rf,"$1")}function lf(e){return Uo.test(e)}function cf(e,t){return Object.keys((e==null?void 0:e.locales)||{}).find(n=>n!=="root"&&!lf(n)&&of(t,`/${n}/`,!0))||"root"}function af(e,t){var s,r,i,o,l,c,f;const n=cf(e,t);return Object.assign({},e,{localeIndex:n,lang:((s=e.locales[n])==null?void 0:s.lang)??e.lang,dir:((r=e.locales[n])==null?void 0:r.dir)??e.dir,title:((i=e.locales[n])==null?void 0:i.title)??e.title,titleTemplate:((o=e.locales[n])==null?void 0:o.titleTemplate)??e.titleTemplate,description:((l=e.locales[n])==null?void 0:l.description)??e.description,head:Wo(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(f=e.locales[n])==null?void 0:f.themeConfig}})}function ko(e,t){const n=t.title||e.title,s=t.titleTemplate??e.titleTemplate;if(typeof s=="string"&&s.includes(":title"))return s.replace(/:title/g,n);const r=ff(e.title,s);return n===r.slice(3)?n:`${n}${r}`}function ff(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function uf(e,t){const[n,s]=t;if(n!=="meta")return!1;const r=Object.entries(s)[0];return r==null?!1:e.some(([i,o])=>i===n&&o[r[0]]===r[1])}function Wo(e,t){return[...e.filter(n=>!uf(t,n)),...t]}const df=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,hf=/^[a-z]:/i;function ii(e){const t=hf.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(df,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const vs=new Set;function pf(e){if(vs.size===0){const n=typeof process=="object"&&(ys==null?void 0:ys.VITE_EXTRA_EXTENSIONS)||(ms==null?void 0:ms.VITE_EXTRA_EXTENSIONS)||"";("3g2,3gp,aac,ai,apng,au,avif,bin,bmp,cer,class,conf,crl,css,csv,dll,doc,eps,epub,exe,gif,gz,ics,ief,jar,jpe,jpeg,jpg,js,json,jsonld,m4a,man,mid,midi,mjs,mov,mp2,mp3,mp4,mpe,mpeg,mpg,mpp,oga,ogg,ogv,ogx,opus,otf,p10,p7c,p7m,p7s,pdf,png,ps,qt,roff,rtf,rtx,ser,svg,t,tif,tiff,tr,ts,tsv,ttf,txt,vtt,wav,weba,webm,webp,woff,woff2,xhtml,xml,yaml,yml,zip"+(n&&typeof n=="string"?","+n:"")).split(",").forEach(s=>vs.add(s))}const t=e.split(".").pop();return t==null||!vs.has(t.toLowerCase())}function ou(e){return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const gf=Symbol(),yt=zs(Fa);function lu(e){const t=ie(()=>af(yt.value,e.data.relativePath)),n=t.value.appearance,s=n==="force-dark"?oe(!0):n?Za({storageKey:tf,initialValue:()=>n==="dark"?"dark":"auto",...typeof n=="object"?n:{}}):oe(!1),r=oe(ge?location.hash:"");return ge&&window.addEventListener("hashchange",()=>{r.value=location.hash}),Fe(()=>e.data,()=>{r.value=ge?location.hash:""}),{site:t,theme:ie(()=>t.value.themeConfig),page:ie(()=>e.data),frontmatter:ie(()=>e.data.frontmatter),params:ie(()=>e.data.params),lang:ie(()=>t.value.lang),dir:ie(()=>e.data.frontmatter.dir||t.value.dir),localeIndex:ie(()=>t.value.localeIndex||"root"),title:ie(()=>ko(t.value,e.data)),description:ie(()=>e.data.description||t.value.description),isDark:s,hash:ie(()=>r.value)}}function mf(){const e=Mt(gf);if(!e)throw new Error("vitepress data not properly injected in app");return e}function yf(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function oi(e){return Uo.test(e)||!e.startsWith("/")?e:yf(yt.value.base,e)}function vf(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),ge){const n="/DimensionalData.jl/dev/";t=ii(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let s=__VP_HASH_MAP__[t.toLowerCase()];if(s||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",s=__VP_HASH_MAP__[t.toLowerCase()]),!s)return null;t=`${n}assets/${t}.${s}.js`}else t=`./${ii(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let Rn=[];function cu(e){Rn.push(e),Gn(()=>{Rn=Rn.filter(t=>t!==e)})}function bf(){let e=yt.value.scrollOffset,t=0,n=24;if(typeof e=="object"&&"padding"in e&&(n=e.padding,e=e.selector),typeof e=="number")t=e;else if(typeof e=="string")t=li(e,n);else if(Array.isArray(e))for(const s of e){const r=li(s,n);if(r){t=r;break}}return t}function li(e,t){const n=document.querySelector(e);if(!n)return 0;const s=n.getBoundingClientRect().bottom;return s<0?0:s+t}const _f=Symbol(),Ko="http://a.com",wf=()=>({path:"/",component:null,data:Bo});function au(e,t){const n=kn(wf()),s={route:n,go:r};async function r(l=ge?location.href:"/"){var c,f;l=bs(l),await((c=s.onBeforeRouteChange)==null?void 0:c.call(s,l))!==!1&&(ge&&l!==bs(location.href)&&(history.replaceState({scrollPosition:window.scrollY},""),history.pushState({},"",l)),await o(l),await((f=s.onAfterRouteChanged)==null?void 0:f.call(s,l)))}let i=null;async function o(l,c=0,f=!1){var g,b;if(await((g=s.onBeforePageLoad)==null?void 0:g.call(s,l))===!1)return;const a=new URL(l,Ko),h=i=a.pathname;try{let S=await e(h);if(!S)throw new Error(`Page not found: ${h}`);if(i===h){i=null;const{default:_,__pageData:k}=S;if(!_)throw new Error(`Invalid route component: ${_}`);await((b=s.onAfterPageLoad)==null?void 0:b.call(s,l)),n.path=ge?h:oi(h),n.component=xn(_),n.data=xn(k),ge&&Kn(()=>{let N=yt.value.base+k.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!yt.value.cleanUrls&&!N.endsWith("/")&&(N+=".html"),N!==a.pathname&&(a.pathname=N,l=N+a.search+a.hash,history.replaceState({},"",l)),a.hash&&!c){let j=null;try{j=document.getElementById(decodeURIComponent(a.hash).slice(1))}catch(p){console.warn(p)}if(j){ci(j,a.hash);return}}window.scrollTo(0,c)})}}catch(S){if(!/fetch|Page not found/.test(S.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(S),!f)try{const _=await fetch(yt.value.base+"hashmap.json");window.__VP_HASH_MAP__=await _.json(),await o(l,c,!0);return}catch{}if(i===h){i=null,n.path=ge?h:oi(h),n.component=t?xn(t):null;const _=ge?h.replace(/(^|\/)$/,"$1index").replace(/(\.html)?$/,".md").replace(/^\//,""):"404.md";n.data={...Bo,relativePath:_}}}}return ge&&(history.state===null&&history.replaceState({},""),window.addEventListener("click",l=>{if(l.defaultPrevented||!(l.target instanceof Element)||l.target.closest("button")||l.button!==0||l.ctrlKey||l.shiftKey||l.altKey||l.metaKey)return;const c=l.target.closest("a");if(!c||c.closest(".vp-raw")||c.hasAttribute("download")||c.hasAttribute("target"))return;const f=c.getAttribute("href")??(c instanceof SVGAElement?c.getAttribute("xlink:href"):null);if(f==null)return;const{href:a,origin:h,pathname:g,hash:b,search:S}=new URL(f,c.baseURI),_=new URL(location.href);h===_.origin&&pf(g)&&(l.preventDefault(),g===_.pathname&&S===_.search?(b!==_.hash&&(history.pushState({},"",a),window.dispatchEvent(new HashChangeEvent("hashchange",{oldURL:_.href,newURL:a}))),b?ci(c,b,c.classList.contains("header-anchor")):window.scrollTo(0,0)):r(a))},{capture:!0}),window.addEventListener("popstate",async l=>{var c;l.state!==null&&(await o(bs(location.href),l.state&&l.state.scrollPosition||0),(c=s.onAfterRouteChanged)==null||c.call(s,location.href))}),window.addEventListener("hashchange",l=>{l.preventDefault()})),s}function Sf(){const e=Mt(_f);if(!e)throw new Error("useRouter() is called without provider.");return e}function qo(){return Sf().route}function ci(e,t,n=!1){let s=null;try{s=e.classList.contains("header-anchor")?e:document.getElementById(decodeURIComponent(t).slice(1))}catch(r){console.warn(r)}if(s){let r=function(){!n||Math.abs(o-window.scrollY)>window.innerHeight?window.scrollTo(0,o):window.scrollTo({left:0,top:o,behavior:"smooth"})};const i=parseInt(window.getComputedStyle(s).paddingTop,10),o=window.scrollY+s.getBoundingClientRect().top-bf()+i;requestAnimationFrame(r)}}function bs(e){const t=new URL(e,Ko);return t.pathname=t.pathname.replace(/(^|\/)index(\.html)?$/,"$1"),yt.value.cleanUrls?t.pathname=t.pathname.replace(/\.html$/,""):!t.pathname.endsWith("/")&&!t.pathname.endsWith(".html")&&(t.pathname+=".html"),t.pathname+t.search+t.hash}const _n=()=>Rn.forEach(e=>e()),fu=Qs({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=qo(),{frontmatter:n,site:s}=mf();return Fe(n,_n,{deep:!0,flush:"post"}),()=>Ns(e.as,s.value.contentProps??{style:{position:"relative"}},[t.component?Ns(t.component,{onVnodeMounted:_n,onVnodeUpdated:_n,onVnodeUnmounted:_n}):"404 Page Not Found"])}}),Ef="modulepreload",xf=function(e){return"/DimensionalData.jl/dev/"+e},ai={},uu=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),l=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=xf(c),c in ai)return;ai[c]=!0;const f=c.endsWith(".css"),a=f?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${a}`))return;const h=document.createElement("link");if(h.rel=f?"stylesheet":Ef,f||(h.as="script"),h.crossOrigin="",h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),f)return new Promise((g,b)=>{h.addEventListener("load",g),h.addEventListener("error",()=>b(new Error(`Unable to preload CSS for ${c}`)))})}))}function i(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return r.then(o=>{for(const l of o||[])l.status==="rejected"&&i(l.reason);return t().catch(i)})},du=Qs({setup(e,{slots:t}){const n=oe(!1);return Lt(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function hu(){ge&&window.addEventListener("click",e=>{var n;const t=e.target;if(t.matches(".vp-code-group input")){const s=(n=t.parentElement)==null?void 0:n.parentElement;if(!s)return;const r=Array.from(s.querySelectorAll("input")).indexOf(t);if(r<0)return;const i=s.querySelector(".blocks");if(!i)return;const o=Array.from(i.children).find(f=>f.classList.contains("active"));if(!o)return;const l=i.children[r];if(!l||o===l)return;o.classList.remove("active"),l.classList.add("active");const c=s==null?void 0:s.querySelector(`label[for="${t.id}"]`);c==null||c.scrollIntoView({block:"nearest"})}})}function pu(){if(ge){const e=new WeakMap;window.addEventListener("click",t=>{var s;const n=t.target;if(n.matches('div[class*="language-"] > button.copy')){const r=n.parentElement,i=(s=n.nextElementSibling)==null?void 0:s.nextElementSibling;if(!r||!i)return;const o=/language-(shellscript|shell|bash|sh|zsh)/.test(r.className),l=[".vp-copy-ignore",".diff.remove"],c=i.cloneNode(!0);c.querySelectorAll(l.join(",")).forEach(a=>a.remove());let f=c.textContent||"";o&&(f=f.replace(/^ *(\$|>) /gm,"").trim()),Tf(f).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const a=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,a)})}})}}async function Tf(e){try{return navigator.clipboard.writeText(e)}catch{const t=document.createElement("textarea"),n=document.activeElement;t.value=e,t.setAttribute("readonly",""),t.style.contain="strict",t.style.position="absolute",t.style.left="-9999px",t.style.fontSize="12pt";const s=document.getSelection(),r=s?s.rangeCount>0&&s.getRangeAt(0):null;document.body.appendChild(t),t.select(),t.selectionStart=0,t.selectionEnd=e.length,document.execCommand("copy"),document.body.removeChild(t),r&&(s.removeAllRanges(),s.addRange(r)),n&&n.focus()}}function gu(e,t){let n=!0,s=[];const r=i=>{if(n){n=!1,i.forEach(l=>{const c=_s(l);for(const f of document.head.children)if(f.isEqualNode(c)){s.push(f);return}});return}const o=i.map(_s);s.forEach((l,c)=>{const f=o.findIndex(a=>a==null?void 0:a.isEqualNode(l??null));f!==-1?delete o[f]:(l==null||l.remove(),delete s[c])}),o.forEach(l=>l&&document.head.appendChild(l)),s=[...s,...o].filter(Boolean)};sr(()=>{const i=e.data,o=t.value,l=i&&i.description,c=i&&i.frontmatter.head||[],f=ko(o,i);f!==document.title&&(document.title=f);const a=l||o.description;let h=document.querySelector("meta[name=description]");h?h.getAttribute("content")!==a&&h.setAttribute("content",a):_s(["meta",{name:"description",content:a}]),r(Wo(o.head,Af(c)))})}function _s([e,t,n]){const s=document.createElement(e);for(const r in t)s.setAttribute(r,t[r]);return n&&(s.innerHTML=n),e==="script"&&!t.async&&(s.async=!1),s}function Cf(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function Af(e){return e.filter(t=>!Cf(t))}const ws=new Set,Go=()=>document.createElement("link"),Rf=e=>{const t=Go();t.rel="prefetch",t.href=e,document.head.appendChild(t)},Of=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let wn;const Mf=ge&&(wn=Go())&&wn.relList&&wn.relList.supports&&wn.relList.supports("prefetch")?Rf:Of;function mu(){if(!ge||!window.IntersectionObserver)return;let e;if((e=navigator.connection)&&(e.saveData||/2g/.test(e.effectiveType)))return;const t=window.requestIdleCallback||setTimeout;let n=null;const s=()=>{n&&n.disconnect(),n=new IntersectionObserver(i=>{i.forEach(o=>{if(o.isIntersecting){const l=o.target;n.unobserve(l);const{pathname:c}=l;if(!ws.has(c)){ws.add(c);const f=vf(c);f&&Mf(f)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(i=>{const{hostname:o,pathname:l}=new URL(i.href instanceof SVGAnimatedString?i.href.animVal:i.href,i.baseURI),c=l.match(/\.\w+$/);c&&c[0]!==".html"||i.target!=="_blank"&&o===location.hostname&&(l!==location.pathname?n.observe(i):ws.add(l))})})};Lt(s);const r=qo();Fe(()=>r.path,s),Gn(()=>{n&&n.disconnect()})}export{zi as $,bf as A,Nf as B,Df as C,zs as D,cu as E,Se as F,le as G,Ff as H,Uo as I,qo as J,Yc as K,Mt as L,iu as M,Vs as N,eu as O,Kn as P,ru as Q,ge as R,Wn as S,Wf as T,If as U,uu as V,nu as W,Cc as X,$f as Y,Gf as Z,zf as _,Eo as a,qf as a0,jf as a1,kn as a2,Vl as a3,Bf as a4,gu as a5,_f as a6,lu as a7,gf as a8,fu as a9,du as aa,yt as ab,Xf as ac,au as ad,vf as ae,mu as af,pu as ag,hu as ah,Ns as ai,ke as aj,Do as ak,Jf as al,ir as am,Zf as an,su as ao,tu as ap,Qf as aq,Sf as ar,Pt as as,Pf as at,Kf as au,ae as av,Lf as aw,xn as ax,Yf as ay,ou as az,Ls as b,Uf as c,Qs as d,kf as e,pf as f,oi as g,ie as h,lf as i,So as j,Fi as k,of as l,Ho as m,Us as n,Ps as o,oe as p,Fe as q,Hf as r,sr as s,cl as t,mf as u,Lt as v,Xl as w,Gn as x,Vf as y,dc as z}; diff --git a/dev/assets/chunks/framework.C6EFuEL4.js b/dev/assets/chunks/framework.C6EFuEL4.js deleted file mode 100644 index 98859df2b..000000000 --- a/dev/assets/chunks/framework.C6EFuEL4.js +++ /dev/null @@ -1,18 +0,0 @@ -/** -* @vue/shared v3.5.10 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function Ds(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const Z={},Ct=[],Ue=()=>{},Jo=()=>!1,Zt=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Hs=e=>e.startsWith("onUpdate:"),fe=Object.assign,$s=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Qo=Object.prototype.hasOwnProperty,J=(e,t)=>Qo.call(e,t),K=Array.isArray,At=e=>Fn(e)==="[object Map]",ui=e=>Fn(e)==="[object Set]",q=e=>typeof e=="function",re=e=>typeof e=="string",st=e=>typeof e=="symbol",ne=e=>e!==null&&typeof e=="object",di=e=>(ne(e)||q(e))&&q(e.then)&&q(e.catch),hi=Object.prototype.toString,Fn=e=>hi.call(e),Zo=e=>Fn(e).slice(8,-1),pi=e=>Fn(e)==="[object Object]",js=e=>re(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Rt=Ds(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Dn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},el=/-(\w)/g,Ie=Dn(e=>e.replace(el,(t,n)=>n?n.toUpperCase():"")),tl=/\B([A-Z])/g,rt=Dn(e=>e.replace(tl,"-$1").toLowerCase()),Hn=Dn(e=>e.charAt(0).toUpperCase()+e.slice(1)),wn=Dn(e=>e?`on${Hn(e)}`:""),tt=(e,t)=>!Object.is(e,t),Sn=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},gi=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},ws=e=>{const t=parseFloat(e);return isNaN(t)?e:t},nl=e=>{const t=re(e)?Number(e):NaN;return isNaN(t)?e:t};let hr;const mi=()=>hr||(hr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Vs(e){if(K(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],r=re(s)?ol(s):Vs(s);if(r)for(const i in r)t[i]=r[i]}return t}else if(re(e)||ne(e))return e}const sl=/;(?![^(]*\))/g,rl=/:([^]+)/,il=/\/\*[^]*?\*\//g;function ol(e){const t={};return e.replace(il,"").split(sl).forEach(n=>{if(n){const s=n.split(rl);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Us(e){let t="";if(re(e))t=e;else if(K(e))for(let n=0;n<e.length;n++){const s=Us(e[n]);s&&(t+=s+" ")}else if(ne(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}const ll="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",cl=Ds(ll);function yi(e){return!!e||e===""}const vi=e=>!!(e&&e.__v_isRef===!0),al=e=>re(e)?e:e==null?"":K(e)||ne(e)&&(e.toString===hi||!q(e.toString))?vi(e)?al(e.value):JSON.stringify(e,bi,2):String(e),bi=(e,t)=>vi(t)?bi(e,t.value):At(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[Zn(s,i)+" =>"]=r,n),{})}:ui(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Zn(n))}:st(t)?Zn(t):ne(t)&&!K(t)&&!pi(t)?String(t):t,Zn=(e,t="")=>{var n;return st(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** -* @vue/reactivity v3.5.10 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let _e;class fl{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].pause();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume()}}run(t){if(this._active){const n=_e;try{return _e=this,t()}finally{_e=n}}}on(){_e=this}off(){_e=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n<s;n++)this.effects[n].stop();for(n=0,s=this.cleanups.length;n<s;n++)this.cleanups[n]();if(this.scopes)for(n=0,s=this.scopes.length;n<s;n++)this.scopes[n].stop(!0);if(!this.detached&&this.parent&&!t){const r=this.parent.scopes.pop();r&&r!==this&&(this.parent.scopes[this.index]=r,r.index=this.index)}this.parent=void 0,this._active=!1}}}function _i(){return _e}function ul(e,t=!1){_e&&_e.cleanups.push(e)}let te;const es=new WeakSet;class wi{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,_e&&_e.active&&_e.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,es.has(this)&&(es.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||Ei(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,pr(this),xi(this);const t=te,n=Ne;te=this,Ne=!0;try{return this.fn()}finally{Ti(this),te=t,Ne=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Ws(t);this.deps=this.depsTail=void 0,pr(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?es.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Ss(this)&&this.run()}get dirty(){return Ss(this)}}let Si=0,xt;function Ei(e){e.flags|=8,e.next=xt,xt=e}function Bs(){Si++}function ks(){if(--Si>0)return;let e;for(;xt;){let t=xt,n;for(;t;)t.flags&1||(t.flags&=-9),t=t.next;for(t=xt,xt=void 0;t;){if(n=t.next,t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function xi(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ti(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Ws(s),dl(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function Ss(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Ci(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Ci(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Wt))return;e.globalVersion=Wt;const t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!Ss(e)){e.flags&=-3;return}const n=te,s=Ne;te=e,Ne=!0;try{xi(e);const r=e.fn(e._value);(t.version===0||tt(r,e._value))&&(e._value=r,t.version++)}catch(r){throw t.version++,r}finally{te=n,Ne=s,Ti(e),e.flags&=-3}}function Ws(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s),!n.subs&&n.computed){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)Ws(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function dl(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ne=!0;const Ai=[];function it(){Ai.push(Ne),Ne=!1}function ot(){const e=Ai.pop();Ne=e===void 0?!0:e}function pr(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=te;te=void 0;try{t()}finally{te=n}}}let Wt=0;class hl{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class $n{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.target=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(t){if(!te||!Ne||te===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==te)n=this.activeLink=new hl(te,this),te.deps?(n.prevDep=te.depsTail,te.depsTail.nextDep=n,te.depsTail=n):te.deps=te.depsTail=n,Ri(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=te.depsTail,n.nextDep=void 0,te.depsTail.nextDep=n,te.depsTail=n,te.deps===n&&(te.deps=s)}return n}trigger(t){this.version++,Wt++,this.notify(t)}notify(t){Bs();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{ks()}}}function Ri(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)Ri(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Rn=new WeakMap,ht=Symbol(""),Es=Symbol(""),Kt=Symbol("");function ve(e,t,n){if(Ne&&te){let s=Rn.get(e);s||Rn.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new $n),r.target=e,r.map=s,r.key=n),r.track()}}function Ge(e,t,n,s,r,i){const o=Rn.get(e);if(!o){Wt++;return}const l=c=>{c&&c.trigger()};if(Bs(),t==="clear")o.forEach(l);else{const c=K(e),f=c&&js(n);if(c&&n==="length"){const a=Number(s);o.forEach((h,g)=>{(g==="length"||g===Kt||!st(g)&&g>=a)&&l(h)})}else switch(n!==void 0&&l(o.get(n)),f&&l(o.get(Kt)),t){case"add":c?f&&l(o.get("length")):(l(o.get(ht)),At(e)&&l(o.get(Es)));break;case"delete":c||(l(o.get(ht)),At(e)&&l(o.get(Es)));break;case"set":At(e)&&l(o.get(ht));break}}ks()}function pl(e,t){const n=Rn.get(e);return n&&n.get(t)}function _t(e){const t=z(e);return t===e?t:(ve(t,"iterate",Kt),Pe(e)?t:t.map(me))}function jn(e){return ve(e=z(e),"iterate",Kt),e}const gl={__proto__:null,[Symbol.iterator](){return ts(this,Symbol.iterator,me)},concat(...e){return _t(this).concat(...e.map(t=>K(t)?_t(t):t))},entries(){return ts(this,"entries",e=>(e[1]=me(e[1]),e))},every(e,t){return We(this,"every",e,t,void 0,arguments)},filter(e,t){return We(this,"filter",e,t,n=>n.map(me),arguments)},find(e,t){return We(this,"find",e,t,me,arguments)},findIndex(e,t){return We(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return We(this,"findLast",e,t,me,arguments)},findLastIndex(e,t){return We(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return We(this,"forEach",e,t,void 0,arguments)},includes(...e){return ns(this,"includes",e)},indexOf(...e){return ns(this,"indexOf",e)},join(e){return _t(this).join(e)},lastIndexOf(...e){return ns(this,"lastIndexOf",e)},map(e,t){return We(this,"map",e,t,void 0,arguments)},pop(){return Dt(this,"pop")},push(...e){return Dt(this,"push",e)},reduce(e,...t){return gr(this,"reduce",e,t)},reduceRight(e,...t){return gr(this,"reduceRight",e,t)},shift(){return Dt(this,"shift")},some(e,t){return We(this,"some",e,t,void 0,arguments)},splice(...e){return Dt(this,"splice",e)},toReversed(){return _t(this).toReversed()},toSorted(e){return _t(this).toSorted(e)},toSpliced(...e){return _t(this).toSpliced(...e)},unshift(...e){return Dt(this,"unshift",e)},values(){return ts(this,"values",me)}};function ts(e,t,n){const s=jn(e),r=s[t]();return s!==e&&!Pe(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.value&&(i.value=n(i.value)),i}),r}const ml=Array.prototype;function We(e,t,n,s,r,i){const o=jn(e),l=o!==e&&!Pe(e),c=o[t];if(c!==ml[t]){const h=c.apply(e,i);return l?me(h):h}let f=n;o!==e&&(l?f=function(h,g){return n.call(this,me(h),g,e)}:n.length>2&&(f=function(h,g){return n.call(this,h,g,e)}));const a=c.call(o,f,s);return l&&r?r(a):a}function gr(e,t,n,s){const r=jn(e);let i=n;return r!==e&&(Pe(e)?n.length>3&&(i=function(o,l,c){return n.call(this,o,l,c,e)}):i=function(o,l,c){return n.call(this,o,me(l),c,e)}),r[t](i,...s)}function ns(e,t,n){const s=z(e);ve(s,"iterate",Kt);const r=s[t](...n);return(r===-1||r===!1)&&Ys(n[0])?(n[0]=z(n[0]),s[t](...n)):r}function Dt(e,t,n=[]){it(),Bs();const s=z(e)[t].apply(e,n);return ks(),ot(),s}const yl=Ds("__proto__,__v_isRef,__isVue"),Oi=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(st));function vl(e){st(e)||(e=String(e));const t=z(this);return ve(t,"has",e),t.hasOwnProperty(e)}class Mi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?Pl:Ni:i?Li:Ii).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=K(t);if(!r){let c;if(o&&(c=gl[n]))return c;if(n==="hasOwnProperty")return vl}const l=Reflect.get(t,n,ae(t)?t:s);return(st(n)?Oi.has(n):yl(n))||(r||ve(t,"get",n),i)?l:ae(l)?o&&js(n)?l:l.value:ne(l)?r?Bn(l):Un(l):l}}class Pi extends Mi{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];if(!this._isShallow){const c=vt(i);if(!Pe(s)&&!vt(s)&&(i=z(i),s=z(s)),!K(t)&&ae(i)&&!ae(s))return c?!1:(i.value=s,!0)}const o=K(t)&&js(n)?Number(n)<t.length:J(t,n),l=Reflect.set(t,n,s,ae(t)?t:r);return t===z(r)&&(o?tt(s,i)&&Ge(t,"set",n,s):Ge(t,"add",n,s)),l}deleteProperty(t,n){const s=J(t,n);t[n];const r=Reflect.deleteProperty(t,n);return r&&s&&Ge(t,"delete",n,void 0),r}has(t,n){const s=Reflect.has(t,n);return(!st(n)||!Oi.has(n))&&ve(t,"has",n),s}ownKeys(t){return ve(t,"iterate",K(t)?"length":ht),Reflect.ownKeys(t)}}class bl extends Mi{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const _l=new Pi,wl=new bl,Sl=new Pi(!0);const Ks=e=>e,Vn=e=>Reflect.getPrototypeOf(e);function cn(e,t,n=!1,s=!1){e=e.__v_raw;const r=z(e),i=z(t);n||(tt(t,i)&&ve(r,"get",t),ve(r,"get",i));const{has:o}=Vn(r),l=s?Ks:n?Xs:me;if(o.call(r,t))return l(e.get(t));if(o.call(r,i))return l(e.get(i));e!==r&&e.get(t)}function an(e,t=!1){const n=this.__v_raw,s=z(n),r=z(e);return t||(tt(e,r)&&ve(s,"has",e),ve(s,"has",r)),e===r?n.has(e):n.has(e)||n.has(r)}function fn(e,t=!1){return e=e.__v_raw,!t&&ve(z(e),"iterate",ht),Reflect.get(e,"size",e)}function mr(e,t=!1){!t&&!Pe(e)&&!vt(e)&&(e=z(e));const n=z(this);return Vn(n).has.call(n,e)||(n.add(e),Ge(n,"add",e,e)),this}function yr(e,t,n=!1){!n&&!Pe(t)&&!vt(t)&&(t=z(t));const s=z(this),{has:r,get:i}=Vn(s);let o=r.call(s,e);o||(e=z(e),o=r.call(s,e));const l=i.call(s,e);return s.set(e,t),o?tt(t,l)&&Ge(s,"set",e,t):Ge(s,"add",e,t),this}function vr(e){const t=z(this),{has:n,get:s}=Vn(t);let r=n.call(t,e);r||(e=z(e),r=n.call(t,e)),s&&s.call(t,e);const i=t.delete(e);return r&&Ge(t,"delete",e,void 0),i}function br(){const e=z(this),t=e.size!==0,n=e.clear();return t&&Ge(e,"clear",void 0,void 0),n}function un(e,t){return function(s,r){const i=this,o=i.__v_raw,l=z(o),c=t?Ks:e?Xs:me;return!e&&ve(l,"iterate",ht),o.forEach((f,a)=>s.call(r,c(f),c(a),i))}}function dn(e,t,n){return function(...s){const r=this.__v_raw,i=z(r),o=At(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,f=r[e](...s),a=n?Ks:t?Xs:me;return!t&&ve(i,"iterate",c?Es:ht),{next(){const{value:h,done:g}=f.next();return g?{value:h,done:g}:{value:l?[a(h[0]),a(h[1])]:a(h),done:g}},[Symbol.iterator](){return this}}}}function Xe(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function El(){const e={get(i){return cn(this,i)},get size(){return fn(this)},has:an,add:mr,set:yr,delete:vr,clear:br,forEach:un(!1,!1)},t={get(i){return cn(this,i,!1,!0)},get size(){return fn(this)},has:an,add(i){return mr.call(this,i,!0)},set(i,o){return yr.call(this,i,o,!0)},delete:vr,clear:br,forEach:un(!1,!0)},n={get(i){return cn(this,i,!0)},get size(){return fn(this,!0)},has(i){return an.call(this,i,!0)},add:Xe("add"),set:Xe("set"),delete:Xe("delete"),clear:Xe("clear"),forEach:un(!0,!1)},s={get(i){return cn(this,i,!0,!0)},get size(){return fn(this,!0)},has(i){return an.call(this,i,!0)},add:Xe("add"),set:Xe("set"),delete:Xe("delete"),clear:Xe("clear"),forEach:un(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(i=>{e[i]=dn(i,!1,!1),n[i]=dn(i,!0,!1),t[i]=dn(i,!1,!0),s[i]=dn(i,!0,!0)}),[e,n,t,s]}const[xl,Tl,Cl,Al]=El();function qs(e,t){const n=t?e?Al:Cl:e?Tl:xl;return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(J(n,r)&&r in s?n:s,r,i)}const Rl={get:qs(!1,!1)},Ol={get:qs(!1,!0)},Ml={get:qs(!0,!1)};const Ii=new WeakMap,Li=new WeakMap,Ni=new WeakMap,Pl=new WeakMap;function Il(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Ll(e){return e.__v_skip||!Object.isExtensible(e)?0:Il(Zo(e))}function Un(e){return vt(e)?e:Gs(e,!1,_l,Rl,Ii)}function Nl(e){return Gs(e,!1,Sl,Ol,Li)}function Bn(e){return Gs(e,!0,wl,Ml,Ni)}function Gs(e,t,n,s,r){if(!ne(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const o=Ll(e);if(o===0)return e;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function pt(e){return vt(e)?pt(e.__v_raw):!!(e&&e.__v_isReactive)}function vt(e){return!!(e&&e.__v_isReadonly)}function Pe(e){return!!(e&&e.__v_isShallow)}function Ys(e){return e?!!e.__v_raw:!1}function z(e){const t=e&&e.__v_raw;return t?z(t):e}function En(e){return!J(e,"__v_skip")&&Object.isExtensible(e)&&gi(e,"__v_skip",!0),e}const me=e=>ne(e)?Un(e):e,Xs=e=>ne(e)?Bn(e):e;function ae(e){return e?e.__v_isRef===!0:!1}function oe(e){return Fi(e,!1)}function zs(e){return Fi(e,!0)}function Fi(e,t){return ae(e)?e:new Fl(e,t)}class Fl{constructor(t,n){this.dep=new $n,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:z(t),this._value=n?t:me(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Pe(t)||vt(t);t=s?t:z(t),tt(t,n)&&(this._rawValue=t,this._value=s?t:me(t),this.dep.trigger())}}function Di(e){return ae(e)?e.value:e}const Dl={get:(e,t,n)=>t==="__v_raw"?e:Di(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return ae(r)&&!ae(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Hi(e){return pt(e)?e:new Proxy(e,Dl)}class Hl{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new $n,{get:s,set:r}=t(n.track.bind(n),n.trigger.bind(n));this._get=s,this._set=r}get value(){return this._value=this._get()}set value(t){this._set(t)}}function $l(e){return new Hl(e)}class jl{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return pl(z(this._object),this._key)}}class Vl{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Ul(e,t,n){return ae(e)?e:q(e)?new Vl(e):ne(e)&&arguments.length>1?Bl(e,t,n):oe(e)}function Bl(e,t,n){const s=e[t];return ae(s)?s:new jl(e,t,n)}class kl{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new $n(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Wt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&te!==this)return Ei(this),!0}get value(){const t=this.dep.track();return Ci(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Wl(e,t,n=!1){let s,r;return q(e)?s=e:(s=e.get,r=e.set),new kl(s,r,n)}const hn={},On=new WeakMap;let ut;function Kl(e,t=!1,n=ut){if(n){let s=On.get(n);s||On.set(n,s=[]),s.push(e)}}function ql(e,t,n=Z){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:c}=n,f=m=>r?m:Pe(m)||r===!1||r===0?qe(m,1):qe(m);let a,h,g,v,_=!1,S=!1;if(ae(e)?(h=()=>e.value,_=Pe(e)):pt(e)?(h=()=>f(e),_=!0):K(e)?(S=!0,_=e.some(m=>pt(m)||Pe(m)),h=()=>e.map(m=>{if(ae(m))return m.value;if(pt(m))return f(m);if(q(m))return c?c(m,2):m()})):q(e)?t?h=c?()=>c(e,2):e:h=()=>{if(g){it();try{g()}finally{ot()}}const m=ut;ut=a;try{return c?c(e,3,[v]):e(v)}finally{ut=m}}:h=Ue,t&&r){const m=h,M=r===!0?1/0:r;h=()=>qe(m(),M)}const U=_i(),N=()=>{a.stop(),U&&$s(U.effects,a)};if(i&&t){const m=t;t=(...M)=>{m(...M),N()}}let B=S?new Array(e.length).fill(hn):hn;const p=m=>{if(!(!(a.flags&1)||!a.dirty&&!m))if(t){const M=a.run();if(r||_||(S?M.some((F,H)=>tt(F,B[H])):tt(M,B))){g&&g();const F=ut;ut=a;try{const H=[M,B===hn?void 0:S&&B[0]===hn?[]:B,v];c?c(t,3,H):t(...H),B=M}finally{ut=F}}}else a.run()};return l&&l(p),a=new wi(h),a.scheduler=o?()=>o(p,!1):p,v=m=>Kl(m,!1,a),g=a.onStop=()=>{const m=On.get(a);if(m){if(c)c(m,4);else for(const M of m)M();On.delete(a)}},t?s?p(!0):B=a.run():o?o(p.bind(null,!0),!0):a.run(),N.pause=a.pause.bind(a),N.resume=a.resume.bind(a),N.stop=N,N}function qe(e,t=1/0,n){if(t<=0||!ne(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,ae(e))qe(e.value,t,n);else if(K(e))for(let s=0;s<e.length;s++)qe(e[s],t,n);else if(ui(e)||At(e))e.forEach(s=>{qe(s,t,n)});else if(pi(e)){for(const s in e)qe(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&qe(e[s],t,n)}return e}/** -* @vue/runtime-core v3.5.10 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function en(e,t,n,s){try{return s?e(...s):e()}catch(r){tn(r,t,n)}}function Fe(e,t,n,s){if(q(e)){const r=en(e,t,n,s);return r&&di(r)&&r.catch(i=>{tn(i,t,n)}),r}if(K(e)){const r=[];for(let i=0;i<e.length;i++)r.push(Fe(e[i],t,n,s));return r}}function tn(e,t,n,s=!0){const r=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:o}=t&&t.appContext.config||Z;if(t){let l=t.parent;const c=t.proxy,f=`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const a=l.ec;if(a){for(let h=0;h<a.length;h++)if(a[h](e,c,f)===!1)return}l=l.parent}if(i){it(),en(i,null,10,[e,c,f]),ot();return}}Gl(e,n,r,s,o)}function Gl(e,t,n,s=!0,r=!1){if(r)throw e;console.error(e)}let qt=!1,xs=!1;const we=[];let je=0;const Ot=[];let Qe=null,St=0;const $i=Promise.resolve();let Js=null;function kn(e){const t=Js||$i;return e?t.then(this?e.bind(this):e):t}function Yl(e){let t=qt?je+1:0,n=we.length;for(;t<n;){const s=t+n>>>1,r=we[s],i=Gt(r);i<e||i===e&&r.flags&2?t=s+1:n=s}return t}function Qs(e){if(!(e.flags&1)){const t=Gt(e),n=we[we.length-1];!n||!(e.flags&2)&&t>=Gt(n)?we.push(e):we.splice(Yl(t),0,e),e.flags|=1,ji()}}function ji(){!qt&&!xs&&(xs=!0,Js=$i.then(Vi))}function Xl(e){K(e)?Ot.push(...e):Qe&&e.id===-1?Qe.splice(St+1,0,e):e.flags&1||(Ot.push(e),e.flags|=1),ji()}function _r(e,t,n=qt?je+1:0){for(;n<we.length;n++){const s=we[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;we.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function Mn(e){if(Ot.length){const t=[...new Set(Ot)].sort((n,s)=>Gt(n)-Gt(s));if(Ot.length=0,Qe){Qe.push(...t);return}for(Qe=t,St=0;St<Qe.length;St++){const n=Qe[St];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}Qe=null,St=0}}const Gt=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Vi(e){xs=!1,qt=!0;try{for(je=0;je<we.length;je++){const t=we[je];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),en(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;je<we.length;je++){const t=we[je];t&&(t.flags&=-2)}je=0,we.length=0,Mn(),qt=!1,Js=null,(we.length||Ot.length)&&Vi()}}let de=null,Ui=null;function Pn(e){const t=de;return de=e,Ui=e&&e.type.__scopeId||null,t}function zl(e,t=de,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&Nr(-1);const i=Pn(t);let o;try{o=e(...r)}finally{Pn(i),s._d&&Nr(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function If(e,t){if(de===null)return e;const n=Xn(de),s=e.dirs||(e.dirs=[]);for(let r=0;r<t.length;r++){let[i,o,l,c=Z]=t[r];i&&(q(i)&&(i={mounted:i,updated:i}),i.deep&&qe(o),s.push({dir:i,instance:n,value:o,oldValue:void 0,arg:l,modifiers:c}))}return e}function Ve(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;o<r.length;o++){const l=r[o];i&&(l.oldValue=i[o].value);let c=l.dir[s];c&&(it(),Fe(c,n,8,[e.el,l,e,t]),ot())}}const Bi=Symbol("_vte"),ki=e=>e.__isTeleport,jt=e=>e&&(e.disabled||e.disabled===""),Jl=e=>e&&(e.defer||e.defer===""),wr=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Sr=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Ts=(e,t)=>{const n=e&&e.to;return re(n)?t?t(n):null:n},Ql={name:"Teleport",__isTeleport:!0,process(e,t,n,s,r,i,o,l,c,f){const{mc:a,pc:h,pbc:g,o:{insert:v,querySelector:_,createText:S,createComment:U}}=f,N=jt(t.props);let{shapeFlag:B,children:p,dynamicChildren:m}=t;if(e==null){const M=t.el=S(""),F=t.anchor=S("");v(M,n,s),v(F,n,s);const H=(R,b)=>{B&16&&(r&&r.isCE&&(r.ce._teleportTarget=R),a(p,R,b,r,i,o,l,c))},j=()=>{const R=t.target=Ts(t.props,_),b=Wi(R,t,S,v);R&&(o!=="svg"&&wr(R)?o="svg":o!=="mathml"&&Sr(R)&&(o="mathml"),N||(H(R,b),xn(t)))};N&&(H(n,F),xn(t)),Jl(t.props)?Ee(j,i):j()}else{t.el=e.el,t.targetStart=e.targetStart;const M=t.anchor=e.anchor,F=t.target=e.target,H=t.targetAnchor=e.targetAnchor,j=jt(e.props),R=j?n:F,b=j?M:H;if(o==="svg"||wr(F)?o="svg":(o==="mathml"||Sr(F))&&(o="mathml"),m?(g(e.dynamicChildren,m,R,r,i,o,l),sr(e,t,!0)):c||h(e,t,R,b,r,i,o,l,!1),N)j?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):pn(t,n,M,f,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const L=t.target=Ts(t.props,_);L&&pn(t,L,null,f,0)}else j&&pn(t,F,H,f,1);xn(t)}},remove(e,t,n,{um:s,o:{remove:r}},i){const{shapeFlag:o,children:l,anchor:c,targetStart:f,targetAnchor:a,target:h,props:g}=e;if(h&&(r(f),r(a)),i&&r(c),o&16){const v=i||!jt(g);for(let _=0;_<l.length;_++){const S=l[_];s(S,t,n,v,!!S.dynamicChildren)}}},move:pn,hydrate:Zl};function pn(e,t,n,{o:{insert:s},m:r},i=2){i===0&&s(e.targetAnchor,t,n);const{el:o,anchor:l,shapeFlag:c,children:f,props:a}=e,h=i===2;if(h&&s(o,t,n),(!h||jt(a))&&c&16)for(let g=0;g<f.length;g++)r(f[g],t,n,2);h&&s(l,t,n)}function Zl(e,t,n,s,r,i,{o:{nextSibling:o,parentNode:l,querySelector:c,insert:f,createText:a}},h){const g=t.target=Ts(t.props,c);if(g){const v=g._lpa||g.firstChild;if(t.shapeFlag&16)if(jt(t.props))t.anchor=h(o(e),t,l(e),n,s,r,i),t.targetStart=v,t.targetAnchor=v&&o(v);else{t.anchor=o(e);let _=v;for(;_;){if(_&&_.nodeType===8){if(_.data==="teleport start anchor")t.targetStart=_;else if(_.data==="teleport anchor"){t.targetAnchor=_,g._lpa=t.targetAnchor&&o(t.targetAnchor);break}}_=o(_)}t.targetAnchor||Wi(g,t,a,f),h(v&&o(v),t,g,n,s,r,i)}xn(t)}return t.anchor&&o(t.anchor)}const Lf=Ql;function xn(e){const t=e.ctx;if(t&&t.ut){let n=e.targetStart;for(;n&&n!==e.targetAnchor;)n.nodeType===1&&n.setAttribute("data-v-owner",t.uid),n=n.nextSibling;t.ut()}}function Wi(e,t,n,s){const r=t.targetStart=n(""),i=t.targetAnchor=n("");return r[Bi]=i,e&&(s(r,e),s(i,e)),i}const Ze=Symbol("_leaveCb"),gn=Symbol("_enterCb");function ec(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Lt(()=>{e.isMounted=!0}),Ji(()=>{e.isUnmounting=!0}),e}const Re=[Function,Array],Ki={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Re,onEnter:Re,onAfterEnter:Re,onEnterCancelled:Re,onBeforeLeave:Re,onLeave:Re,onAfterLeave:Re,onLeaveCancelled:Re,onBeforeAppear:Re,onAppear:Re,onAfterAppear:Re,onAppearCancelled:Re},qi=e=>{const t=e.subTree;return t.component?qi(t.component):t},tc={name:"BaseTransition",props:Ki,setup(e,{slots:t}){const n=Yn(),s=ec();return()=>{const r=t.default&&Xi(t.default(),!0);if(!r||!r.length)return;const i=Gi(r),o=z(e),{mode:l}=o;if(s.isLeaving)return ss(i);const c=Er(i);if(!c)return ss(i);let f=Cs(c,o,s,n,g=>f=g);c.type!==ye&&Yt(c,f);const a=n.subTree,h=a&&Er(a);if(h&&h.type!==ye&&!dt(c,h)&&qi(n).type!==ye){const g=Cs(h,o,s,n);if(Yt(h,g),l==="out-in"&&c.type!==ye)return s.isLeaving=!0,g.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete g.afterLeave},ss(i);l==="in-out"&&c.type!==ye&&(g.delayLeave=(v,_,S)=>{const U=Yi(s,h);U[String(h.key)]=h,v[Ze]=()=>{_(),v[Ze]=void 0,delete f.delayedLeave},f.delayedLeave=S})}return i}}};function Gi(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==ye){t=n;break}}return t}const nc=tc;function Yi(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Cs(e,t,n,s,r){const{appear:i,mode:o,persisted:l=!1,onBeforeEnter:c,onEnter:f,onAfterEnter:a,onEnterCancelled:h,onBeforeLeave:g,onLeave:v,onAfterLeave:_,onLeaveCancelled:S,onBeforeAppear:U,onAppear:N,onAfterAppear:B,onAppearCancelled:p}=t,m=String(e.key),M=Yi(n,e),F=(R,b)=>{R&&Fe(R,s,9,b)},H=(R,b)=>{const L=b[1];F(R,b),K(R)?R.every(x=>x.length<=1)&&L():R.length<=1&&L()},j={mode:o,persisted:l,beforeEnter(R){let b=c;if(!n.isMounted)if(i)b=U||c;else return;R[Ze]&&R[Ze](!0);const L=M[m];L&&dt(e,L)&&L.el[Ze]&&L.el[Ze](),F(b,[R])},enter(R){let b=f,L=a,x=h;if(!n.isMounted)if(i)b=N||f,L=B||a,x=p||h;else return;let W=!1;const se=R[gn]=ce=>{W||(W=!0,ce?F(x,[R]):F(L,[R]),j.delayedLeave&&j.delayedLeave(),R[gn]=void 0)};b?H(b,[R,se]):se()},leave(R,b){const L=String(e.key);if(R[gn]&&R[gn](!0),n.isUnmounting)return b();F(g,[R]);let x=!1;const W=R[Ze]=se=>{x||(x=!0,b(),se?F(S,[R]):F(_,[R]),R[Ze]=void 0,M[L]===e&&delete M[L])};M[L]=e,v?H(v,[R,W]):W()},clone(R){const b=Cs(R,t,n,s,r);return r&&r(b),b}};return j}function ss(e){if(nn(e))return e=nt(e),e.children=null,e}function Er(e){if(!nn(e))return ki(e.type)&&e.children?Gi(e.children):e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&q(n.default))return n.default()}}function Yt(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Yt(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Xi(e,t=!1,n){let s=[],r=0;for(let i=0;i<e.length;i++){let o=e[i];const l=n==null?o.key:String(n)+String(o.key!=null?o.key:i);o.type===Se?(o.patchFlag&128&&r++,s=s.concat(Xi(o.children,t,l))):(t||o.type!==ye)&&s.push(l!=null?nt(o,{key:l}):o)}if(r>1)for(let i=0;i<s.length;i++)s[i].patchFlag=-2;return s}/*! #__NO_SIDE_EFFECTS__ */function Zs(e,t){return q(e)?fe({name:e.name},t,{setup:e}):e}function er(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function In(e,t,n,s,r=!1){if(K(e)){e.forEach((_,S)=>In(_,t&&(K(t)?t[S]:t),n,s,r));return}if(gt(s)&&!r)return;const i=s.shapeFlag&4?Xn(s.component):s.el,o=r?null:i,{i:l,r:c}=e,f=t&&t.r,a=l.refs===Z?l.refs={}:l.refs,h=l.setupState,g=z(h),v=h===Z?()=>!1:_=>J(g,_);if(f!=null&&f!==c&&(re(f)?(a[f]=null,v(f)&&(h[f]=null)):ae(f)&&(f.value=null)),q(c))en(c,l,12,[o,a]);else{const _=re(c),S=ae(c);if(_||S){const U=()=>{if(e.f){const N=_?v(c)?h[c]:a[c]:c.value;r?K(N)&&$s(N,i):K(N)?N.includes(i)||N.push(i):_?(a[c]=[i],v(c)&&(h[c]=a[c])):(c.value=[i],e.k&&(a[e.k]=c.value))}else _?(a[c]=o,v(c)&&(h[c]=o)):S&&(c.value=o,e.k&&(a[e.k]=o))};o?(U.id=-1,Ee(U,n)):U()}}}let xr=!1;const wt=()=>{xr||(console.error("Hydration completed but contains mismatches."),xr=!0)},sc=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",rc=e=>e.namespaceURI.includes("MathML"),mn=e=>{if(e.nodeType===1){if(sc(e))return"svg";if(rc(e))return"mathml"}},Tt=e=>e.nodeType===8;function ic(e){const{mt:t,p:n,o:{patchProp:s,createText:r,nextSibling:i,parentNode:o,remove:l,insert:c,createComment:f}}=e,a=(p,m)=>{if(!m.hasChildNodes()){n(null,p,m),Mn(),m._vnode=p;return}h(m.firstChild,p,null,null,null),Mn(),m._vnode=p},h=(p,m,M,F,H,j=!1)=>{j=j||!!m.dynamicChildren;const R=Tt(p)&&p.data==="[",b=()=>S(p,m,M,F,H,R),{type:L,ref:x,shapeFlag:W,patchFlag:se}=m;let ce=p.nodeType;m.el=p,se===-2&&(j=!1,m.dynamicChildren=null);let V=null;switch(L){case mt:ce!==3?m.children===""?(c(m.el=r(""),o(p),p),V=p):V=b():(p.data!==m.children&&(wt(),p.data=m.children),V=i(p));break;case ye:B(p)?(V=i(p),N(m.el=p.content.firstChild,p,M)):ce!==8||R?V=b():V=i(p);break;case Ut:if(R&&(p=i(p),ce=p.nodeType),ce===1||ce===3){V=p;const Y=!m.children.length;for(let $=0;$<m.staticCount;$++)Y&&(m.children+=V.nodeType===1?V.outerHTML:V.data),$===m.staticCount-1&&(m.anchor=V),V=i(V);return R?i(V):V}else b();break;case Se:R?V=_(p,m,M,F,H,j):V=b();break;default:if(W&1)(ce!==1||m.type.toLowerCase()!==p.tagName.toLowerCase())&&!B(p)?V=b():V=g(p,m,M,F,H,j);else if(W&6){m.slotScopeIds=H;const Y=o(p);if(R?V=U(p):Tt(p)&&p.data==="teleport start"?V=U(p,p.data,"teleport end"):V=i(p),t(m,Y,null,M,F,mn(Y),j),gt(m)){let $;R?($=le(Se),$.anchor=V?V.previousSibling:Y.lastChild):$=p.nodeType===3?xo(""):le("div"),$.el=p,m.component.subTree=$}}else W&64?ce!==8?V=b():V=m.type.hydrate(p,m,M,F,H,j,e,v):W&128&&(V=m.type.hydrate(p,m,M,F,mn(o(p)),H,j,e,h))}return x!=null&&In(x,null,F,m),V},g=(p,m,M,F,H,j)=>{j=j||!!m.dynamicChildren;const{type:R,props:b,patchFlag:L,shapeFlag:x,dirs:W,transition:se}=m,ce=R==="input"||R==="option";if(ce||L!==-1){W&&Ve(m,null,M,"created");let V=!1;if(B(p)){V=go(F,se)&&M&&M.vnode.props&&M.vnode.props.appear;const $=p.content.firstChild;V&&se.beforeEnter($),N($,p,M),m.el=p=$}if(x&16&&!(b&&(b.innerHTML||b.textContent))){let $=v(p.firstChild,m,p,M,F,H,j);for(;$;){yn(p,1)||wt();const he=$;$=$.nextSibling,l(he)}}else if(x&8){let $=m.children;$[0]===` -`&&(p.tagName==="PRE"||p.tagName==="TEXTAREA")&&($=$.slice(1)),p.textContent!==$&&(yn(p,0)||wt(),p.textContent=m.children)}if(b){if(ce||!j||L&48){const $=p.tagName.includes("-");for(const he in b)(ce&&(he.endsWith("value")||he==="indeterminate")||Zt(he)&&!Rt(he)||he[0]==="."||$)&&s(p,he,null,b[he],void 0,M)}else if(b.onClick)s(p,"onClick",null,b.onClick,void 0,M);else if(L&4&&pt(b.style))for(const $ in b.style)b.style[$]}let Y;(Y=b&&b.onVnodeBeforeMount)&&Oe(Y,M,m),W&&Ve(m,null,M,"beforeMount"),((Y=b&&b.onVnodeMounted)||W||V)&&_o(()=>{Y&&Oe(Y,M,m),V&&se.enter(p),W&&Ve(m,null,M,"mounted")},F)}return p.nextSibling},v=(p,m,M,F,H,j,R)=>{R=R||!!m.dynamicChildren;const b=m.children,L=b.length;for(let x=0;x<L;x++){const W=R?b[x]:b[x]=Me(b[x]),se=W.type===mt;p?(se&&!R&&x+1<L&&Me(b[x+1]).type===mt&&(c(r(p.data.slice(W.children.length)),M,i(p)),p.data=W.children),p=h(p,W,F,H,j,R)):se&&!W.children?c(W.el=r(""),M):(yn(M,1)||wt(),n(null,W,M,null,F,H,mn(M),j))}return p},_=(p,m,M,F,H,j)=>{const{slotScopeIds:R}=m;R&&(H=H?H.concat(R):R);const b=o(p),L=v(i(p),m,b,M,F,H,j);return L&&Tt(L)&&L.data==="]"?i(m.anchor=L):(wt(),c(m.anchor=f("]"),b,L),L)},S=(p,m,M,F,H,j)=>{if(yn(p.parentElement,1)||wt(),m.el=null,j){const L=U(p);for(;;){const x=i(p);if(x&&x!==L)l(x);else break}}const R=i(p),b=o(p);return l(p),n(null,m,b,R,M,F,mn(b),H),R},U=(p,m="[",M="]")=>{let F=0;for(;p;)if(p=i(p),p&&Tt(p)&&(p.data===m&&F++,p.data===M)){if(F===0)return i(p);F--}return p},N=(p,m,M)=>{const F=m.parentNode;F&&F.replaceChild(p,m);let H=M;for(;H;)H.vnode.el===m&&(H.vnode.el=H.subTree.el=p),H=H.parent},B=p=>p.nodeType===1&&p.tagName==="TEMPLATE";return[a,h]}const Tr="data-allow-mismatch",oc={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function yn(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(Tr);)e=e.parentElement;const n=e&&e.getAttribute(Tr);if(n==null)return!1;if(n==="")return!0;{const s=n.split(",");return t===0&&s.includes("children")?!0:n.split(",").includes(oc[t])}}function lc(e,t){if(Tt(e)&&e.data==="["){let n=1,s=e.nextSibling;for(;s;){if(s.nodeType===1){if(t(s)===!1)break}else if(Tt(s))if(s.data==="]"){if(--n===0)break}else s.data==="["&&n++;s=s.nextSibling}}else t(e)}const gt=e=>!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function Nf(e){q(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:r=200,hydrate:i,timeout:o,suspensible:l=!0,onError:c}=e;let f=null,a,h=0;const g=()=>(h++,f=null,v()),v=()=>{let _;return f||(_=f=t().catch(S=>{if(S=S instanceof Error?S:new Error(String(S)),c)return new Promise((U,N)=>{c(S,()=>U(g()),()=>N(S),h+1)});throw S}).then(S=>_!==f&&f?f:(S&&(S.__esModule||S[Symbol.toStringTag]==="Module")&&(S=S.default),a=S,S)))};return Zs({name:"AsyncComponentWrapper",__asyncLoader:v,__asyncHydrate(_,S,U){const N=i?()=>{const B=i(U,p=>lc(_,p));B&&(S.bum||(S.bum=[])).push(B)}:U;a?N():v().then(()=>!S.isUnmounted&&N())},get __asyncResolved(){return a},setup(){const _=ue;if(er(_),a)return()=>rs(a,_);const S=p=>{f=null,tn(p,_,13,!s)};if(l&&_.suspense||rn)return v().then(p=>()=>rs(p,_)).catch(p=>(S(p),()=>s?le(s,{error:p}):null));const U=oe(!1),N=oe(),B=oe(!!r);return r&&setTimeout(()=>{B.value=!1},r),o!=null&&setTimeout(()=>{if(!U.value&&!N.value){const p=new Error(`Async component timed out after ${o}ms.`);S(p),N.value=p}},o),v().then(()=>{U.value=!0,_.parent&&nn(_.parent.vnode)&&_.parent.update()}).catch(p=>{S(p),N.value=p}),()=>{if(U.value&&a)return rs(a,_);if(N.value&&s)return le(s,{error:N.value});if(n&&!B.value)return le(n)}}})}function rs(e,t){const{ref:n,props:s,children:r,ce:i}=t.vnode,o=le(e,s,r);return o.ref=n,o.ce=i,delete t.vnode.ce,o}const nn=e=>e.type.__isKeepAlive;function cc(e,t){zi(e,"a",t)}function ac(e,t){zi(e,"da",t)}function zi(e,t,n=ue){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(Wn(t,s,n),n){let r=n.parent;for(;r&&r.parent;)nn(r.parent.vnode)&&fc(s,t,n,r),r=r.parent}}function fc(e,t,n,s){const r=Wn(t,e,s,!0);Kn(()=>{$s(s[t],r)},n)}function Wn(e,t,n=ue,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{it();const l=sn(n),c=Fe(t,n,e,o);return l(),ot(),c});return s?r.unshift(i):r.push(i),i}}const Ye=e=>(t,n=ue)=>{(!rn||e==="sp")&&Wn(e,(...s)=>t(...s),n)},uc=Ye("bm"),Lt=Ye("m"),dc=Ye("bu"),hc=Ye("u"),Ji=Ye("bum"),Kn=Ye("um"),pc=Ye("sp"),gc=Ye("rtg"),mc=Ye("rtc");function yc(e,t=ue){Wn("ec",e,t)}const Qi="components";function Ff(e,t){return eo(Qi,e,!0,t)||e}const Zi=Symbol.for("v-ndc");function Df(e){return re(e)?eo(Qi,e,!1)||e:e||Zi}function eo(e,t,n=!0,s=!1){const r=de||ue;if(r){const i=r.type;{const l=na(i,!1);if(l&&(l===t||l===Ie(t)||l===Hn(Ie(t))))return i}const o=Cr(r[e]||i[e],t)||Cr(r.appContext[e],t);return!o&&s?i:o}}function Cr(e,t){return e&&(e[t]||e[Ie(t)]||e[Hn(Ie(t))])}function Hf(e,t,n,s){let r;const i=n,o=K(e);if(o||re(e)){const l=o&&pt(e);let c=!1;l&&(c=!Pe(e),e=jn(e)),r=new Array(e.length);for(let f=0,a=e.length;f<a;f++)r[f]=t(c?me(e[f]):e[f],f,void 0,i)}else if(typeof e=="number"){r=new Array(e);for(let l=0;l<e;l++)r[l]=t(l+1,l,void 0,i)}else if(ne(e))if(e[Symbol.iterator])r=Array.from(e,(l,c)=>t(l,c,void 0,i));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,f=l.length;c<f;c++){const a=l[c];r[c]=t(e[a],a,c,i)}}else r=[];return r}function $f(e,t,n={},s,r){if(de.ce||de.parent&>(de.parent)&&de.parent.ce)return t!=="default"&&(n.name=t),Ps(),Is(Se,null,[le("slot",n,s&&s())],64);let i=e[t];i&&i._c&&(i._d=!1),Ps();const o=i&&to(i(n)),l=Is(Se,{key:(n.key||o&&o.key||`_${t}`)+(!o&&s?"_fb":"")},o||(s?s():[]),o&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),i&&i._c&&(i._d=!0),l}function to(e){return e.some(t=>zt(t)?!(t.type===ye||t.type===Se&&!to(t.children)):!0)?e:null}function jf(e,t){const n={};for(const s in e)n[/[A-Z]/.test(s)?`on:${s}`:wn(s)]=e[s];return n}const As=e=>e?To(e)?Xn(e):As(e.parent):null,Vt=fe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>As(e.parent),$root:e=>As(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>tr(e),$forceUpdate:e=>e.f||(e.f=()=>{Qs(e.update)}),$nextTick:e=>e.n||(e.n=kn.bind(e.proxy)),$watch:e=>jc.bind(e)}),is=(e,t)=>e!==Z&&!e.__isScriptSetup&&J(e,t),vc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;let f;if(t[0]!=="$"){const v=o[t];if(v!==void 0)switch(v){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(is(s,t))return o[t]=1,s[t];if(r!==Z&&J(r,t))return o[t]=2,r[t];if((f=e.propsOptions[0])&&J(f,t))return o[t]=3,i[t];if(n!==Z&&J(n,t))return o[t]=4,n[t];Rs&&(o[t]=0)}}const a=Vt[t];let h,g;if(a)return t==="$attrs"&&ve(e.attrs,"get",""),a(e);if((h=l.__cssModules)&&(h=h[t]))return h;if(n!==Z&&J(n,t))return o[t]=4,n[t];if(g=c.config.globalProperties,J(g,t))return g[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return is(r,t)?(r[t]=n,!0):s!==Z&&J(s,t)?(s[t]=n,!0):J(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:i}},o){let l;return!!n[o]||e!==Z&&J(e,o)||is(t,o)||(l=i[0])&&J(l,o)||J(s,o)||J(Vt,o)||J(r.config.globalProperties,o)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:J(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Vf(){return bc().slots}function bc(){const e=Yn();return e.setupContext||(e.setupContext=Ao(e))}function Ar(e){return K(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Rs=!0;function _c(e){const t=tr(e),n=e.proxy,s=e.ctx;Rs=!1,t.beforeCreate&&Rr(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:f,created:a,beforeMount:h,mounted:g,beforeUpdate:v,updated:_,activated:S,deactivated:U,beforeDestroy:N,beforeUnmount:B,destroyed:p,unmounted:m,render:M,renderTracked:F,renderTriggered:H,errorCaptured:j,serverPrefetch:R,expose:b,inheritAttrs:L,components:x,directives:W,filters:se}=t;if(f&&wc(f,s,null),o)for(const Y in o){const $=o[Y];q($)&&(s[Y]=$.bind(n))}if(r){const Y=r.call(n,n);ne(Y)&&(e.data=Un(Y))}if(Rs=!0,i)for(const Y in i){const $=i[Y],he=q($)?$.bind(n,n):q($.get)?$.get.bind(n,n):Ue,on=!q($)&&q($.set)?$.set.bind(n):Ue,lt=ie({get:he,set:on});Object.defineProperty(s,Y,{enumerable:!0,configurable:!0,get:()=>lt.value,set:He=>lt.value=He})}if(l)for(const Y in l)no(l[Y],s,n,Y);if(c){const Y=q(c)?c.call(n):c;Reflect.ownKeys(Y).forEach($=>{Ac($,Y[$])})}a&&Rr(a,e,"c");function V(Y,$){K($)?$.forEach(he=>Y(he.bind(n))):$&&Y($.bind(n))}if(V(uc,h),V(Lt,g),V(dc,v),V(hc,_),V(cc,S),V(ac,U),V(yc,j),V(mc,F),V(gc,H),V(Ji,B),V(Kn,m),V(pc,R),K(b))if(b.length){const Y=e.exposed||(e.exposed={});b.forEach($=>{Object.defineProperty(Y,$,{get:()=>n[$],set:he=>n[$]=he})})}else e.exposed||(e.exposed={});M&&e.render===Ue&&(e.render=M),L!=null&&(e.inheritAttrs=L),x&&(e.components=x),W&&(e.directives=W),R&&er(e)}function wc(e,t,n=Ue){K(e)&&(e=Os(e));for(const s in e){const r=e[s];let i;ne(r)?"default"in r?i=Pt(r.from||s,r.default,!0):i=Pt(r.from||s):i=Pt(r),ae(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function Rr(e,t,n){Fe(K(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function no(e,t,n,s){let r=s.includes(".")?yo(n,s):()=>n[s];if(re(e)){const i=t[e];q(i)&&Be(r,i)}else if(q(e))Be(r,e.bind(n));else if(ne(e))if(K(e))e.forEach(i=>no(i,t,n,s));else{const i=q(e.handler)?e.handler.bind(n):t[e.handler];q(i)&&Be(r,i,e)}}function tr(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(f=>Ln(c,f,o,!0)),Ln(c,t,o)),ne(t)&&i.set(t,c),c}function Ln(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&Ln(e,i,n,!0),r&&r.forEach(o=>Ln(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=Sc[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const Sc={data:Or,props:Mr,emits:Mr,methods:$t,computed:$t,beforeCreate:be,created:be,beforeMount:be,mounted:be,beforeUpdate:be,updated:be,beforeDestroy:be,beforeUnmount:be,destroyed:be,unmounted:be,activated:be,deactivated:be,errorCaptured:be,serverPrefetch:be,components:$t,directives:$t,watch:xc,provide:Or,inject:Ec};function Or(e,t){return t?e?function(){return fe(q(e)?e.call(this,this):e,q(t)?t.call(this,this):t)}:t:e}function Ec(e,t){return $t(Os(e),Os(t))}function Os(e){if(K(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function be(e,t){return e?[...new Set([].concat(e,t))]:t}function $t(e,t){return e?fe(Object.create(null),e,t):t}function Mr(e,t){return e?K(e)&&K(t)?[...new Set([...e,...t])]:fe(Object.create(null),Ar(e),Ar(t??{})):t}function xc(e,t){if(!e)return t;if(!t)return e;const n=fe(Object.create(null),e);for(const s in t)n[s]=be(e[s],t[s]);return n}function so(){return{app:null,config:{isNativeTag:Jo,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Tc=0;function Cc(e,t){return function(s,r=null){q(s)||(s=fe({},s)),r!=null&&!ne(r)&&(r=null);const i=so(),o=new WeakSet,l=[];let c=!1;const f=i.app={_uid:Tc++,_component:s,_props:r,_container:null,_context:i,_instance:null,version:ra,get config(){return i.config},set config(a){},use(a,...h){return o.has(a)||(a&&q(a.install)?(o.add(a),a.install(f,...h)):q(a)&&(o.add(a),a(f,...h))),f},mixin(a){return i.mixins.includes(a)||i.mixins.push(a),f},component(a,h){return h?(i.components[a]=h,f):i.components[a]},directive(a,h){return h?(i.directives[a]=h,f):i.directives[a]},mount(a,h,g){if(!c){const v=f._ceVNode||le(s,r);return v.appContext=i,g===!0?g="svg":g===!1&&(g=void 0),h&&t?t(v,a):e(v,a,g),c=!0,f._container=a,a.__vue_app__=f,Xn(v.component)}},onUnmount(a){l.push(a)},unmount(){c&&(Fe(l,f._instance,16),e(null,f._container),delete f._container.__vue_app__)},provide(a,h){return i.provides[a]=h,f},runWithContext(a){const h=Mt;Mt=f;try{return a()}finally{Mt=h}}};return f}}let Mt=null;function Ac(e,t){if(ue){let n=ue.provides;const s=ue.parent&&ue.parent.provides;s===n&&(n=ue.provides=Object.create(s)),n[e]=t}}function Pt(e,t,n=!1){const s=ue||de;if(s||Mt){const r=Mt?Mt._context.provides:s?s.parent==null?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(r&&e in r)return r[e];if(arguments.length>1)return n&&q(t)?t.call(s&&s.proxy):t}}const ro={},io=()=>Object.create(ro),oo=e=>Object.getPrototypeOf(e)===ro;function Rc(e,t,n,s=!1){const r={},i=io();e.propsDefaults=Object.create(null),lo(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:Nl(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function Oc(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=z(r),[c]=e.propsOptions;let f=!1;if((s||o>0)&&!(o&16)){if(o&8){const a=e.vnode.dynamicProps;for(let h=0;h<a.length;h++){let g=a[h];if(Gn(e.emitsOptions,g))continue;const v=t[g];if(c)if(J(i,g))v!==i[g]&&(i[g]=v,f=!0);else{const _=Ie(g);r[_]=Ms(c,l,_,v,e,!1)}else v!==i[g]&&(i[g]=v,f=!0)}}}else{lo(e,t,r,i)&&(f=!0);let a;for(const h in l)(!t||!J(t,h)&&((a=rt(h))===h||!J(t,a)))&&(c?n&&(n[h]!==void 0||n[a]!==void 0)&&(r[h]=Ms(c,l,h,void 0,e,!0)):delete r[h]);if(i!==l)for(const h in i)(!t||!J(t,h))&&(delete i[h],f=!0)}f&&Ge(e.attrs,"set","")}function lo(e,t,n,s){const[r,i]=e.propsOptions;let o=!1,l;if(t)for(let c in t){if(Rt(c))continue;const f=t[c];let a;r&&J(r,a=Ie(c))?!i||!i.includes(a)?n[a]=f:(l||(l={}))[a]=f:Gn(e.emitsOptions,c)||(!(c in s)||f!==s[c])&&(s[c]=f,o=!0)}if(i){const c=z(n),f=l||Z;for(let a=0;a<i.length;a++){const h=i[a];n[h]=Ms(r,c,h,f[h],e,!J(f,h))}}return o}function Ms(e,t,n,s,r,i){const o=e[n];if(o!=null){const l=J(o,"default");if(l&&s===void 0){const c=o.default;if(o.type!==Function&&!o.skipFactory&&q(c)){const{propsDefaults:f}=r;if(n in f)s=f[n];else{const a=sn(r);s=f[n]=c.call(null,t),a()}}else s=c;r.ce&&r.ce._setProp(n,s)}o[0]&&(i&&!l?s=!1:o[1]&&(s===""||s===rt(n))&&(s=!0))}return s}const Mc=new WeakMap;function co(e,t,n=!1){const s=n?Mc:t.propsCache,r=s.get(e);if(r)return r;const i=e.props,o={},l=[];let c=!1;if(!q(e)){const a=h=>{c=!0;const[g,v]=co(h,t,!0);fe(o,g),v&&l.push(...v)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!i&&!c)return ne(e)&&s.set(e,Ct),Ct;if(K(i))for(let a=0;a<i.length;a++){const h=Ie(i[a]);Pr(h)&&(o[h]=Z)}else if(i)for(const a in i){const h=Ie(a);if(Pr(h)){const g=i[a],v=o[h]=K(g)||q(g)?{type:g}:fe({},g),_=v.type;let S=!1,U=!0;if(K(_))for(let N=0;N<_.length;++N){const B=_[N],p=q(B)&&B.name;if(p==="Boolean"){S=!0;break}else p==="String"&&(U=!1)}else S=q(_)&&_.name==="Boolean";v[0]=S,v[1]=U,(S||J(v,"default"))&&l.push(h)}}const f=[o,l];return ne(e)&&s.set(e,f),f}function Pr(e){return e[0]!=="$"&&!Rt(e)}const ao=e=>e[0]==="_"||e==="$stable",nr=e=>K(e)?e.map(Me):[Me(e)],Pc=(e,t,n)=>{if(t._n)return t;const s=zl((...r)=>nr(t(...r)),n);return s._c=!1,s},fo=(e,t,n)=>{const s=e._ctx;for(const r in e){if(ao(r))continue;const i=e[r];if(q(i))t[r]=Pc(r,i,s);else if(i!=null){const o=nr(i);t[r]=()=>o}}},uo=(e,t)=>{const n=nr(t);e.slots.default=()=>n},ho=(e,t,n)=>{for(const s in t)(n||s!=="_")&&(e[s]=t[s])},Ic=(e,t,n)=>{const s=e.slots=io();if(e.vnode.shapeFlag&32){const r=t._;r?(ho(s,t,n),n&&gi(s,"_",r,!0)):fo(t,s)}else t&&uo(e,t)},Lc=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=Z;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:ho(r,t,n):(i=!t.$stable,fo(t,r)),o=t}else t&&(uo(e,t),o={default:1});if(i)for(const l in r)!ao(l)&&o[l]==null&&delete r[l]},Ee=_o;function Nc(e){return po(e)}function Fc(e){return po(e,ic)}function po(e,t){const n=mi();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:f,setElementText:a,parentNode:h,nextSibling:g,setScopeId:v=Ue,insertStaticContent:_}=e,S=(u,d,y,T=null,w=null,E=null,P=void 0,O=null,A=!!d.dynamicChildren)=>{if(u===d)return;u&&!dt(u,d)&&(T=ln(u),He(u,w,E,!0),u=null),d.patchFlag===-2&&(A=!1,d.dynamicChildren=null);const{type:C,ref:k,shapeFlag:I}=d;switch(C){case mt:U(u,d,y,T);break;case ye:N(u,d,y,T);break;case Ut:u==null&&B(d,y,T,P);break;case Se:x(u,d,y,T,w,E,P,O,A);break;default:I&1?M(u,d,y,T,w,E,P,O,A):I&6?W(u,d,y,T,w,E,P,O,A):(I&64||I&128)&&C.process(u,d,y,T,w,E,P,O,A,bt)}k!=null&&w&&In(k,u&&u.ref,E,d||u,!d)},U=(u,d,y,T)=>{if(u==null)s(d.el=l(d.children),y,T);else{const w=d.el=u.el;d.children!==u.children&&f(w,d.children)}},N=(u,d,y,T)=>{u==null?s(d.el=c(d.children||""),y,T):d.el=u.el},B=(u,d,y,T)=>{[u.el,u.anchor]=_(u.children,d,y,T,u.el,u.anchor)},p=({el:u,anchor:d},y,T)=>{let w;for(;u&&u!==d;)w=g(u),s(u,y,T),u=w;s(d,y,T)},m=({el:u,anchor:d})=>{let y;for(;u&&u!==d;)y=g(u),r(u),u=y;r(d)},M=(u,d,y,T,w,E,P,O,A)=>{d.type==="svg"?P="svg":d.type==="math"&&(P="mathml"),u==null?F(d,y,T,w,E,P,O,A):R(u,d,w,E,P,O,A)},F=(u,d,y,T,w,E,P,O)=>{let A,C;const{props:k,shapeFlag:I,transition:D,dirs:G}=u;if(A=u.el=o(u.type,E,k&&k.is,k),I&8?a(A,u.children):I&16&&j(u.children,A,null,T,w,os(u,E),P,O),G&&Ve(u,null,T,"created"),H(A,u,u.scopeId,P,T),k){for(const ee in k)ee!=="value"&&!Rt(ee)&&i(A,ee,null,k[ee],E,T);"value"in k&&i(A,"value",null,k.value,E),(C=k.onVnodeBeforeMount)&&Oe(C,T,u)}G&&Ve(u,null,T,"beforeMount");const X=go(w,D);X&&D.beforeEnter(A),s(A,d,y),((C=k&&k.onVnodeMounted)||X||G)&&Ee(()=>{C&&Oe(C,T,u),X&&D.enter(A),G&&Ve(u,null,T,"mounted")},w)},H=(u,d,y,T,w)=>{if(y&&v(u,y),T)for(let E=0;E<T.length;E++)v(u,T[E]);if(w){let E=w.subTree;if(d===E||bo(E.type)&&(E.ssContent===d||E.ssFallback===d)){const P=w.vnode;H(u,P,P.scopeId,P.slotScopeIds,w.parent)}}},j=(u,d,y,T,w,E,P,O,A=0)=>{for(let C=A;C<u.length;C++){const k=u[C]=O?et(u[C]):Me(u[C]);S(null,k,d,y,T,w,E,P,O)}},R=(u,d,y,T,w,E,P)=>{const O=d.el=u.el;let{patchFlag:A,dynamicChildren:C,dirs:k}=d;A|=u.patchFlag&16;const I=u.props||Z,D=d.props||Z;let G;if(y&&ct(y,!1),(G=D.onVnodeBeforeUpdate)&&Oe(G,y,d,u),k&&Ve(d,u,y,"beforeUpdate"),y&&ct(y,!0),(I.innerHTML&&D.innerHTML==null||I.textContent&&D.textContent==null)&&a(O,""),C?b(u.dynamicChildren,C,O,y,T,os(d,w),E):P||$(u,d,O,null,y,T,os(d,w),E,!1),A>0){if(A&16)L(O,I,D,y,w);else if(A&2&&I.class!==D.class&&i(O,"class",null,D.class,w),A&4&&i(O,"style",I.style,D.style,w),A&8){const X=d.dynamicProps;for(let ee=0;ee<X.length;ee++){const Q=X[ee],xe=I[Q],pe=D[Q];(pe!==xe||Q==="value")&&i(O,Q,xe,pe,w,y)}}A&1&&u.children!==d.children&&a(O,d.children)}else!P&&C==null&&L(O,I,D,y,w);((G=D.onVnodeUpdated)||k)&&Ee(()=>{G&&Oe(G,y,d,u),k&&Ve(d,u,y,"updated")},T)},b=(u,d,y,T,w,E,P)=>{for(let O=0;O<d.length;O++){const A=u[O],C=d[O],k=A.el&&(A.type===Se||!dt(A,C)||A.shapeFlag&70)?h(A.el):y;S(A,C,k,null,T,w,E,P,!0)}},L=(u,d,y,T,w)=>{if(d!==y){if(d!==Z)for(const E in d)!Rt(E)&&!(E in y)&&i(u,E,d[E],null,w,T);for(const E in y){if(Rt(E))continue;const P=y[E],O=d[E];P!==O&&E!=="value"&&i(u,E,O,P,w,T)}"value"in y&&i(u,"value",d.value,y.value,w)}},x=(u,d,y,T,w,E,P,O,A)=>{const C=d.el=u?u.el:l(""),k=d.anchor=u?u.anchor:l("");let{patchFlag:I,dynamicChildren:D,slotScopeIds:G}=d;G&&(O=O?O.concat(G):G),u==null?(s(C,y,T),s(k,y,T),j(d.children||[],y,k,w,E,P,O,A)):I>0&&I&64&&D&&u.dynamicChildren?(b(u.dynamicChildren,D,y,w,E,P,O),(d.key!=null||w&&d===w.subTree)&&sr(u,d,!0)):$(u,d,y,k,w,E,P,O,A)},W=(u,d,y,T,w,E,P,O,A)=>{d.slotScopeIds=O,u==null?d.shapeFlag&512?w.ctx.activate(d,y,T,P,A):se(d,y,T,w,E,P,A):ce(u,d,A)},se=(u,d,y,T,w,E,P)=>{const O=u.component=Qc(u,T,w);if(nn(u)&&(O.ctx.renderer=bt),Zc(O,!1,P),O.asyncDep){if(w&&w.registerDep(O,V,P),!u.el){const A=O.subTree=le(ye);N(null,A,d,y)}}else V(O,u,d,y,w,E,P)},ce=(u,d,y)=>{const T=d.component=u.component;if(Wc(u,d,y))if(T.asyncDep&&!T.asyncResolved){Y(T,d,y);return}else T.next=d,T.update();else d.el=u.el,T.vnode=d},V=(u,d,y,T,w,E,P)=>{const O=()=>{if(u.isMounted){let{next:I,bu:D,u:G,parent:X,vnode:ee}=u;{const Te=mo(u);if(Te){I&&(I.el=ee.el,Y(u,I,P)),Te.asyncDep.then(()=>{u.isUnmounted||O()});return}}let Q=I,xe;ct(u,!1),I?(I.el=ee.el,Y(u,I,P)):I=ee,D&&Sn(D),(xe=I.props&&I.props.onVnodeBeforeUpdate)&&Oe(xe,X,I,ee),ct(u,!0);const pe=ls(u),Le=u.subTree;u.subTree=pe,S(Le,pe,h(Le.el),ln(Le),u,w,E),I.el=pe.el,Q===null&&Kc(u,pe.el),G&&Ee(G,w),(xe=I.props&&I.props.onVnodeUpdated)&&Ee(()=>Oe(xe,X,I,ee),w)}else{let I;const{el:D,props:G}=d,{bm:X,m:ee,parent:Q,root:xe,type:pe}=u,Le=gt(d);if(ct(u,!1),X&&Sn(X),!Le&&(I=G&&G.onVnodeBeforeMount)&&Oe(I,Q,d),ct(u,!0),D&&Qn){const Te=()=>{u.subTree=ls(u),Qn(D,u.subTree,u,w,null)};Le&&pe.__asyncHydrate?pe.__asyncHydrate(D,u,Te):Te()}else{xe.ce&&xe.ce._injectChildStyle(pe);const Te=u.subTree=ls(u);S(null,Te,y,T,u,w,E),d.el=Te.el}if(ee&&Ee(ee,w),!Le&&(I=G&&G.onVnodeMounted)){const Te=d;Ee(()=>Oe(I,Q,Te),w)}(d.shapeFlag&256||Q&>(Q.vnode)&&Q.vnode.shapeFlag&256)&&u.a&&Ee(u.a,w),u.isMounted=!0,d=y=T=null}};u.scope.on();const A=u.effect=new wi(O);u.scope.off();const C=u.update=A.run.bind(A),k=u.job=A.runIfDirty.bind(A);k.i=u,k.id=u.uid,A.scheduler=()=>Qs(k),ct(u,!0),C()},Y=(u,d,y)=>{d.component=u;const T=u.vnode.props;u.vnode=d,u.next=null,Oc(u,d.props,T,y),Lc(u,d.children,y),it(),_r(u),ot()},$=(u,d,y,T,w,E,P,O,A=!1)=>{const C=u&&u.children,k=u?u.shapeFlag:0,I=d.children,{patchFlag:D,shapeFlag:G}=d;if(D>0){if(D&128){on(C,I,y,T,w,E,P,O,A);return}else if(D&256){he(C,I,y,T,w,E,P,O,A);return}}G&8?(k&16&&Nt(C,w,E),I!==C&&a(y,I)):k&16?G&16?on(C,I,y,T,w,E,P,O,A):Nt(C,w,E,!0):(k&8&&a(y,""),G&16&&j(I,y,T,w,E,P,O,A))},he=(u,d,y,T,w,E,P,O,A)=>{u=u||Ct,d=d||Ct;const C=u.length,k=d.length,I=Math.min(C,k);let D;for(D=0;D<I;D++){const G=d[D]=A?et(d[D]):Me(d[D]);S(u[D],G,y,null,w,E,P,O,A)}C>k?Nt(u,w,E,!0,!1,I):j(d,y,T,w,E,P,O,A,I)},on=(u,d,y,T,w,E,P,O,A)=>{let C=0;const k=d.length;let I=u.length-1,D=k-1;for(;C<=I&&C<=D;){const G=u[C],X=d[C]=A?et(d[C]):Me(d[C]);if(dt(G,X))S(G,X,y,null,w,E,P,O,A);else break;C++}for(;C<=I&&C<=D;){const G=u[I],X=d[D]=A?et(d[D]):Me(d[D]);if(dt(G,X))S(G,X,y,null,w,E,P,O,A);else break;I--,D--}if(C>I){if(C<=D){const G=D+1,X=G<k?d[G].el:T;for(;C<=D;)S(null,d[C]=A?et(d[C]):Me(d[C]),y,X,w,E,P,O,A),C++}}else if(C>D)for(;C<=I;)He(u[C],w,E,!0),C++;else{const G=C,X=C,ee=new Map;for(C=X;C<=D;C++){const Ce=d[C]=A?et(d[C]):Me(d[C]);Ce.key!=null&&ee.set(Ce.key,C)}let Q,xe=0;const pe=D-X+1;let Le=!1,Te=0;const Ft=new Array(pe);for(C=0;C<pe;C++)Ft[C]=0;for(C=G;C<=I;C++){const Ce=u[C];if(xe>=pe){He(Ce,w,E,!0);continue}let $e;if(Ce.key!=null)$e=ee.get(Ce.key);else for(Q=X;Q<=D;Q++)if(Ft[Q-X]===0&&dt(Ce,d[Q])){$e=Q;break}$e===void 0?He(Ce,w,E,!0):(Ft[$e-X]=C+1,$e>=Te?Te=$e:Le=!0,S(Ce,d[$e],y,null,w,E,P,O,A),xe++)}const ur=Le?Dc(Ft):Ct;for(Q=ur.length-1,C=pe-1;C>=0;C--){const Ce=X+C,$e=d[Ce],dr=Ce+1<k?d[Ce+1].el:T;Ft[C]===0?S(null,$e,y,dr,w,E,P,O,A):Le&&(Q<0||C!==ur[Q]?lt($e,y,dr,2):Q--)}}},lt=(u,d,y,T,w=null)=>{const{el:E,type:P,transition:O,children:A,shapeFlag:C}=u;if(C&6){lt(u.component.subTree,d,y,T);return}if(C&128){u.suspense.move(d,y,T);return}if(C&64){P.move(u,d,y,bt);return}if(P===Se){s(E,d,y);for(let I=0;I<A.length;I++)lt(A[I],d,y,T);s(u.anchor,d,y);return}if(P===Ut){p(u,d,y);return}if(T!==2&&C&1&&O)if(T===0)O.beforeEnter(E),s(E,d,y),Ee(()=>O.enter(E),w);else{const{leave:I,delayLeave:D,afterLeave:G}=O,X=()=>s(E,d,y),ee=()=>{I(E,()=>{X(),G&&G()})};D?D(E,X,ee):ee()}else s(E,d,y)},He=(u,d,y,T=!1,w=!1)=>{const{type:E,props:P,ref:O,children:A,dynamicChildren:C,shapeFlag:k,patchFlag:I,dirs:D,cacheIndex:G}=u;if(I===-2&&(w=!1),O!=null&&In(O,null,y,u,!0),G!=null&&(d.renderCache[G]=void 0),k&256){d.ctx.deactivate(u);return}const X=k&1&&D,ee=!gt(u);let Q;if(ee&&(Q=P&&P.onVnodeBeforeUnmount)&&Oe(Q,d,u),k&6)zo(u.component,y,T);else{if(k&128){u.suspense.unmount(y,T);return}X&&Ve(u,null,d,"beforeUnmount"),k&64?u.type.remove(u,d,y,bt,T):C&&!C.hasOnce&&(E!==Se||I>0&&I&64)?Nt(C,d,y,!1,!0):(E===Se&&I&384||!w&&k&16)&&Nt(A,d,y),T&&ar(u)}(ee&&(Q=P&&P.onVnodeUnmounted)||X)&&Ee(()=>{Q&&Oe(Q,d,u),X&&Ve(u,null,d,"unmounted")},y)},ar=u=>{const{type:d,el:y,anchor:T,transition:w}=u;if(d===Se){Xo(y,T);return}if(d===Ut){m(u);return}const E=()=>{r(y),w&&!w.persisted&&w.afterLeave&&w.afterLeave()};if(u.shapeFlag&1&&w&&!w.persisted){const{leave:P,delayLeave:O}=w,A=()=>P(y,E);O?O(u.el,E,A):A()}else E()},Xo=(u,d)=>{let y;for(;u!==d;)y=g(u),r(u),u=y;r(d)},zo=(u,d,y)=>{const{bum:T,scope:w,job:E,subTree:P,um:O,m:A,a:C}=u;Ir(A),Ir(C),T&&Sn(T),w.stop(),E&&(E.flags|=8,He(P,u,d,y)),O&&Ee(O,d),Ee(()=>{u.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&u.asyncDep&&!u.asyncResolved&&u.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},Nt=(u,d,y,T=!1,w=!1,E=0)=>{for(let P=E;P<u.length;P++)He(u[P],d,y,T,w)},ln=u=>{if(u.shapeFlag&6)return ln(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const d=g(u.anchor||u.el),y=d&&d[Bi];return y?g(y):d};let zn=!1;const fr=(u,d,y)=>{u==null?d._vnode&&He(d._vnode,null,null,!0):S(d._vnode||null,u,d,null,null,null,y),d._vnode=u,zn||(zn=!0,_r(),Mn(),zn=!1)},bt={p:S,um:He,m:lt,r:ar,mt:se,mc:j,pc:$,pbc:b,n:ln,o:e};let Jn,Qn;return t&&([Jn,Qn]=t(bt)),{render:fr,hydrate:Jn,createApp:Cc(fr,Jn)}}function os({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function ct({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function go(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function sr(e,t,n=!1){const s=e.children,r=t.children;if(K(s)&&K(r))for(let i=0;i<s.length;i++){const o=s[i];let l=r[i];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=r[i]=et(r[i]),l.el=o.el),!n&&l.patchFlag!==-2&&sr(o,l)),l.type===mt&&(l.el=o.el)}}function Dc(e){const t=e.slice(),n=[0];let s,r,i,o,l;const c=e.length;for(s=0;s<c;s++){const f=e[s];if(f!==0){if(r=n[n.length-1],e[r]<f){t[s]=r,n.push(s);continue}for(i=0,o=n.length-1;i<o;)l=i+o>>1,e[n[l]]<f?i=l+1:o=l;f<e[n[i]]&&(i>0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function mo(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:mo(t)}function Ir(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}const Hc=Symbol.for("v-scx"),$c=()=>Pt(Hc);function rr(e,t){return qn(e,null,t)}function Uf(e,t){return qn(e,null,{flush:"post"})}function Be(e,t,n){return qn(e,t,n)}function qn(e,t,n=Z){const{immediate:s,deep:r,flush:i,once:o}=n,l=fe({},n);let c;if(rn)if(i==="sync"){const g=$c();c=g.__watcherHandles||(g.__watcherHandles=[])}else if(!t||s)l.once=!0;else{const g=()=>{};return g.stop=Ue,g.resume=Ue,g.pause=Ue,g}const f=ue;l.call=(g,v,_)=>Fe(g,f,v,_);let a=!1;i==="post"?l.scheduler=g=>{Ee(g,f&&f.suspense)}:i!=="sync"&&(a=!0,l.scheduler=(g,v)=>{v?g():Qs(g)}),l.augmentJob=g=>{t&&(g.flags|=4),a&&(g.flags|=2,f&&(g.id=f.uid,g.i=f))};const h=ql(e,t,l);return c&&c.push(h),h}function jc(e,t,n){const s=this.proxy,r=re(e)?e.includes(".")?yo(s,e):()=>s[e]:e.bind(s,s);let i;q(t)?i=t:(i=t.handler,n=t);const o=sn(this),l=qn(r,i.bind(s),n);return o(),l}function yo(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r<n.length&&s;r++)s=s[n[r]];return s}}const Vc=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ie(t)}Modifiers`]||e[`${rt(t)}Modifiers`];function Uc(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||Z;let r=n;const i=t.startsWith("update:"),o=i&&Vc(s,t.slice(7));o&&(o.trim&&(r=n.map(a=>re(a)?a.trim():a)),o.number&&(r=n.map(ws)));let l,c=s[l=wn(t)]||s[l=wn(Ie(t))];!c&&i&&(c=s[l=wn(rt(t))]),c&&Fe(c,e,6,r);const f=s[l+"Once"];if(f){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Fe(f,e,6,r)}}function vo(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!q(e)){const c=f=>{const a=vo(f,t,!0);a&&(l=!0,fe(o,a))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?(ne(e)&&s.set(e,null),null):(K(i)?i.forEach(c=>o[c]=null):fe(o,i),ne(e)&&s.set(e,o),o)}function Gn(e,t){return!e||!Zt(t)?!1:(t=t.slice(2).replace(/Once$/,""),J(e,t[0].toLowerCase()+t.slice(1))||J(e,rt(t))||J(e,t))}function ls(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:c,render:f,renderCache:a,props:h,data:g,setupState:v,ctx:_,inheritAttrs:S}=e,U=Pn(e);let N,B;try{if(n.shapeFlag&4){const m=r||s,M=m;N=Me(f.call(M,m,a,h,v,g,_)),B=l}else{const m=t;N=Me(m.length>1?m(h,{attrs:l,slots:o,emit:c}):m(h,null)),B=t.props?l:Bc(l)}}catch(m){Bt.length=0,tn(m,e,1),N=le(ye)}let p=N;if(B&&S!==!1){const m=Object.keys(B),{shapeFlag:M}=p;m.length&&M&7&&(i&&m.some(Hs)&&(B=kc(B,i)),p=nt(p,B,!1,!0))}return n.dirs&&(p=nt(p,null,!1,!0),p.dirs=p.dirs?p.dirs.concat(n.dirs):n.dirs),n.transition&&Yt(p,n.transition),N=p,Pn(U),N}const Bc=e=>{let t;for(const n in e)(n==="class"||n==="style"||Zt(n))&&((t||(t={}))[n]=e[n]);return t},kc=(e,t)=>{const n={};for(const s in e)(!Hs(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Wc(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,f=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?Lr(s,o,f):!!o;if(c&8){const a=t.dynamicProps;for(let h=0;h<a.length;h++){const g=a[h];if(o[g]!==s[g]&&!Gn(f,g))return!0}}}else return(r||l)&&(!l||!l.$stable)?!0:s===o?!1:s?o?Lr(s,o,f):!0:!!o;return!1}function Lr(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let r=0;r<s.length;r++){const i=s[r];if(t[i]!==e[i]&&!Gn(n,i))return!0}return!1}function Kc({vnode:e,parent:t},n){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.el=e.el),s===e)(e=t.vnode).el=n,t=t.parent;else break}}const bo=e=>e.__isSuspense;function _o(e,t){t&&t.pendingBranch?K(e)?t.effects.push(...e):t.effects.push(e):Xl(e)}const Se=Symbol.for("v-fgt"),mt=Symbol.for("v-txt"),ye=Symbol.for("v-cmt"),Ut=Symbol.for("v-stc"),Bt=[];let Ae=null;function Ps(e=!1){Bt.push(Ae=e?null:[])}function qc(){Bt.pop(),Ae=Bt[Bt.length-1]||null}let Xt=1;function Nr(e){Xt+=e,e<0&&Ae&&(Ae.hasOnce=!0)}function wo(e){return e.dynamicChildren=Xt>0?Ae||Ct:null,qc(),Xt>0&&Ae&&Ae.push(e),e}function Bf(e,t,n,s,r,i){return wo(Eo(e,t,n,s,r,i,!0))}function Is(e,t,n,s,r){return wo(le(e,t,n,s,r,!0))}function zt(e){return e?e.__v_isVNode===!0:!1}function dt(e,t){return e.type===t.type&&e.key===t.key}const So=({key:e})=>e??null,Tn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?re(e)||ae(e)||q(e)?{i:de,r:e,k:t,f:!!n}:e:null);function Eo(e,t=null,n=null,s=0,r=null,i=e===Se?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&So(t),ref:t&&Tn(t),scopeId:Ui,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:de};return l?(ir(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=re(n)?8:16),Xt>0&&!o&&Ae&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Ae.push(c),c}const le=Gc;function Gc(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Zi)&&(e=ye),zt(e)){const l=nt(e,t,!0);return n&&ir(l,n),Xt>0&&!i&&Ae&&(l.shapeFlag&6?Ae[Ae.indexOf(e)]=l:Ae.push(l)),l.patchFlag=-2,l}if(sa(e)&&(e=e.__vccOpts),t){t=Yc(t);let{class:l,style:c}=t;l&&!re(l)&&(t.class=Us(l)),ne(c)&&(Ys(c)&&!K(c)&&(c=fe({},c)),t.style=Vs(c))}const o=re(e)?1:bo(e)?128:ki(e)?64:ne(e)?4:q(e)?2:0;return Eo(e,t,n,s,r,o,i,!0)}function Yc(e){return e?Ys(e)||oo(e)?fe({},e):e:null}function nt(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:c}=e,f=t?Xc(r||{},t):r,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:f,key:f&&So(f),ref:t&&t.ref?n&&i?K(i)?i.concat(Tn(t)):[i,Tn(t)]:Tn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Se?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&nt(e.ssContent),ssFallback:e.ssFallback&&nt(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Yt(a,c.clone(a)),a}function xo(e=" ",t=0){return le(mt,null,e,t)}function kf(e,t){const n=le(Ut,null,e);return n.staticCount=t,n}function Wf(e="",t=!1){return t?(Ps(),Is(ye,null,e)):le(ye,null,e)}function Me(e){return e==null||typeof e=="boolean"?le(ye):K(e)?le(Se,null,e.slice()):zt(e)?et(e):le(mt,null,String(e))}function et(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:nt(e)}function ir(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(K(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),ir(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!oo(t)?t._ctx=de:r===3&&de&&(de.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else q(t)?(t={default:t,_ctx:de},n=32):(t=String(t),s&64?(n=16,t=[xo(t)]):n=8);e.children=t,e.shapeFlag|=n}function Xc(...e){const t={};for(let n=0;n<e.length;n++){const s=e[n];for(const r in s)if(r==="class")t.class!==s.class&&(t.class=Us([t.class,s.class]));else if(r==="style")t.style=Vs([t.style,s.style]);else if(Zt(r)){const i=t[r],o=s[r];o&&i!==o&&!(K(i)&&i.includes(o))&&(t[r]=i?[].concat(i,o):o)}else r!==""&&(t[r]=s[r])}return t}function Oe(e,t,n,s=null){Fe(e,t,7,[n,s])}const zc=so();let Jc=0;function Qc(e,t,n){const s=e.type,r=(t?t.appContext:e.appContext)||zc,i={uid:Jc++,vnode:e,type:s,parent:t,appContext:r,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new fl(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(r.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:co(s,r),emitsOptions:vo(s,r),emit:null,emitted:null,propsDefaults:Z,inheritAttrs:s.inheritAttrs,ctx:Z,data:Z,props:Z,attrs:Z,slots:Z,refs:Z,setupState:Z,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=Uc.bind(null,i),e.ce&&e.ce(i),i}let ue=null;const Yn=()=>ue||de;let Nn,Ls;{const e=mi(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Nn=t("__VUE_INSTANCE_SETTERS__",n=>ue=n),Ls=t("__VUE_SSR_SETTERS__",n=>rn=n)}const sn=e=>{const t=ue;return Nn(e),e.scope.on(),()=>{e.scope.off(),Nn(t)}},Fr=()=>{ue&&ue.scope.off(),Nn(null)};function To(e){return e.vnode.shapeFlag&4}let rn=!1;function Zc(e,t=!1,n=!1){t&&Ls(t);const{props:s,children:r}=e.vnode,i=To(e);Rc(e,s,i,t),Ic(e,r,n);const o=i?ea(e,t):void 0;return t&&Ls(!1),o}function ea(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,vc);const{setup:s}=n;if(s){const r=e.setupContext=s.length>1?Ao(e):null,i=sn(e);it();const o=en(s,e,0,[e.props,r]);if(ot(),i(),di(o)){if(gt(e)||er(e),o.then(Fr,Fr),t)return o.then(l=>{Dr(e,l,t)}).catch(l=>{tn(l,e,0)});e.asyncDep=o}else Dr(e,o,t)}else Co(e,t)}function Dr(e,t,n){q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ne(t)&&(e.setupState=Hi(t)),Co(e,n)}let Hr;function Co(e,t,n){const s=e.type;if(!e.render){if(!t&&Hr&&!s.render){const r=s.template||tr(e).template;if(r){const{isCustomElement:i,compilerOptions:o}=e.appContext.config,{delimiters:l,compilerOptions:c}=s,f=fe(fe({isCustomElement:i,delimiters:l},o),c);s.render=Hr(r,f)}}e.render=s.render||Ue}{const r=sn(e);it();try{_c(e)}finally{ot(),r()}}}const ta={get(e,t){return ve(e,"get",""),e[t]}};function Ao(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,ta),slots:e.slots,emit:e.emit,expose:t}}function Xn(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Hi(En(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Vt)return Vt[n](e)},has(t,n){return n in t||n in Vt}})):e.proxy}function na(e,t=!0){return q(e)?e.displayName||e.name:e.name||t&&e.__name}function sa(e){return q(e)&&"__vccOpts"in e}const ie=(e,t)=>Wl(e,t,rn);function Ns(e,t,n){const s=arguments.length;return s===2?ne(t)&&!K(t)?zt(t)?le(e,null,[t]):le(e,t):le(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&zt(n)&&(n=[n]),le(e,t,n))}const ra="3.5.10";/** -* @vue/runtime-dom v3.5.10 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let Fs;const $r=typeof window<"u"&&window.trustedTypes;if($r)try{Fs=$r.createPolicy("vue",{createHTML:e=>e})}catch{}const Ro=Fs?e=>Fs.createHTML(e):e=>e,ia="http://www.w3.org/2000/svg",oa="http://www.w3.org/1998/Math/MathML",Ke=typeof document<"u"?document:null,jr=Ke&&Ke.createElement("template"),la={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?Ke.createElementNS(ia,e):t==="mathml"?Ke.createElementNS(oa,e):n?Ke.createElement(e,{is:n}):Ke.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>Ke.createTextNode(e),createComment:e=>Ke.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ke.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{jr.innerHTML=Ro(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const l=jr.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},ze="transition",Ht="animation",Jt=Symbol("_vtc"),Oo={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},ca=fe({},Ki,Oo),aa=e=>(e.displayName="Transition",e.props=ca,e),Kf=aa((e,{slots:t})=>Ns(nc,fa(e),t)),at=(e,t=[])=>{K(e)?e.forEach(n=>n(...t)):e&&e(...t)},Vr=e=>e?K(e)?e.some(t=>t.length>1):e.length>1:!1;function fa(e){const t={};for(const x in e)x in Oo||(t[x]=e[x]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:f=o,appearToClass:a=l,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:g=`${n}-leave-active`,leaveToClass:v=`${n}-leave-to`}=e,_=ua(r),S=_&&_[0],U=_&&_[1],{onBeforeEnter:N,onEnter:B,onEnterCancelled:p,onLeave:m,onLeaveCancelled:M,onBeforeAppear:F=N,onAppear:H=B,onAppearCancelled:j=p}=t,R=(x,W,se)=>{ft(x,W?a:l),ft(x,W?f:o),se&&se()},b=(x,W)=>{x._isLeaving=!1,ft(x,h),ft(x,v),ft(x,g),W&&W()},L=x=>(W,se)=>{const ce=x?H:B,V=()=>R(W,x,se);at(ce,[W,V]),Ur(()=>{ft(W,x?c:i),Je(W,x?a:l),Vr(ce)||Br(W,s,S,V)})};return fe(t,{onBeforeEnter(x){at(N,[x]),Je(x,i),Je(x,o)},onBeforeAppear(x){at(F,[x]),Je(x,c),Je(x,f)},onEnter:L(!1),onAppear:L(!0),onLeave(x,W){x._isLeaving=!0;const se=()=>b(x,W);Je(x,h),Je(x,g),pa(),Ur(()=>{x._isLeaving&&(ft(x,h),Je(x,v),Vr(m)||Br(x,s,U,se))}),at(m,[x,se])},onEnterCancelled(x){R(x,!1),at(p,[x])},onAppearCancelled(x){R(x,!0),at(j,[x])},onLeaveCancelled(x){b(x),at(M,[x])}})}function ua(e){if(e==null)return null;if(ne(e))return[cs(e.enter),cs(e.leave)];{const t=cs(e);return[t,t]}}function cs(e){return nl(e)}function Je(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Jt]||(e[Jt]=new Set)).add(t)}function ft(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[Jt];n&&(n.delete(t),n.size||(e[Jt]=void 0))}function Ur(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let da=0;function Br(e,t,n,s){const r=e._endId=++da,i=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(i,n);const{type:o,timeout:l,propCount:c}=ha(e,t);if(!o)return s();const f=o+"end";let a=0;const h=()=>{e.removeEventListener(f,g),i()},g=v=>{v.target===e&&++a>=c&&h()};setTimeout(()=>{a<c&&h()},l+1),e.addEventListener(f,g)}function ha(e,t){const n=window.getComputedStyle(e),s=_=>(n[_]||"").split(", "),r=s(`${ze}Delay`),i=s(`${ze}Duration`),o=kr(r,i),l=s(`${Ht}Delay`),c=s(`${Ht}Duration`),f=kr(l,c);let a=null,h=0,g=0;t===ze?o>0&&(a=ze,h=o,g=i.length):t===Ht?f>0&&(a=Ht,h=f,g=c.length):(h=Math.max(o,f),a=h>0?o>f?ze:Ht:null,g=a?a===ze?i.length:c.length:0);const v=a===ze&&/\b(transform|all)(,|$)/.test(s(`${ze}Property`).toString());return{type:a,timeout:h,propCount:g,hasTransform:v}}function kr(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,s)=>Wr(n)+Wr(e[s])))}function Wr(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function pa(){return document.body.offsetHeight}function ga(e,t,n){const s=e[Jt];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Kr=Symbol("_vod"),ma=Symbol("_vsh"),ya=Symbol(""),va=/(^|;)\s*display\s*:/;function ba(e,t,n){const s=e.style,r=re(n);let i=!1;if(n&&!r){if(t)if(re(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&Cn(s,l,"")}else for(const o in t)n[o]==null&&Cn(s,o,"");for(const o in n)o==="display"&&(i=!0),Cn(s,o,n[o])}else if(r){if(t!==n){const o=s[ya];o&&(n+=";"+o),s.cssText=n,i=va.test(n)}}else t&&e.removeAttribute("style");Kr in e&&(e[Kr]=i?s.display:"",e[ma]&&(s.display="none"))}const qr=/\s*!important$/;function Cn(e,t,n){if(K(n))n.forEach(s=>Cn(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=_a(e,t);qr.test(n)?e.setProperty(rt(s),n.replace(qr,""),"important"):e[s]=n}}const Gr=["Webkit","Moz","ms"],as={};function _a(e,t){const n=as[t];if(n)return n;let s=Ie(t);if(s!=="filter"&&s in e)return as[t]=s;s=Hn(s);for(let r=0;r<Gr.length;r++){const i=Gr[r]+s;if(i in e)return as[t]=i}return t}const Yr="http://www.w3.org/1999/xlink";function Xr(e,t,n,s,r,i=cl(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Yr,t.slice(6,t.length)):e.setAttributeNS(Yr,t,n):n==null||i&&!yi(n)?e.removeAttribute(t):e.setAttribute(t,i?"":st(n)?String(n):n)}function zr(e,t,n,s){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?Ro(n):n);return}const r=e.tagName;if(t==="value"&&r!=="PROGRESS"&&!r.includes("-")){const o=r==="OPTION"?e.getAttribute("value")||"":e.value,l=n==null?e.type==="checkbox"?"on":"":String(n);(o!==l||!("_value"in e))&&(e.value=l),n==null&&e.removeAttribute(t),e._value=n;return}let i=!1;if(n===""||n==null){const o=typeof e[t];o==="boolean"?n=yi(n):n==null&&o==="string"?(n="",i=!0):o==="number"&&(n=0,i=!0)}try{e[t]=n}catch{}i&&e.removeAttribute(t)}function Et(e,t,n,s){e.addEventListener(t,n,s)}function wa(e,t,n,s){e.removeEventListener(t,n,s)}const Jr=Symbol("_vei");function Sa(e,t,n,s,r=null){const i=e[Jr]||(e[Jr]={}),o=i[t];if(s&&o)o.value=s;else{const[l,c]=Ea(t);if(s){const f=i[t]=Ca(s,r);Et(e,l,f,c)}else o&&(wa(e,l,o,c),i[t]=void 0)}}const Qr=/(?:Once|Passive|Capture)$/;function Ea(e){let t;if(Qr.test(e)){t={};let s;for(;s=e.match(Qr);)e=e.slice(0,e.length-s[0].length),t[s[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):rt(e.slice(2)),t]}let fs=0;const xa=Promise.resolve(),Ta=()=>fs||(xa.then(()=>fs=0),fs=Date.now());function Ca(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;Fe(Aa(s,n.value),t,5,[s])};return n.value=e,n.attached=Ta(),n}function Aa(e,t){if(K(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Zr=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Ra=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?ga(e,s,o):t==="style"?ba(e,n,s):Zt(t)?Hs(t)||Sa(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Oa(e,t,s,o))?(zr(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Xr(e,t,s,o,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!re(s))?zr(e,Ie(t),s):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),Xr(e,t,s,o))};function Oa(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Zr(t)&&q(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Zr(t)&&re(n)?!1:t in e}const ei=e=>{const t=e.props["onUpdate:modelValue"]||!1;return K(t)?n=>Sn(t,n):t};function Ma(e){e.target.composing=!0}function ti(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const us=Symbol("_assign"),qf={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[us]=ei(r);const i=s||r.props&&r.props.type==="number";Et(e,t?"change":"input",o=>{if(o.target.composing)return;let l=e.value;n&&(l=l.trim()),i&&(l=ws(l)),e[us](l)}),n&&Et(e,"change",()=>{e.value=e.value.trim()}),t||(Et(e,"compositionstart",Ma),Et(e,"compositionend",ti),Et(e,"change",ti))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[us]=ei(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?ws(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c))}},Pa=["ctrl","shift","alt","meta"],Ia={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Pa.some(n=>e[`${n}Key`]&&!t.includes(n))},Gf=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...i)=>{for(let o=0;o<t.length;o++){const l=Ia[t[o]];if(l&&l(r,t))return}return e(r,...i)})},La={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Yf=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const i=rt(r.key);if(t.some(o=>o===i||La[o]===i))return e(r)})},Mo=fe({patchProp:Ra},la);let kt,ni=!1;function Na(){return kt||(kt=Nc(Mo))}function Fa(){return kt=ni?kt:Fc(Mo),ni=!0,kt}const Xf=(...e)=>{const t=Na().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Io(s);if(!r)return;const i=t._component;!q(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,Po(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t},zf=(...e)=>{const t=Fa().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=Io(s);if(r)return n(r,!0,Po(r))},t};function Po(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Io(e){return re(e)?document.querySelector(e):e}const Jf=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Da=window.__VP_SITE_DATA__;function or(e){return _i()?(ul(e),!0):!1}function ke(e){return typeof e=="function"?e():Di(e)}const Lo=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Qf=e=>e!=null,Ha=Object.prototype.toString,$a=e=>Ha.call(e)==="[object Object]",Qt=()=>{},si=ja();function ja(){var e,t;return Lo&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window==null?void 0:window.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function Va(e,t){function n(...s){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,s),{fn:t,thisArg:this,args:s})).then(r).catch(i)})}return n}const No=e=>e();function Ua(e,t={}){let n,s,r=Qt;const i=l=>{clearTimeout(l),r(),r=Qt};return l=>{const c=ke(e),f=ke(t.maxWait);return n&&i(n),c<=0||f!==void 0&&f<=0?(s&&(i(s),s=null),Promise.resolve(l())):new Promise((a,h)=>{r=t.rejectOnCancel?h:a,f&&!s&&(s=setTimeout(()=>{n&&i(n),s=null,a(l())},f)),n=setTimeout(()=>{s&&i(s),s=null,a(l())},c)})}}function Ba(e=No){const t=oe(!0);function n(){t.value=!1}function s(){t.value=!0}const r=(...i)=>{t.value&&e(...i)};return{isActive:Bn(t),pause:n,resume:s,eventFilter:r}}function ka(e){return Yn()}function Fo(...e){if(e.length!==1)return Ul(...e);const t=e[0];return typeof t=="function"?Bn($l(()=>({get:t,set:Qt}))):oe(t)}function Do(e,t,n={}){const{eventFilter:s=No,...r}=n;return Be(e,Va(s,t),r)}function Wa(e,t,n={}){const{eventFilter:s,...r}=n,{eventFilter:i,pause:o,resume:l,isActive:c}=Ba(s);return{stop:Do(e,t,{...r,eventFilter:i}),pause:o,resume:l,isActive:c}}function lr(e,t=!0,n){ka()?Lt(e,n):t?e():kn(e)}function Zf(e,t,n={}){const{debounce:s=0,maxWait:r=void 0,...i}=n;return Do(e,t,{...i,eventFilter:Ua(s,{maxWait:r})})}function eu(e,t,n){let s;ae(n)?s={evaluating:n}:s={};const{lazy:r=!1,evaluating:i=void 0,shallow:o=!0,onError:l=Qt}=s,c=oe(!r),f=o?zs(t):oe(t);let a=0;return rr(async h=>{if(!c.value)return;a++;const g=a;let v=!1;i&&Promise.resolve().then(()=>{i.value=!0});try{const _=await e(S=>{h(()=>{i&&(i.value=!1),v||S()})});g===a&&(f.value=_)}catch(_){l(_)}finally{i&&g===a&&(i.value=!1),v=!0}}),r?ie(()=>(c.value=!0,f.value)):f}const De=Lo?window:void 0;function Ho(e){var t;const n=ke(e);return(t=n==null?void 0:n.$el)!=null?t:n}function It(...e){let t,n,s,r;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,s,r]=e,t=De):[t,n,s,r]=e,!t)return Qt;Array.isArray(n)||(n=[n]),Array.isArray(s)||(s=[s]);const i=[],o=()=>{i.forEach(a=>a()),i.length=0},l=(a,h,g,v)=>(a.addEventListener(h,g,v),()=>a.removeEventListener(h,g,v)),c=Be(()=>[Ho(t),ke(r)],([a,h])=>{if(o(),!a)return;const g=$a(h)?{...h}:h;i.push(...n.flatMap(v=>s.map(_=>l(a,v,_,g))))},{immediate:!0,flush:"post"}),f=()=>{c(),o()};return or(f),f}function Ka(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function tu(...e){let t,n,s={};e.length===3?(t=e[0],n=e[1],s=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,n=e[0],s=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);const{target:r=De,eventName:i="keydown",passive:o=!1,dedupe:l=!1}=s,c=Ka(t);return It(r,i,a=>{a.repeat&&ke(l)||c(a)&&n(a)},o)}function qa(){const e=oe(!1),t=Yn();return t&&Lt(()=>{e.value=!0},t),e}function Ga(e){const t=qa();return ie(()=>(t.value,!!e()))}function $o(e,t={}){const{window:n=De}=t,s=Ga(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let r;const i=oe(!1),o=f=>{i.value=f.matches},l=()=>{r&&("removeEventListener"in r?r.removeEventListener("change",o):r.removeListener(o))},c=rr(()=>{s.value&&(l(),r=n.matchMedia(ke(e)),"addEventListener"in r?r.addEventListener("change",o):r.addListener(o),i.value=r.matches)});return or(()=>{c(),l(),r=void 0}),i}const vn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},bn="__vueuse_ssr_handlers__",Ya=Xa();function Xa(){return bn in vn||(vn[bn]=vn[bn]||{}),vn[bn]}function jo(e,t){return Ya[e]||t}function Vo(e){return $o("(prefers-color-scheme: dark)",e)}function za(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const Ja={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},ri="vueuse-storage";function cr(e,t,n,s={}){var r;const{flush:i="pre",deep:o=!0,listenToStorageChanges:l=!0,writeDefaults:c=!0,mergeDefaults:f=!1,shallow:a,window:h=De,eventFilter:g,onError:v=b=>{console.error(b)},initOnMounted:_}=s,S=(a?zs:oe)(typeof t=="function"?t():t);if(!n)try{n=jo("getDefaultStorage",()=>{var b;return(b=De)==null?void 0:b.localStorage})()}catch(b){v(b)}if(!n)return S;const U=ke(t),N=za(U),B=(r=s.serializer)!=null?r:Ja[N],{pause:p,resume:m}=Wa(S,()=>F(S.value),{flush:i,deep:o,eventFilter:g});h&&l&&lr(()=>{n instanceof Storage?It(h,"storage",j):It(h,ri,R),_&&j()}),_||j();function M(b,L){if(h){const x={key:e,oldValue:b,newValue:L,storageArea:n};h.dispatchEvent(n instanceof Storage?new StorageEvent("storage",x):new CustomEvent(ri,{detail:x}))}}function F(b){try{const L=n.getItem(e);if(b==null)M(L,null),n.removeItem(e);else{const x=B.write(b);L!==x&&(n.setItem(e,x),M(L,x))}}catch(L){v(L)}}function H(b){const L=b?b.newValue:n.getItem(e);if(L==null)return c&&U!=null&&n.setItem(e,B.write(U)),U;if(!b&&f){const x=B.read(L);return typeof f=="function"?f(x,U):N==="object"&&!Array.isArray(x)?{...U,...x}:x}else return typeof L!="string"?L:B.read(L)}function j(b){if(!(b&&b.storageArea!==n)){if(b&&b.key==null){S.value=U;return}if(!(b&&b.key!==e)){p();try{(b==null?void 0:b.newValue)!==B.write(S.value)&&(S.value=H(b))}catch(L){v(L)}finally{b?kn(m):m()}}}}function R(b){j(b.detail)}return S}const Qa="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function Za(e={}){const{selector:t="html",attribute:n="class",initialValue:s="auto",window:r=De,storage:i,storageKey:o="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:c,emitAuto:f,disableTransition:a=!0}=e,h={auto:"",light:"light",dark:"dark",...e.modes||{}},g=Vo({window:r}),v=ie(()=>g.value?"dark":"light"),_=c||(o==null?Fo(s):cr(o,s,i,{window:r,listenToStorageChanges:l})),S=ie(()=>_.value==="auto"?v.value:_.value),U=jo("updateHTMLAttrs",(m,M,F)=>{const H=typeof m=="string"?r==null?void 0:r.document.querySelector(m):Ho(m);if(!H)return;const j=new Set,R=new Set;let b=null;if(M==="class"){const x=F.split(/\s/g);Object.values(h).flatMap(W=>(W||"").split(/\s/g)).filter(Boolean).forEach(W=>{x.includes(W)?j.add(W):R.add(W)})}else b={key:M,value:F};if(j.size===0&&R.size===0&&b===null)return;let L;a&&(L=r.document.createElement("style"),L.appendChild(document.createTextNode(Qa)),r.document.head.appendChild(L));for(const x of j)H.classList.add(x);for(const x of R)H.classList.remove(x);b&&H.setAttribute(b.key,b.value),a&&(r.getComputedStyle(L).opacity,document.head.removeChild(L))});function N(m){var M;U(t,n,(M=h[m])!=null?M:m)}function B(m){e.onChanged?e.onChanged(m,N):N(m)}Be(S,B,{flush:"post",immediate:!0}),lr(()=>B(S.value));const p=ie({get(){return f?_.value:S.value},set(m){_.value=m}});try{return Object.assign(p,{store:_,system:v,state:S})}catch{return p}}function ef(e={}){const{valueDark:t="dark",valueLight:n="",window:s=De}=e,r=Za({...e,onChanged:(l,c)=>{var f;e.onChanged?(f=e.onChanged)==null||f.call(e,l==="dark",c,l):c(l)},modes:{dark:t,light:n}}),i=ie(()=>r.system?r.system.value:Vo({window:s}).value?"dark":"light");return ie({get(){return r.value==="dark"},set(l){const c=l?"dark":"light";i.value===c?r.value="auto":r.value=c}})}function ds(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function nu(e,t,n={}){const{window:s=De}=n;return cr(e,t,s==null?void 0:s.localStorage,n)}function Uo(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth<e.scrollWidth||t.overflowY==="auto"&&e.clientHeight<e.scrollHeight)return!0;{const n=e.parentNode;return!n||n.tagName==="BODY"?!1:Uo(n)}}function tf(e){const t=e||window.event,n=t.target;return Uo(n)?!1:t.touches.length>1?!0:(t.preventDefault&&t.preventDefault(),!1)}const hs=new WeakMap;function su(e,t=!1){const n=oe(t);let s=null,r="";Be(Fo(e),l=>{const c=ds(ke(l));if(c){const f=c;if(hs.get(f)||hs.set(f,f.style.overflow),f.style.overflow!=="hidden"&&(r=f.style.overflow),f.style.overflow==="hidden")return n.value=!0;if(n.value)return f.style.overflow="hidden"}},{immediate:!0});const i=()=>{const l=ds(ke(e));!l||n.value||(si&&(s=It(l,"touchmove",c=>{tf(c)},{passive:!1})),l.style.overflow="hidden",n.value=!0)},o=()=>{const l=ds(ke(e));!l||!n.value||(si&&(s==null||s()),l.style.overflow=r,hs.delete(l),n.value=!1)};return or(o),ie({get(){return n.value},set(l){l?i():o()}})}function ru(e,t,n={}){const{window:s=De}=n;return cr(e,t,s==null?void 0:s.sessionStorage,n)}function iu(e={}){const{window:t=De,behavior:n="auto"}=e;if(!t)return{x:oe(0),y:oe(0)};const s=oe(t.scrollX),r=oe(t.scrollY),i=ie({get(){return s.value},set(l){scrollTo({left:l,behavior:n})}}),o=ie({get(){return r.value},set(l){scrollTo({top:l,behavior:n})}});return It(t,"scroll",()=>{s.value=t.scrollX,r.value=t.scrollY},{capture:!1,passive:!0}),{x:i,y:o}}function ou(e={}){const{window:t=De,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:s=Number.POSITIVE_INFINITY,listenOrientation:r=!0,includeScrollbar:i=!0,type:o="inner"}=e,l=oe(n),c=oe(s),f=()=>{t&&(o==="outer"?(l.value=t.outerWidth,c.value=t.outerHeight):i?(l.value=t.innerWidth,c.value=t.innerHeight):(l.value=t.document.documentElement.clientWidth,c.value=t.document.documentElement.clientHeight))};if(f(),lr(f),It("resize",f,{passive:!0}),r){const a=$o("(orientation: portrait)");Be(a,()=>f())}return{width:l,height:c}}const ps={BASE_URL:"/DimensionalData.jl/dev/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};var gs={};const Bo=/^(?:[a-z]+:|\/\/)/i,nf="vitepress-theme-appearance",sf=/#.*$/,rf=/[?#].*$/,of=/(?:(^|\/)index)?\.(?:md|html)$/,ge=typeof document<"u",ko={relativePath:"404.md",filePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function lf(e,t,n=!1){if(t===void 0)return!1;if(e=ii(`/${e}`),n)return new RegExp(t).test(e);if(ii(t)!==e)return!1;const s=t.match(sf);return s?(ge?location.hash:"")===s[0]:!0}function ii(e){return decodeURI(e).replace(rf,"").replace(of,"$1")}function cf(e){return Bo.test(e)}function af(e,t){return Object.keys((e==null?void 0:e.locales)||{}).find(n=>n!=="root"&&!cf(n)&&lf(t,`/${n}/`,!0))||"root"}function ff(e,t){var s,r,i,o,l,c,f;const n=af(e,t);return Object.assign({},e,{localeIndex:n,lang:((s=e.locales[n])==null?void 0:s.lang)??e.lang,dir:((r=e.locales[n])==null?void 0:r.dir)??e.dir,title:((i=e.locales[n])==null?void 0:i.title)??e.title,titleTemplate:((o=e.locales[n])==null?void 0:o.titleTemplate)??e.titleTemplate,description:((l=e.locales[n])==null?void 0:l.description)??e.description,head:Ko(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(f=e.locales[n])==null?void 0:f.themeConfig}})}function Wo(e,t){const n=t.title||e.title,s=t.titleTemplate??e.titleTemplate;if(typeof s=="string"&&s.includes(":title"))return s.replace(/:title/g,n);const r=uf(e.title,s);return n===r.slice(3)?n:`${n}${r}`}function uf(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function df(e,t){const[n,s]=t;if(n!=="meta")return!1;const r=Object.entries(s)[0];return r==null?!1:e.some(([i,o])=>i===n&&o[r[0]]===r[1])}function Ko(e,t){return[...e.filter(n=>!df(t,n)),...t]}const hf=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,pf=/^[a-z]:/i;function oi(e){const t=pf.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(hf,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const ms=new Set;function gf(e){if(ms.size===0){const n=typeof process=="object"&&(gs==null?void 0:gs.VITE_EXTRA_EXTENSIONS)||(ps==null?void 0:ps.VITE_EXTRA_EXTENSIONS)||"";("3g2,3gp,aac,ai,apng,au,avif,bin,bmp,cer,class,conf,crl,css,csv,dll,doc,eps,epub,exe,gif,gz,ics,ief,jar,jpe,jpeg,jpg,js,json,jsonld,m4a,man,mid,midi,mjs,mov,mp2,mp3,mp4,mpe,mpeg,mpg,mpp,oga,ogg,ogv,ogx,opus,otf,p10,p7c,p7m,p7s,pdf,png,ps,qt,roff,rtf,rtx,ser,svg,t,tif,tiff,tr,ts,tsv,ttf,txt,vtt,wav,weba,webm,webp,woff,woff2,xhtml,xml,yaml,yml,zip"+(n&&typeof n=="string"?","+n:"")).split(",").forEach(s=>ms.add(s))}const t=e.split(".").pop();return t==null||!ms.has(t.toLowerCase())}function lu(e){return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const mf=Symbol(),yt=zs(Da);function cu(e){const t=ie(()=>ff(yt.value,e.data.relativePath)),n=t.value.appearance,s=n==="force-dark"?oe(!0):n?ef({storageKey:nf,initialValue:()=>n==="dark"?"dark":"auto",...typeof n=="object"?n:{}}):oe(!1),r=oe(ge?location.hash:"");return ge&&window.addEventListener("hashchange",()=>{r.value=location.hash}),Be(()=>e.data,()=>{r.value=ge?location.hash:""}),{site:t,theme:ie(()=>t.value.themeConfig),page:ie(()=>e.data),frontmatter:ie(()=>e.data.frontmatter),params:ie(()=>e.data.params),lang:ie(()=>t.value.lang),dir:ie(()=>e.data.frontmatter.dir||t.value.dir),localeIndex:ie(()=>t.value.localeIndex||"root"),title:ie(()=>Wo(t.value,e.data)),description:ie(()=>e.data.description||t.value.description),isDark:s,hash:ie(()=>r.value)}}function yf(){const e=Pt(mf);if(!e)throw new Error("vitepress data not properly injected in app");return e}function vf(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function li(e){return Bo.test(e)||!e.startsWith("/")?e:vf(yt.value.base,e)}function bf(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),ge){const n="/DimensionalData.jl/dev/";t=oi(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let s=__VP_HASH_MAP__[t.toLowerCase()];if(s||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",s=__VP_HASH_MAP__[t.toLowerCase()]),!s)return null;t=`${n}assets/${t}.${s}.js`}else t=`./${oi(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let An=[];function au(e){An.push(e),Kn(()=>{An=An.filter(t=>t!==e)})}function _f(){let e=yt.value.scrollOffset,t=0,n=24;if(typeof e=="object"&&"padding"in e&&(n=e.padding,e=e.selector),typeof e=="number")t=e;else if(typeof e=="string")t=ci(e,n);else if(Array.isArray(e))for(const s of e){const r=ci(s,n);if(r){t=r;break}}return t}function ci(e,t){const n=document.querySelector(e);if(!n)return 0;const s=n.getBoundingClientRect().bottom;return s<0?0:s+t}const wf=Symbol(),qo="http://a.com",Sf=()=>({path:"/",component:null,data:ko});function fu(e,t){const n=Un(Sf()),s={route:n,go:r};async function r(l=ge?location.href:"/"){var c,f;l=ys(l),await((c=s.onBeforeRouteChange)==null?void 0:c.call(s,l))!==!1&&(ge&&l!==ys(location.href)&&(history.replaceState({scrollPosition:window.scrollY},""),history.pushState({},"",l)),await o(l),await((f=s.onAfterRouteChanged)==null?void 0:f.call(s,l)))}let i=null;async function o(l,c=0,f=!1){var g;if(await((g=s.onBeforePageLoad)==null?void 0:g.call(s,l))===!1)return;const a=new URL(l,qo),h=i=a.pathname;try{let v=await e(h);if(!v)throw new Error(`Page not found: ${h}`);if(i===h){i=null;const{default:_,__pageData:S}=v;if(!_)throw new Error(`Invalid route component: ${_}`);n.path=ge?h:li(h),n.component=En(_),n.data=En(S),ge&&kn(()=>{let U=yt.value.base+S.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!yt.value.cleanUrls&&!U.endsWith("/")&&(U+=".html"),U!==a.pathname&&(a.pathname=U,l=U+a.search+a.hash,history.replaceState({},"",l)),a.hash&&!c){let N=null;try{N=document.getElementById(decodeURIComponent(a.hash).slice(1))}catch(B){console.warn(B)}if(N){ai(N,a.hash);return}}window.scrollTo(0,c)})}}catch(v){if(!/fetch|Page not found/.test(v.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(v),!f)try{const _=await fetch(yt.value.base+"hashmap.json");window.__VP_HASH_MAP__=await _.json(),await o(l,c,!0);return}catch{}if(i===h){i=null,n.path=ge?h:li(h),n.component=t?En(t):null;const _=ge?h.replace(/(^|\/)$/,"$1index").replace(/(\.html)?$/,".md").replace(/^\//,""):"404.md";n.data={...ko,relativePath:_}}}}return ge&&(history.state===null&&history.replaceState({},""),window.addEventListener("click",l=>{if(l.defaultPrevented||!(l.target instanceof Element)||l.target.closest("button")||l.button!==0||l.ctrlKey||l.shiftKey||l.altKey||l.metaKey)return;const c=l.target.closest("a");if(!c||c.closest(".vp-raw")||c.hasAttribute("download")||c.hasAttribute("target"))return;const f=c.getAttribute("href")??(c instanceof SVGAElement?c.getAttribute("xlink:href"):null);if(f==null)return;const{href:a,origin:h,pathname:g,hash:v,search:_}=new URL(f,c.baseURI),S=new URL(location.href);h===S.origin&&gf(g)&&(l.preventDefault(),g===S.pathname&&_===S.search?(v!==S.hash&&(history.pushState({},"",a),window.dispatchEvent(new HashChangeEvent("hashchange",{oldURL:S.href,newURL:a}))),v?ai(c,v,c.classList.contains("header-anchor")):window.scrollTo(0,0)):r(a))},{capture:!0}),window.addEventListener("popstate",async l=>{var c;l.state!==null&&(await o(ys(location.href),l.state&&l.state.scrollPosition||0),(c=s.onAfterRouteChanged)==null||c.call(s,location.href))}),window.addEventListener("hashchange",l=>{l.preventDefault()})),s}function Ef(){const e=Pt(wf);if(!e)throw new Error("useRouter() is called without provider.");return e}function Go(){return Ef().route}function ai(e,t,n=!1){let s=null;try{s=e.classList.contains("header-anchor")?e:document.getElementById(decodeURIComponent(t).slice(1))}catch(r){console.warn(r)}if(s){let r=function(){!n||Math.abs(o-window.scrollY)>window.innerHeight?window.scrollTo(0,o):window.scrollTo({left:0,top:o,behavior:"smooth"})};const i=parseInt(window.getComputedStyle(s).paddingTop,10),o=window.scrollY+s.getBoundingClientRect().top-_f()+i;requestAnimationFrame(r)}}function ys(e){const t=new URL(e,qo);return t.pathname=t.pathname.replace(/(^|\/)index(\.html)?$/,"$1"),yt.value.cleanUrls?t.pathname=t.pathname.replace(/\.html$/,""):!t.pathname.endsWith("/")&&!t.pathname.endsWith(".html")&&(t.pathname+=".html"),t.pathname+t.search+t.hash}const vs=()=>An.forEach(e=>e()),uu=Zs({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=Go(),{site:n}=yf();return()=>Ns(e.as,n.value.contentProps??{style:{position:"relative"}},[t.component?Ns(t.component,{onVnodeMounted:vs,onVnodeUpdated:vs,onVnodeUnmounted:vs}):"404 Page Not Found"])}}),xf="modulepreload",Tf=function(e){return"/DimensionalData.jl/dev/"+e},fi={},du=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),l=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=Tf(c),c in fi)return;fi[c]=!0;const f=c.endsWith(".css"),a=f?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${a}`))return;const h=document.createElement("link");if(h.rel=f?"stylesheet":xf,f||(h.as="script"),h.crossOrigin="",h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),f)return new Promise((g,v)=>{h.addEventListener("load",g),h.addEventListener("error",()=>v(new Error(`Unable to preload CSS for ${c}`)))})}))}function i(o){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=o,window.dispatchEvent(l),!l.defaultPrevented)throw o}return r.then(o=>{for(const l of o||[])l.status==="rejected"&&i(l.reason);return t().catch(i)})},hu=Zs({setup(e,{slots:t}){const n=oe(!1);return Lt(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function pu(){ge&&window.addEventListener("click",e=>{var n;const t=e.target;if(t.matches(".vp-code-group input")){const s=(n=t.parentElement)==null?void 0:n.parentElement;if(!s)return;const r=Array.from(s.querySelectorAll("input")).indexOf(t);if(r<0)return;const i=s.querySelector(".blocks");if(!i)return;const o=Array.from(i.children).find(f=>f.classList.contains("active"));if(!o)return;const l=i.children[r];if(!l||o===l)return;o.classList.remove("active"),l.classList.add("active");const c=s==null?void 0:s.querySelector(`label[for="${t.id}"]`);c==null||c.scrollIntoView({block:"nearest"})}})}function gu(){if(ge){const e=new WeakMap;window.addEventListener("click",t=>{var s;const n=t.target;if(n.matches('div[class*="language-"] > button.copy')){const r=n.parentElement,i=(s=n.nextElementSibling)==null?void 0:s.nextElementSibling;if(!r||!i)return;const o=/language-(shellscript|shell|bash|sh|zsh)/.test(r.className),l=[".vp-copy-ignore",".diff.remove"],c=i.cloneNode(!0);c.querySelectorAll(l.join(",")).forEach(a=>a.remove());let f=c.textContent||"";o&&(f=f.replace(/^ *(\$|>) /gm,"").trim()),Cf(f).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const a=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,a)})}})}}async function Cf(e){try{return navigator.clipboard.writeText(e)}catch{const t=document.createElement("textarea"),n=document.activeElement;t.value=e,t.setAttribute("readonly",""),t.style.contain="strict",t.style.position="absolute",t.style.left="-9999px",t.style.fontSize="12pt";const s=document.getSelection(),r=s?s.rangeCount>0&&s.getRangeAt(0):null;document.body.appendChild(t),t.select(),t.selectionStart=0,t.selectionEnd=e.length,document.execCommand("copy"),document.body.removeChild(t),r&&(s.removeAllRanges(),s.addRange(r)),n&&n.focus()}}function mu(e,t){let n=!0,s=[];const r=i=>{if(n){n=!1,i.forEach(l=>{const c=bs(l);for(const f of document.head.children)if(f.isEqualNode(c)){s.push(f);return}});return}const o=i.map(bs);s.forEach((l,c)=>{const f=o.findIndex(a=>a==null?void 0:a.isEqualNode(l??null));f!==-1?delete o[f]:(l==null||l.remove(),delete s[c])}),o.forEach(l=>l&&document.head.appendChild(l)),s=[...s,...o].filter(Boolean)};rr(()=>{const i=e.data,o=t.value,l=i&&i.description,c=i&&i.frontmatter.head||[],f=Wo(o,i);f!==document.title&&(document.title=f);const a=l||o.description;let h=document.querySelector("meta[name=description]");h?h.getAttribute("content")!==a&&h.setAttribute("content",a):bs(["meta",{name:"description",content:a}]),r(Ko(o.head,Rf(c)))})}function bs([e,t,n]){const s=document.createElement(e);for(const r in t)s.setAttribute(r,t[r]);return n&&(s.innerHTML=n),e==="script"&&!t.async&&(s.async=!1),s}function Af(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function Rf(e){return e.filter(t=>!Af(t))}const _s=new Set,Yo=()=>document.createElement("link"),Of=e=>{const t=Yo();t.rel="prefetch",t.href=e,document.head.appendChild(t)},Mf=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let _n;const Pf=ge&&(_n=Yo())&&_n.relList&&_n.relList.supports&&_n.relList.supports("prefetch")?Of:Mf;function yu(){if(!ge||!window.IntersectionObserver)return;let e;if((e=navigator.connection)&&(e.saveData||/2g/.test(e.effectiveType)))return;const t=window.requestIdleCallback||setTimeout;let n=null;const s=()=>{n&&n.disconnect(),n=new IntersectionObserver(i=>{i.forEach(o=>{if(o.isIntersecting){const l=o.target;n.unobserve(l);const{pathname:c}=l;if(!_s.has(c)){_s.add(c);const f=bf(c);f&&Pf(f)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(i=>{const{hostname:o,pathname:l}=new URL(i.href instanceof SVGAnimatedString?i.href.animVal:i.href,i.baseURI),c=l.match(/\.\w+$/);c&&c[0]!==".html"||i.target!=="_blank"&&o===location.hostname&&(l!==location.pathname?n.observe(i):_s.add(l))})})};Lt(s);const r=Go();Be(()=>r.path,s),Kn(()=>{n&&n.disconnect()})}export{Ji as $,_f as A,Ff as B,Hf as C,zs as D,au as E,Se as F,le as G,Df as H,Bo as I,Go as J,Xc as K,Pt as L,ou as M,Vs as N,tu as O,kn as P,iu as Q,ge as R,Bn as S,Kf as T,Nf as U,du as V,su as W,Ac as X,jf as Y,Yf as Z,Jf as _,xo as a,Gf as a0,Vf as a1,Un as a2,Ul as a3,kf as a4,mu as a5,wf as a6,cu as a7,mf as a8,uu as a9,hu as aa,yt as ab,zf as ac,fu as ad,bf as ae,yu as af,gu as ag,pu as ah,Ns as ai,ke as aj,Ho as ak,Qf as al,or as am,eu as an,ru as ao,nu as ap,Zf as aq,Ef as ar,It as as,If as at,qf as au,ae as av,Lf as aw,En as ax,Xf as ay,lu as az,Is as b,Bf as c,Zs as d,Wf as e,gf as f,li as g,ie as h,cf as i,Eo as j,Di as k,lf as l,$o as m,Us as n,Ps as o,oe as p,Be as q,$f as r,rr as s,al as t,yf as u,Lt as v,zl as w,Kn as x,Uf as y,hc as z}; diff --git a/dev/assets/chunks/theme.b8NutB4I.js b/dev/assets/chunks/theme.b8NutB4I.js new file mode 100644 index 000000000..277a448b0 --- /dev/null +++ b/dev/assets/chunks/theme.b8NutB4I.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/chunks/VPLocalSearchBox.96yseQxt.js","assets/chunks/framework.B8l2DGq3.js"])))=>i.map(i=>d[i]); +import{d as b,o as a,c as d,r as u,n as I,a as F,t as N,b as k,w as f,e as _,T as de,_ as $,u as Ve,i as je,f as ze,g as ve,h as P,j as p,k as r,l as z,m as re,p as T,q as D,s as Z,v as R,x as pe,y as fe,z as Ke,A as We,B as K,F as M,C as B,D as Se,E as x,G as g,H,I as Le,J as ee,K as j,L as q,M as qe,N as Te,O as ie,P as we,Q as Ne,R as te,S as Je,U as Ye,V as Xe,W as Ie,X as he,Y as Qe,Z as Ze,$ as xe,a0 as et,a1 as Me,a2 as tt,a3 as nt}from"./framework.B8l2DGq3.js";const st=b({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(o){return(e,t)=>(a(),d("span",{class:I(["VPBadge",e.type])},[u(e.$slots,"default",{},()=>[F(N(e.text),1)])],2))}}),ot={key:0,class:"VPBackdrop"},at=b({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(o){return(e,t)=>(a(),k(de,{name:"fade"},{default:f(()=>[e.show?(a(),d("div",ot)):_("",!0)]),_:1}))}}),rt=$(at,[["__scopeId","data-v-b06cdb19"]]),L=Ve;function it(o,e){let t,s=!1;return()=>{t&&clearTimeout(t),s?t=setTimeout(o,e):(o(),(s=!0)&&setTimeout(()=>s=!1,e))}}function le(o){return/^\//.test(o)?o:`/${o}`}function me(o){const{pathname:e,search:t,hash:s,protocol:n}=new URL(o,"http://a.com");if(je(o)||o.startsWith("#")||!n.startsWith("http")||!ze(e))return o;const{site:i}=L(),l=e.endsWith("/")||e.endsWith(".html")?o:o.replace(/(?:(^\.+)\/)?.*$/,`$1${e.replace(/(\.md)?$/,i.value.cleanUrls?"":".html")}${t}${s}`);return ve(l)}function Y({correspondingLink:o=!1}={}){const{site:e,localeIndex:t,page:s,theme:n,hash:i}=L(),l=P(()=>{var c,h;return{label:(c=e.value.locales[t.value])==null?void 0:c.label,link:((h=e.value.locales[t.value])==null?void 0:h.link)||(t.value==="root"?"/":`/${t.value}/`)}});return{localeLinks:P(()=>Object.entries(e.value.locales).flatMap(([c,h])=>l.value.label===h.label?[]:{text:h.label,link:lt(h.link||(c==="root"?"/":`/${c}/`),n.value.i18nRouting!==!1&&o,s.value.relativePath.slice(l.value.link.length-1),!e.value.cleanUrls)+i.value})),currentLang:l}}function lt(o,e,t,s){return e?o.replace(/\/$/,"")+le(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,s?".html":"")):o}const ct={class:"NotFound"},ut={class:"code"},dt={class:"title"},vt={class:"quote"},pt={class:"action"},ft=["href","aria-label"],ht=b({__name:"NotFound",setup(o){const{theme:e}=L(),{currentLang:t}=Y();return(s,n)=>{var i,l,v,c,h;return a(),d("div",ct,[p("p",ut,N(((i=r(e).notFound)==null?void 0:i.code)??"404"),1),p("h1",dt,N(((l=r(e).notFound)==null?void 0:l.title)??"PAGE NOT FOUND"),1),n[0]||(n[0]=p("div",{class:"divider"},null,-1)),p("blockquote",vt,N(((v=r(e).notFound)==null?void 0:v.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),p("div",pt,[p("a",{class:"link",href:r(ve)(r(t).link),"aria-label":((c=r(e).notFound)==null?void 0:c.linkLabel)??"go to home"},N(((h=r(e).notFound)==null?void 0:h.linkText)??"Take me home"),9,ft)])])}}}),mt=$(ht,[["__scopeId","data-v-951cab6c"]]);function Ce(o,e){if(Array.isArray(o))return X(o);if(o==null)return[];e=le(e);const t=Object.keys(o).sort((n,i)=>i.split("/").length-n.split("/").length).find(n=>e.startsWith(le(n))),s=t?o[t]:[];return Array.isArray(s)?X(s):X(s.items,s.base)}function _t(o){const e=[];let t=0;for(const s in o){const n=o[s];if(n.items){t=e.push(n);continue}e[t]||e.push({items:[]}),e[t].items.push(n)}return e}function bt(o){const e=[];function t(s){for(const n of s)n.text&&n.link&&e.push({text:n.text,link:n.link,docFooterText:n.docFooterText}),n.items&&t(n.items)}return t(o),e}function ce(o,e){return Array.isArray(e)?e.some(t=>ce(o,t)):z(o,e.link)?!0:e.items?ce(o,e.items):!1}function X(o,e){return[...o].map(t=>{const s={...t},n=s.base||e;return n&&s.link&&(s.link=n+s.link),s.items&&(s.items=X(s.items,n)),s})}function U(){const{frontmatter:o,page:e,theme:t}=L(),s=re("(min-width: 960px)"),n=T(!1),i=P(()=>{const A=t.value.sidebar,w=e.value.relativePath;return A?Ce(A,w):[]}),l=T(i.value);D(i,(A,w)=>{JSON.stringify(A)!==JSON.stringify(w)&&(l.value=i.value)});const v=P(()=>o.value.sidebar!==!1&&l.value.length>0&&o.value.layout!=="home"),c=P(()=>h?o.value.aside==null?t.value.aside==="left":o.value.aside==="left":!1),h=P(()=>o.value.layout==="home"?!1:o.value.aside!=null?!!o.value.aside:t.value.aside!==!1),y=P(()=>v.value&&s.value),m=P(()=>v.value?_t(l.value):[]);function V(){n.value=!0}function S(){n.value=!1}function C(){n.value?S():V()}return{isOpen:n,sidebar:l,sidebarGroups:m,hasSidebar:v,hasAside:h,leftAside:c,isSidebarEnabled:y,open:V,close:S,toggle:C}}function kt(o,e){let t;Z(()=>{t=o.value?document.activeElement:void 0}),R(()=>{window.addEventListener("keyup",s)}),pe(()=>{window.removeEventListener("keyup",s)});function s(n){n.key==="Escape"&&o.value&&(e(),t==null||t.focus())}}function gt(o){const{page:e,hash:t}=L(),s=T(!1),n=P(()=>o.value.collapsed!=null),i=P(()=>!!o.value.link),l=T(!1),v=()=>{l.value=z(e.value.relativePath,o.value.link)};D([e,o,t],v),R(v);const c=P(()=>l.value?!0:o.value.items?ce(e.value.relativePath,o.value.items):!1),h=P(()=>!!(o.value.items&&o.value.items.length));Z(()=>{s.value=!!(n.value&&o.value.collapsed)}),fe(()=>{(l.value||c.value)&&(s.value=!1)});function y(){n.value&&(s.value=!s.value)}return{collapsed:s,collapsible:n,isLink:i,isActiveLink:l,hasActiveLink:c,hasChildren:h,toggle:y}}function $t(){const{hasSidebar:o}=U(),e=re("(min-width: 960px)"),t=re("(min-width: 1280px)");return{isAsideEnabled:P(()=>!t.value&&!e.value?!1:o.value?t.value:e.value)}}const ue=[];function Ae(o){return typeof o.outline=="object"&&!Array.isArray(o.outline)&&o.outline.label||o.outlineTitle||"On this page"}function _e(o){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const s=Number(t.tagName[1]);return{element:t,title:yt(t),link:"#"+t.id,level:s}});return Pt(e,o)}function yt(o){let e="";for(const t of o.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor")||t.classList.contains("ignore-header"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function Pt(o,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[s,n]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;return Lt(o,s,n)}function Vt(o,e){const{isAsideEnabled:t}=$t(),s=it(i,100);let n=null;R(()=>{requestAnimationFrame(i),window.addEventListener("scroll",s)}),Ke(()=>{l(location.hash)}),pe(()=>{window.removeEventListener("scroll",s)});function i(){if(!t.value)return;const v=window.scrollY,c=window.innerHeight,h=document.body.offsetHeight,y=Math.abs(v+c-h)<1,m=ue.map(({element:S,link:C})=>({link:C,top:St(S)})).filter(({top:S})=>!Number.isNaN(S)).sort((S,C)=>S.top-C.top);if(!m.length){l(null);return}if(v<1){l(null);return}if(y){l(m[m.length-1].link);return}let V=null;for(const{link:S,top:C}of m){if(C>v+We()+4)break;V=S}l(V)}function l(v){n&&n.classList.remove("active"),v==null?n=null:n=o.value.querySelector(`a[href="${decodeURIComponent(v)}"]`);const c=n;c?(c.classList.add("active"),e.value.style.top=c.offsetTop+39+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function St(o){let e=0;for(;o!==document.body;){if(o===null)return NaN;e+=o.offsetTop,o=o.offsetParent}return e}function Lt(o,e,t){ue.length=0;const s=[],n=[];return o.forEach(i=>{const l={...i,children:[]};let v=n[n.length-1];for(;v&&v.level>=l.level;)n.pop(),v=n[n.length-1];if(l.element.classList.contains("ignore-header")||v&&"shouldIgnore"in v){n.push({level:l.level,shouldIgnore:!0});return}l.level>t||l.level<e||(ue.push({element:l.element,link:l.link}),v?v.children.push(l):s.push(l),n.push(l))}),s}const Tt=["href","title"],wt=b({__name:"VPDocOutlineItem",props:{headers:{},root:{type:Boolean}},setup(o){function e({target:t}){const s=t.href.split("#")[1],n=document.getElementById(decodeURIComponent(s));n==null||n.focus({preventScroll:!0})}return(t,s)=>{const n=K("VPDocOutlineItem",!0);return a(),d("ul",{class:I(["VPDocOutlineItem",t.root?"root":"nested"])},[(a(!0),d(M,null,B(t.headers,({children:i,link:l,title:v})=>(a(),d("li",null,[p("a",{class:"outline-link",href:l,onClick:e,title:v},N(v),9,Tt),i!=null&&i.length?(a(),k(n,{key:0,headers:i},null,8,["headers"])):_("",!0)]))),256))],2)}}}),Be=$(wt,[["__scopeId","data-v-3f927ebe"]]),Nt={class:"content"},It={"aria-level":"2",class:"outline-title",id:"doc-outline-aria-label",role:"heading"},Mt=b({__name:"VPDocAsideOutline",setup(o){const{frontmatter:e,theme:t}=L(),s=Se([]);x(()=>{s.value=_e(e.value.outline??t.value.outline)});const n=T(),i=T();return Vt(n,i),(l,v)=>(a(),d("nav",{"aria-labelledby":"doc-outline-aria-label",class:I(["VPDocAsideOutline",{"has-outline":s.value.length>0}]),ref_key:"container",ref:n},[p("div",Nt,[p("div",{class:"outline-marker",ref_key:"marker",ref:i},null,512),p("div",It,N(r(Ae)(r(t))),1),g(Be,{headers:s.value,root:!0},null,8,["headers"])])],2))}}),Ct=$(Mt,[["__scopeId","data-v-b38bf2ff"]]),At={class:"VPDocAsideCarbonAds"},Bt=b({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(o){const e=()=>null;return(t,s)=>(a(),d("div",At,[g(r(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),Et={class:"VPDocAside"},Ht=b({__name:"VPDocAside",setup(o){const{theme:e}=L();return(t,s)=>(a(),d("div",Et,[u(t.$slots,"aside-top",{},void 0,!0),u(t.$slots,"aside-outline-before",{},void 0,!0),g(Ct),u(t.$slots,"aside-outline-after",{},void 0,!0),s[0]||(s[0]=p("div",{class:"spacer"},null,-1)),u(t.$slots,"aside-ads-before",{},void 0,!0),r(e).carbonAds?(a(),k(Bt,{key:0,"carbon-ads":r(e).carbonAds},null,8,["carbon-ads"])):_("",!0),u(t.$slots,"aside-ads-after",{},void 0,!0),u(t.$slots,"aside-bottom",{},void 0,!0)]))}}),Ot=$(Ht,[["__scopeId","data-v-6d7b3c46"]]);function Dt(){const{theme:o,page:e}=L();return P(()=>{const{text:t="Edit this page",pattern:s=""}=o.value.editLink||{};let n;return typeof s=="function"?n=s(e.value):n=s.replace(/:path/g,e.value.filePath),{url:n,text:t}})}function Ft(){const{page:o,theme:e,frontmatter:t}=L();return P(()=>{var h,y,m,V,S,C,A,w;const s=Ce(e.value.sidebar,o.value.relativePath),n=bt(s),i=Rt(n,E=>E.link.replace(/[?#].*$/,"")),l=i.findIndex(E=>z(o.value.relativePath,E.link)),v=((h=e.value.docFooter)==null?void 0:h.prev)===!1&&!t.value.prev||t.value.prev===!1,c=((y=e.value.docFooter)==null?void 0:y.next)===!1&&!t.value.next||t.value.next===!1;return{prev:v?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((m=i[l-1])==null?void 0:m.docFooterText)??((V=i[l-1])==null?void 0:V.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((S=i[l-1])==null?void 0:S.link)},next:c?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((C=i[l+1])==null?void 0:C.docFooterText)??((A=i[l+1])==null?void 0:A.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((w=i[l+1])==null?void 0:w.link)}}})}function Rt(o,e){const t=new Set;return o.filter(s=>{const n=e(s);return t.has(n)?!1:t.add(n)})}const O=b({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(o){const e=o,t=P(()=>e.tag??(e.href?"a":"span")),s=P(()=>e.href&&Le.test(e.href)||e.target==="_blank");return(n,i)=>(a(),k(H(t.value),{class:I(["VPLink",{link:n.href,"vp-external-link-icon":s.value,"no-icon":n.noIcon}]),href:n.href?r(me)(n.href):void 0,target:n.target??(s.value?"_blank":void 0),rel:n.rel??(s.value?"noreferrer":void 0)},{default:f(()=>[u(n.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),Ut={class:"VPLastUpdated"},Gt=["datetime"],jt=b({__name:"VPDocFooterLastUpdated",setup(o){const{theme:e,page:t,lang:s}=L(),n=P(()=>new Date(t.value.lastUpdated)),i=P(()=>n.value.toISOString()),l=T("");return R(()=>{Z(()=>{var v,c,h;l.value=new Intl.DateTimeFormat((c=(v=e.value.lastUpdated)==null?void 0:v.formatOptions)!=null&&c.forceLocale?s.value:void 0,((h=e.value.lastUpdated)==null?void 0:h.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(n.value)})}),(v,c)=>{var h;return a(),d("p",Ut,[F(N(((h=r(e).lastUpdated)==null?void 0:h.text)||r(e).lastUpdatedText||"Last updated")+": ",1),p("time",{datetime:i.value},N(l.value),9,Gt)])}}}),zt=$(jt,[["__scopeId","data-v-475f71b8"]]),Kt={key:0,class:"VPDocFooter"},Wt={key:0,class:"edit-info"},qt={key:0,class:"edit-link"},Jt={key:1,class:"last-updated"},Yt={key:1,class:"prev-next","aria-labelledby":"doc-footer-aria-label"},Xt={class:"pager"},Qt=["innerHTML"],Zt=["innerHTML"],xt={class:"pager"},en=["innerHTML"],tn=["innerHTML"],nn=b({__name:"VPDocFooter",setup(o){const{theme:e,page:t,frontmatter:s}=L(),n=Dt(),i=Ft(),l=P(()=>e.value.editLink&&s.value.editLink!==!1),v=P(()=>t.value.lastUpdated),c=P(()=>l.value||v.value||i.value.prev||i.value.next);return(h,y)=>{var m,V,S,C;return c.value?(a(),d("footer",Kt,[u(h.$slots,"doc-footer-before",{},void 0,!0),l.value||v.value?(a(),d("div",Wt,[l.value?(a(),d("div",qt,[g(O,{class:"edit-link-button",href:r(n).url,"no-icon":!0},{default:f(()=>[y[0]||(y[0]=p("span",{class:"vpi-square-pen edit-link-icon"},null,-1)),F(" "+N(r(n).text),1)]),_:1},8,["href"])])):_("",!0),v.value?(a(),d("div",Jt,[g(zt)])):_("",!0)])):_("",!0),(m=r(i).prev)!=null&&m.link||(V=r(i).next)!=null&&V.link?(a(),d("nav",Yt,[y[1]||(y[1]=p("span",{class:"visually-hidden",id:"doc-footer-aria-label"},"Pager",-1)),p("div",Xt,[(S=r(i).prev)!=null&&S.link?(a(),k(O,{key:0,class:"pager-link prev",href:r(i).prev.link},{default:f(()=>{var A;return[p("span",{class:"desc",innerHTML:((A=r(e).docFooter)==null?void 0:A.prev)||"Previous page"},null,8,Qt),p("span",{class:"title",innerHTML:r(i).prev.text},null,8,Zt)]}),_:1},8,["href"])):_("",!0)]),p("div",xt,[(C=r(i).next)!=null&&C.link?(a(),k(O,{key:0,class:"pager-link next",href:r(i).next.link},{default:f(()=>{var A;return[p("span",{class:"desc",innerHTML:((A=r(e).docFooter)==null?void 0:A.next)||"Next page"},null,8,en),p("span",{class:"title",innerHTML:r(i).next.text},null,8,tn)]}),_:1},8,["href"])):_("",!0)])])):_("",!0)])):_("",!0)}}}),sn=$(nn,[["__scopeId","data-v-4f9813fa"]]),on={class:"container"},an={class:"aside-container"},rn={class:"aside-content"},ln={class:"content"},cn={class:"content-container"},un={class:"main"},dn=b({__name:"VPDoc",setup(o){const{theme:e}=L(),t=ee(),{hasSidebar:s,hasAside:n,leftAside:i}=U(),l=P(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(v,c)=>{const h=K("Content");return a(),d("div",{class:I(["VPDoc",{"has-sidebar":r(s),"has-aside":r(n)}])},[u(v.$slots,"doc-top",{},void 0,!0),p("div",on,[r(n)?(a(),d("div",{key:0,class:I(["aside",{"left-aside":r(i)}])},[c[0]||(c[0]=p("div",{class:"aside-curtain"},null,-1)),p("div",an,[p("div",rn,[g(Ot,null,{"aside-top":f(()=>[u(v.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":f(()=>[u(v.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":f(()=>[u(v.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(v.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(v.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(v.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):_("",!0),p("div",ln,[p("div",cn,[u(v.$slots,"doc-before",{},void 0,!0),p("main",un,[g(h,{class:I(["vp-doc",[l.value,r(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),g(sn,null,{"doc-footer-before":f(()=>[u(v.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),u(v.$slots,"doc-after",{},void 0,!0)])])]),u(v.$slots,"doc-bottom",{},void 0,!0)],2)}}}),vn=$(dn,[["__scopeId","data-v-83890dd9"]]),pn=b({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{},target:{},rel:{}},setup(o){const e=o,t=P(()=>e.href&&Le.test(e.href)),s=P(()=>e.tag||(e.href?"a":"button"));return(n,i)=>(a(),k(H(s.value),{class:I(["VPButton",[n.size,n.theme]]),href:n.href?r(me)(n.href):void 0,target:e.target??(t.value?"_blank":void 0),rel:e.rel??(t.value?"noreferrer":void 0)},{default:f(()=>[F(N(n.text),1)]),_:1},8,["class","href","target","rel"]))}}),fn=$(pn,[["__scopeId","data-v-906d7fb4"]]),hn=["src","alt"],mn=b({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(o){return(e,t)=>{const s=K("VPImage",!0);return e.image?(a(),d(M,{key:0},[typeof e.image=="string"||"src"in e.image?(a(),d("img",j({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:r(ve)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,hn)):(a(),d(M,{key:1},[g(s,j({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),g(s,j({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):_("",!0)}}}),Q=$(mn,[["__scopeId","data-v-35a7d0b8"]]),_n={class:"container"},bn={class:"main"},kn={key:0,class:"name"},gn=["innerHTML"],$n=["innerHTML"],yn=["innerHTML"],Pn={key:0,class:"actions"},Vn={key:0,class:"image"},Sn={class:"image-container"},Ln=b({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(o){const e=q("hero-image-slot-exists");return(t,s)=>(a(),d("div",{class:I(["VPHero",{"has-image":t.image||r(e)}])},[p("div",_n,[p("div",bn,[u(t.$slots,"home-hero-info-before",{},void 0,!0),u(t.$slots,"home-hero-info",{},()=>[t.name?(a(),d("h1",kn,[p("span",{innerHTML:t.name,class:"clip"},null,8,gn)])):_("",!0),t.text?(a(),d("p",{key:1,innerHTML:t.text,class:"text"},null,8,$n)):_("",!0),t.tagline?(a(),d("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,yn)):_("",!0)],!0),u(t.$slots,"home-hero-info-after",{},void 0,!0),t.actions?(a(),d("div",Pn,[(a(!0),d(M,null,B(t.actions,n=>(a(),d("div",{key:n.link,class:"action"},[g(fn,{tag:"a",size:"medium",theme:n.theme,text:n.text,href:n.link,target:n.target,rel:n.rel},null,8,["theme","text","href","target","rel"])]))),128))])):_("",!0),u(t.$slots,"home-hero-actions-after",{},void 0,!0)]),t.image||r(e)?(a(),d("div",Vn,[p("div",Sn,[s[0]||(s[0]=p("div",{class:"image-bg"},null,-1)),u(t.$slots,"home-hero-image",{},()=>[t.image?(a(),k(Q,{key:0,class:"image-src",image:t.image},null,8,["image"])):_("",!0)],!0)])])):_("",!0)])],2))}}),Tn=$(Ln,[["__scopeId","data-v-955009fc"]]),wn=b({__name:"VPHomeHero",setup(o){const{frontmatter:e}=L();return(t,s)=>r(e).hero?(a(),k(Tn,{key:0,class:"VPHomeHero",name:r(e).hero.name,text:r(e).hero.text,tagline:r(e).hero.tagline,image:r(e).hero.image,actions:r(e).hero.actions},{"home-hero-info-before":f(()=>[u(t.$slots,"home-hero-info-before")]),"home-hero-info":f(()=>[u(t.$slots,"home-hero-info")]),"home-hero-info-after":f(()=>[u(t.$slots,"home-hero-info-after")]),"home-hero-actions-after":f(()=>[u(t.$slots,"home-hero-actions-after")]),"home-hero-image":f(()=>[u(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):_("",!0)}}),Nn={class:"box"},In={key:0,class:"icon"},Mn=["innerHTML"],Cn=["innerHTML"],An=["innerHTML"],Bn={key:4,class:"link-text"},En={class:"link-text-value"},Hn=b({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{},target:{}},setup(o){return(e,t)=>(a(),k(O,{class:"VPFeature",href:e.link,rel:e.rel,target:e.target,"no-icon":!0,tag:e.link?"a":"div"},{default:f(()=>[p("article",Nn,[typeof e.icon=="object"&&e.icon.wrap?(a(),d("div",In,[g(Q,{image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])])):typeof e.icon=="object"?(a(),k(Q,{key:1,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(a(),d("div",{key:2,class:"icon",innerHTML:e.icon},null,8,Mn)):_("",!0),p("h2",{class:"title",innerHTML:e.title},null,8,Cn),e.details?(a(),d("p",{key:3,class:"details",innerHTML:e.details},null,8,An)):_("",!0),e.linkText?(a(),d("div",Bn,[p("p",En,[F(N(e.linkText)+" ",1),t[0]||(t[0]=p("span",{class:"vpi-arrow-right link-text-icon"},null,-1))])])):_("",!0)])]),_:1},8,["href","rel","target","tag"]))}}),On=$(Hn,[["__scopeId","data-v-f5e9645b"]]),Dn={key:0,class:"VPFeatures"},Fn={class:"container"},Rn={class:"items"},Un=b({__name:"VPFeatures",props:{features:{}},setup(o){const e=o,t=P(()=>{const s=e.features.length;if(s){if(s===2)return"grid-2";if(s===3)return"grid-3";if(s%3===0)return"grid-6";if(s>3)return"grid-4"}else return});return(s,n)=>s.features?(a(),d("div",Dn,[p("div",Fn,[p("div",Rn,[(a(!0),d(M,null,B(s.features,i=>(a(),d("div",{key:i.title,class:I(["item",[t.value]])},[g(On,{icon:i.icon,title:i.title,details:i.details,link:i.link,"link-text":i.linkText,rel:i.rel,target:i.target},null,8,["icon","title","details","link","link-text","rel","target"])],2))),128))])])])):_("",!0)}}),Gn=$(Un,[["__scopeId","data-v-d0a190d7"]]),jn=b({__name:"VPHomeFeatures",setup(o){const{frontmatter:e}=L();return(t,s)=>r(e).features?(a(),k(Gn,{key:0,class:"VPHomeFeatures",features:r(e).features},null,8,["features"])):_("",!0)}}),zn=b({__name:"VPHomeContent",setup(o){const{width:e}=qe({initialWidth:0,includeScrollbar:!1});return(t,s)=>(a(),d("div",{class:"vp-doc container",style:Te(r(e)?{"--vp-offset":`calc(50% - ${r(e)/2}px)`}:{})},[u(t.$slots,"default",{},void 0,!0)],4))}}),Kn=$(zn,[["__scopeId","data-v-7a48a447"]]),Wn={class:"VPHome"},qn=b({__name:"VPHome",setup(o){const{frontmatter:e}=L();return(t,s)=>{const n=K("Content");return a(),d("div",Wn,[u(t.$slots,"home-hero-before",{},void 0,!0),g(wn,null,{"home-hero-info-before":f(()=>[u(t.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(t.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(t.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(t.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(t.$slots,"home-hero-image",{},void 0,!0)]),_:3}),u(t.$slots,"home-hero-after",{},void 0,!0),u(t.$slots,"home-features-before",{},void 0,!0),g(jn),u(t.$slots,"home-features-after",{},void 0,!0),r(e).markdownStyles!==!1?(a(),k(Kn,{key:0},{default:f(()=>[g(n)]),_:1})):(a(),k(n,{key:1}))])}}}),Jn=$(qn,[["__scopeId","data-v-cbb6ec48"]]),Yn={},Xn={class:"VPPage"};function Qn(o,e){const t=K("Content");return a(),d("div",Xn,[u(o.$slots,"page-top"),g(t),u(o.$slots,"page-bottom")])}const Zn=$(Yn,[["render",Qn]]),xn=b({__name:"VPContent",setup(o){const{page:e,frontmatter:t}=L(),{hasSidebar:s}=U();return(n,i)=>(a(),d("div",{class:I(["VPContent",{"has-sidebar":r(s),"is-home":r(t).layout==="home"}]),id:"VPContent"},[r(e).isNotFound?u(n.$slots,"not-found",{key:0},()=>[g(mt)],!0):r(t).layout==="page"?(a(),k(Zn,{key:1},{"page-top":f(()=>[u(n.$slots,"page-top",{},void 0,!0)]),"page-bottom":f(()=>[u(n.$slots,"page-bottom",{},void 0,!0)]),_:3})):r(t).layout==="home"?(a(),k(Jn,{key:2},{"home-hero-before":f(()=>[u(n.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":f(()=>[u(n.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(n.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(n.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(n.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(n.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":f(()=>[u(n.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":f(()=>[u(n.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":f(()=>[u(n.$slots,"home-features-after",{},void 0,!0)]),_:3})):r(t).layout&&r(t).layout!=="doc"?(a(),k(H(r(t).layout),{key:3})):(a(),k(vn,{key:4},{"doc-top":f(()=>[u(n.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":f(()=>[u(n.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":f(()=>[u(n.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":f(()=>[u(n.$slots,"doc-before",{},void 0,!0)]),"doc-after":f(()=>[u(n.$slots,"doc-after",{},void 0,!0)]),"aside-top":f(()=>[u(n.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":f(()=>[u(n.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(n.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(n.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(n.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":f(()=>[u(n.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}}),es=$(xn,[["__scopeId","data-v-91765379"]]),ts={class:"container"},ns=["innerHTML"],ss=["innerHTML"],os=b({__name:"VPFooter",setup(o){const{theme:e,frontmatter:t}=L(),{hasSidebar:s}=U();return(n,i)=>r(e).footer&&r(t).footer!==!1?(a(),d("footer",{key:0,class:I(["VPFooter",{"has-sidebar":r(s)}])},[p("div",ts,[r(e).footer.message?(a(),d("p",{key:0,class:"message",innerHTML:r(e).footer.message},null,8,ns)):_("",!0),r(e).footer.copyright?(a(),d("p",{key:1,class:"copyright",innerHTML:r(e).footer.copyright},null,8,ss)):_("",!0)])],2)):_("",!0)}}),as=$(os,[["__scopeId","data-v-c970a860"]]);function rs(){const{theme:o,frontmatter:e}=L(),t=Se([]),s=P(()=>t.value.length>0);return x(()=>{t.value=_e(e.value.outline??o.value.outline)}),{headers:t,hasLocalNav:s}}const is={class:"menu-text"},ls={class:"header"},cs={class:"outline"},us=b({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(o){const e=o,{theme:t}=L(),s=T(!1),n=T(0),i=T(),l=T();function v(m){var V;(V=i.value)!=null&&V.contains(m.target)||(s.value=!1)}D(s,m=>{if(m){document.addEventListener("click",v);return}document.removeEventListener("click",v)}),ie("Escape",()=>{s.value=!1}),x(()=>{s.value=!1});function c(){s.value=!s.value,n.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function h(m){m.target.classList.contains("outline-link")&&(l.value&&(l.value.style.transition="none"),we(()=>{s.value=!1}))}function y(){s.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return(m,V)=>(a(),d("div",{class:"VPLocalNavOutlineDropdown",style:Te({"--vp-vh":n.value+"px"}),ref_key:"main",ref:i},[m.headers.length>0?(a(),d("button",{key:0,onClick:c,class:I({open:s.value})},[p("span",is,N(r(Ae)(r(t))),1),V[0]||(V[0]=p("span",{class:"vpi-chevron-right icon"},null,-1))],2)):(a(),d("button",{key:1,onClick:y},N(r(t).returnToTopLabel||"Return to top"),1)),g(de,{name:"flyout"},{default:f(()=>[s.value?(a(),d("div",{key:0,ref_key:"items",ref:l,class:"items",onClick:h},[p("div",ls,[p("a",{class:"top-link",href:"#",onClick:y},N(r(t).returnToTopLabel||"Return to top"),1)]),p("div",cs,[g(Be,{headers:m.headers},null,8,["headers"])])],512)):_("",!0)]),_:1})],4))}}),ds=$(us,[["__scopeId","data-v-bc9dc845"]]),vs={class:"container"},ps=["aria-expanded"],fs={class:"menu-text"},hs=b({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(o){const{theme:e,frontmatter:t}=L(),{hasSidebar:s}=U(),{headers:n}=rs(),{y:i}=Ne(),l=T(0);R(()=>{l.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),x(()=>{n.value=_e(t.value.outline??e.value.outline)});const v=P(()=>n.value.length===0),c=P(()=>v.value&&!s.value),h=P(()=>({VPLocalNav:!0,"has-sidebar":s.value,empty:v.value,fixed:c.value}));return(y,m)=>r(t).layout!=="home"&&(!c.value||r(i)>=l.value)?(a(),d("div",{key:0,class:I(h.value)},[p("div",vs,[r(s)?(a(),d("button",{key:0,class:"menu","aria-expanded":y.open,"aria-controls":"VPSidebarNav",onClick:m[0]||(m[0]=V=>y.$emit("open-menu"))},[m[1]||(m[1]=p("span",{class:"vpi-align-left menu-icon"},null,-1)),p("span",fs,N(r(e).sidebarMenuLabel||"Menu"),1)],8,ps)):_("",!0),g(ds,{headers:r(n),navHeight:l.value},null,8,["headers","navHeight"])])],2)):_("",!0)}}),ms=$(hs,[["__scopeId","data-v-070ab83d"]]);function _s(){const o=T(!1);function e(){o.value=!0,window.addEventListener("resize",n)}function t(){o.value=!1,window.removeEventListener("resize",n)}function s(){o.value?t():e()}function n(){window.outerWidth>=768&&t()}const i=ee();return D(()=>i.path,t),{isScreenOpen:o,openScreen:e,closeScreen:t,toggleScreen:s}}const bs={},ks={class:"VPSwitch",type:"button",role:"switch"},gs={class:"check"},$s={key:0,class:"icon"};function ys(o,e){return a(),d("button",ks,[p("span",gs,[o.$slots.default?(a(),d("span",$s,[u(o.$slots,"default",{},void 0,!0)])):_("",!0)])])}const Ps=$(bs,[["render",ys],["__scopeId","data-v-4a1c76db"]]),Vs=b({__name:"VPSwitchAppearance",setup(o){const{isDark:e,theme:t}=L(),s=q("toggle-appearance",()=>{e.value=!e.value}),n=T("");return fe(()=>{n.value=e.value?t.value.lightModeSwitchTitle||"Switch to light theme":t.value.darkModeSwitchTitle||"Switch to dark theme"}),(i,l)=>(a(),k(Ps,{title:n.value,class:"VPSwitchAppearance","aria-checked":r(e),onClick:r(s)},{default:f(()=>l[0]||(l[0]=[p("span",{class:"vpi-sun sun"},null,-1),p("span",{class:"vpi-moon moon"},null,-1)])),_:1},8,["title","aria-checked","onClick"]))}}),be=$(Vs,[["__scopeId","data-v-e40a8bb6"]]),Ss={key:0,class:"VPNavBarAppearance"},Ls=b({__name:"VPNavBarAppearance",setup(o){const{site:e}=L();return(t,s)=>r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),d("div",Ss,[g(be)])):_("",!0)}}),Ts=$(Ls,[["__scopeId","data-v-af096f4a"]]),ke=T();let Ee=!1,ae=0;function ws(o){const e=T(!1);if(te){!Ee&&Ns(),ae++;const t=D(ke,s=>{var n,i,l;s===o.el.value||(n=o.el.value)!=null&&n.contains(s)?(e.value=!0,(i=o.onFocus)==null||i.call(o)):(e.value=!1,(l=o.onBlur)==null||l.call(o))});pe(()=>{t(),ae--,ae||Is()})}return Je(e)}function Ns(){document.addEventListener("focusin",He),Ee=!0,ke.value=document.activeElement}function Is(){document.removeEventListener("focusin",He)}function He(){ke.value=document.activeElement}const Ms={class:"VPMenuLink"},Cs=b({__name:"VPMenuLink",props:{item:{}},setup(o){const{page:e}=L();return(t,s)=>(a(),d("div",Ms,[g(O,{class:I({active:r(z)(r(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel},{default:f(()=>[F(N(t.item.text),1)]),_:1},8,["class","href","target","rel"])]))}}),ne=$(Cs,[["__scopeId","data-v-8b74d055"]]),As={class:"VPMenuGroup"},Bs={key:0,class:"title"},Es=b({__name:"VPMenuGroup",props:{text:{},items:{}},setup(o){return(e,t)=>(a(),d("div",As,[e.text?(a(),d("p",Bs,N(e.text),1)):_("",!0),(a(!0),d(M,null,B(e.items,s=>(a(),d(M,null,["link"in s?(a(),k(ne,{key:0,item:s},null,8,["item"])):_("",!0)],64))),256))]))}}),Hs=$(Es,[["__scopeId","data-v-48c802d0"]]),Os={class:"VPMenu"},Ds={key:0,class:"items"},Fs=b({__name:"VPMenu",props:{items:{}},setup(o){return(e,t)=>(a(),d("div",Os,[e.items?(a(),d("div",Ds,[(a(!0),d(M,null,B(e.items,s=>(a(),d(M,{key:JSON.stringify(s)},["link"in s?(a(),k(ne,{key:0,item:s},null,8,["item"])):"component"in s?(a(),k(H(s.component),j({key:1,ref_for:!0},s.props),null,16)):(a(),k(Hs,{key:2,text:s.text,items:s.items},null,8,["text","items"]))],64))),128))])):_("",!0),u(e.$slots,"default",{},void 0,!0)]))}}),Rs=$(Fs,[["__scopeId","data-v-7dd3104a"]]),Us=["aria-expanded","aria-label"],Gs={key:0,class:"text"},js=["innerHTML"],zs={key:1,class:"vpi-more-horizontal icon"},Ks={class:"menu"},Ws=b({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(o){const e=T(!1),t=T();ws({el:t,onBlur:s});function s(){e.value=!1}return(n,i)=>(a(),d("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:i[1]||(i[1]=l=>e.value=!0),onMouseleave:i[2]||(i[2]=l=>e.value=!1)},[p("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":n.label,onClick:i[0]||(i[0]=l=>e.value=!e.value)},[n.button||n.icon?(a(),d("span",Gs,[n.icon?(a(),d("span",{key:0,class:I([n.icon,"option-icon"])},null,2)):_("",!0),n.button?(a(),d("span",{key:1,innerHTML:n.button},null,8,js)):_("",!0),i[3]||(i[3]=p("span",{class:"vpi-chevron-down text-icon"},null,-1))])):(a(),d("span",zs))],8,Us),p("div",Ks,[g(Rs,{items:n.items},{default:f(()=>[u(n.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}}),ge=$(Ws,[["__scopeId","data-v-04f5c5e9"]]),qs=["href","aria-label","innerHTML"],Js=b({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(o){const e=o,t=P(()=>typeof e.icon=="object"?e.icon.svg:`<span class="vpi-social-${e.icon}" />`);return(s,n)=>(a(),d("a",{class:"VPSocialLink no-icon",href:s.link,"aria-label":s.ariaLabel??(typeof s.icon=="string"?s.icon:""),target:"_blank",rel:"noopener",innerHTML:t.value},null,8,qs))}}),Ys=$(Js,[["__scopeId","data-v-717b8b75"]]),Xs={class:"VPSocialLinks"},Qs=b({__name:"VPSocialLinks",props:{links:{}},setup(o){return(e,t)=>(a(),d("div",Xs,[(a(!0),d(M,null,B(e.links,({link:s,icon:n,ariaLabel:i})=>(a(),k(Ys,{key:s,icon:n,link:s,ariaLabel:i},null,8,["icon","link","ariaLabel"]))),128))]))}}),$e=$(Qs,[["__scopeId","data-v-ee7a9424"]]),Zs={key:0,class:"group translations"},xs={class:"trans-title"},eo={key:1,class:"group"},to={class:"item appearance"},no={class:"label"},so={class:"appearance-action"},oo={key:2,class:"group"},ao={class:"item social-links"},ro=b({__name:"VPNavBarExtra",setup(o){const{site:e,theme:t}=L(),{localeLinks:s,currentLang:n}=Y({correspondingLink:!0}),i=P(()=>s.value.length&&n.value.label||e.value.appearance||t.value.socialLinks);return(l,v)=>i.value?(a(),k(ge,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:f(()=>[r(s).length&&r(n).label?(a(),d("div",Zs,[p("p",xs,N(r(n).label),1),(a(!0),d(M,null,B(r(s),c=>(a(),k(ne,{key:c.link,item:c},null,8,["item"]))),128))])):_("",!0),r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),d("div",eo,[p("div",to,[p("p",no,N(r(t).darkModeSwitchLabel||"Appearance"),1),p("div",so,[g(be)])])])):_("",!0),r(t).socialLinks?(a(),d("div",oo,[p("div",ao,[g($e,{class:"social-links-list",links:r(t).socialLinks},null,8,["links"])])])):_("",!0)]),_:1})):_("",!0)}}),io=$(ro,[["__scopeId","data-v-925effce"]]),lo=["aria-expanded"],co=b({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(o){return(e,t)=>(a(),d("button",{type:"button",class:I(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=s=>e.$emit("click"))},t[1]||(t[1]=[p("span",{class:"container"},[p("span",{class:"top"}),p("span",{class:"middle"}),p("span",{class:"bottom"})],-1)]),10,lo))}}),uo=$(co,[["__scopeId","data-v-5dea55bf"]]),vo=["innerHTML"],po=b({__name:"VPNavBarMenuLink",props:{item:{}},setup(o){const{page:e}=L();return(t,s)=>(a(),k(O,{class:I({VPNavBarMenuLink:!0,active:r(z)(r(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,noIcon:t.item.noIcon,target:t.item.target,rel:t.item.rel,tabindex:"0"},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,vo)]),_:1},8,["class","href","noIcon","target","rel"]))}}),fo=$(po,[["__scopeId","data-v-ed5ac1f6"]]),Oe=b({__name:"VPNavBarMenuGroup",props:{item:{}},setup(o){const e=o,{page:t}=L(),s=i=>"component"in i?!1:"link"in i?z(t.value.relativePath,i.link,!!e.item.activeMatch):i.items.some(s),n=P(()=>s(e.item));return(i,l)=>(a(),k(ge,{class:I({VPNavBarMenuGroup:!0,active:r(z)(r(t).relativePath,i.item.activeMatch,!!i.item.activeMatch)||n.value}),button:i.item.text,items:i.item.items},null,8,["class","button","items"]))}}),ho={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},mo=b({__name:"VPNavBarMenu",setup(o){const{theme:e}=L();return(t,s)=>r(e).nav?(a(),d("nav",ho,[s[0]||(s[0]=p("span",{id:"main-nav-aria-label",class:"visually-hidden"}," Main Navigation ",-1)),(a(!0),d(M,null,B(r(e).nav,n=>(a(),d(M,{key:JSON.stringify(n)},["link"in n?(a(),k(fo,{key:0,item:n},null,8,["item"])):"component"in n?(a(),k(H(n.component),j({key:1,ref_for:!0},n.props),null,16)):(a(),k(Oe,{key:2,item:n},null,8,["item"]))],64))),128))])):_("",!0)}}),_o=$(mo,[["__scopeId","data-v-e6d46098"]]);function bo(o){const{localeIndex:e,theme:t}=L();function s(n){var C,A,w;const i=n.split("."),l=(C=t.value.search)==null?void 0:C.options,v=l&&typeof l=="object",c=v&&((w=(A=l.locales)==null?void 0:A[e.value])==null?void 0:w.translations)||null,h=v&&l.translations||null;let y=c,m=h,V=o;const S=i.pop();for(const E of i){let G=null;const W=V==null?void 0:V[E];W&&(G=V=W);const se=m==null?void 0:m[E];se&&(G=m=se);const oe=y==null?void 0:y[E];oe&&(G=y=oe),W||(V=G),se||(m=G),oe||(y=G)}return(y==null?void 0:y[S])??(m==null?void 0:m[S])??(V==null?void 0:V[S])??""}return s}const ko=["aria-label"],go={class:"DocSearch-Button-Container"},$o={class:"DocSearch-Button-Placeholder"},ye=b({__name:"VPNavBarSearchButton",setup(o){const t=bo({button:{buttonText:"Search",buttonAriaLabel:"Search"}});return(s,n)=>(a(),d("button",{type:"button",class:"DocSearch DocSearch-Button","aria-label":r(t)("button.buttonAriaLabel")},[p("span",go,[n[0]||(n[0]=p("span",{class:"vp-icon DocSearch-Search-Icon"},null,-1)),p("span",$o,N(r(t)("button.buttonText")),1)]),n[1]||(n[1]=p("span",{class:"DocSearch-Button-Keys"},[p("kbd",{class:"DocSearch-Button-Key"}),p("kbd",{class:"DocSearch-Button-Key"},"K")],-1))],8,ko))}}),yo={class:"VPNavBarSearch"},Po={id:"local-search"},Vo={key:1,id:"docsearch"},So=b({__name:"VPNavBarSearch",setup(o){const e=Ye(()=>Xe(()=>import("./VPLocalSearchBox.96yseQxt.js"),__vite__mapDeps([0,1]))),t=()=>null,{theme:s}=L(),n=T(!1),i=T(!1);R(()=>{});function l(){n.value||(n.value=!0,setTimeout(v,16))}function v(){const m=new Event("keydown");m.key="k",m.metaKey=!0,window.dispatchEvent(m),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||v()},16)}function c(m){const V=m.target,S=V.tagName;return V.isContentEditable||S==="INPUT"||S==="SELECT"||S==="TEXTAREA"}const h=T(!1);ie("k",m=>{(m.ctrlKey||m.metaKey)&&(m.preventDefault(),h.value=!0)}),ie("/",m=>{c(m)||(m.preventDefault(),h.value=!0)});const y="local";return(m,V)=>{var S;return a(),d("div",yo,[r(y)==="local"?(a(),d(M,{key:0},[h.value?(a(),k(r(e),{key:0,onClose:V[0]||(V[0]=C=>h.value=!1)})):_("",!0),p("div",Po,[g(ye,{onClick:V[1]||(V[1]=C=>h.value=!0)})])],64)):r(y)==="algolia"?(a(),d(M,{key:1},[n.value?(a(),k(r(t),{key:0,algolia:((S=r(s).search)==null?void 0:S.options)??r(s).algolia,onVnodeBeforeMount:V[2]||(V[2]=C=>i.value=!0)},null,8,["algolia"])):_("",!0),i.value?_("",!0):(a(),d("div",Vo,[g(ye,{onClick:l})]))],64)):_("",!0)])}}}),Lo=b({__name:"VPNavBarSocialLinks",setup(o){const{theme:e}=L();return(t,s)=>r(e).socialLinks?(a(),k($e,{key:0,class:"VPNavBarSocialLinks",links:r(e).socialLinks},null,8,["links"])):_("",!0)}}),To=$(Lo,[["__scopeId","data-v-164c457f"]]),wo=["href","rel","target"],No={key:1},Io={key:2},Mo=b({__name:"VPNavBarTitle",setup(o){const{site:e,theme:t}=L(),{hasSidebar:s}=U(),{currentLang:n}=Y(),i=P(()=>{var c;return typeof t.value.logoLink=="string"?t.value.logoLink:(c=t.value.logoLink)==null?void 0:c.link}),l=P(()=>{var c;return typeof t.value.logoLink=="string"||(c=t.value.logoLink)==null?void 0:c.rel}),v=P(()=>{var c;return typeof t.value.logoLink=="string"||(c=t.value.logoLink)==null?void 0:c.target});return(c,h)=>(a(),d("div",{class:I(["VPNavBarTitle",{"has-sidebar":r(s)}])},[p("a",{class:"title",href:i.value??r(me)(r(n).link),rel:l.value,target:v.value},[u(c.$slots,"nav-bar-title-before",{},void 0,!0),r(t).logo?(a(),k(Q,{key:0,class:"logo",image:r(t).logo},null,8,["image"])):_("",!0),r(t).siteTitle?(a(),d("span",No,N(r(t).siteTitle),1)):r(t).siteTitle===void 0?(a(),d("span",Io,N(r(e).title),1)):_("",!0),u(c.$slots,"nav-bar-title-after",{},void 0,!0)],8,wo)],2))}}),Co=$(Mo,[["__scopeId","data-v-28a961f9"]]),Ao={class:"items"},Bo={class:"title"},Eo=b({__name:"VPNavBarTranslations",setup(o){const{theme:e}=L(),{localeLinks:t,currentLang:s}=Y({correspondingLink:!0});return(n,i)=>r(t).length&&r(s).label?(a(),k(ge,{key:0,class:"VPNavBarTranslations",icon:"vpi-languages",label:r(e).langMenuLabel||"Change language"},{default:f(()=>[p("div",Ao,[p("p",Bo,N(r(s).label),1),(a(!0),d(M,null,B(r(t),l=>(a(),k(ne,{key:l.link,item:l},null,8,["item"]))),128))])]),_:1},8,["label"])):_("",!0)}}),Ho=$(Eo,[["__scopeId","data-v-c80d9ad0"]]),Oo={class:"wrapper"},Do={class:"container"},Fo={class:"title"},Ro={class:"content"},Uo={class:"content-body"},Go=b({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(o){const e=o,{y:t}=Ne(),{hasSidebar:s}=U(),{frontmatter:n}=L(),i=T({});return fe(()=>{i.value={"has-sidebar":s.value,home:n.value.layout==="home",top:t.value===0,"screen-open":e.isScreenOpen}}),(l,v)=>(a(),d("div",{class:I(["VPNavBar",i.value])},[p("div",Oo,[p("div",Do,[p("div",Fo,[g(Co,null,{"nav-bar-title-before":f(()=>[u(l.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(l.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),p("div",Ro,[p("div",Uo,[u(l.$slots,"nav-bar-content-before",{},void 0,!0),g(So,{class:"search"}),g(_o,{class:"menu"}),g(Ho,{class:"translations"}),g(Ts,{class:"appearance"}),g(To,{class:"social-links"}),g(io,{class:"extra"}),u(l.$slots,"nav-bar-content-after",{},void 0,!0),g(uo,{class:"hamburger",active:l.isScreenOpen,onClick:v[0]||(v[0]=c=>l.$emit("toggle-screen"))},null,8,["active"])])])])]),v[1]||(v[1]=p("div",{class:"divider"},[p("div",{class:"divider-line"})],-1))],2))}}),jo=$(Go,[["__scopeId","data-v-822684d1"]]),zo={key:0,class:"VPNavScreenAppearance"},Ko={class:"text"},Wo=b({__name:"VPNavScreenAppearance",setup(o){const{site:e,theme:t}=L();return(s,n)=>r(e).appearance&&r(e).appearance!=="force-dark"&&r(e).appearance!=="force-auto"?(a(),d("div",zo,[p("p",Ko,N(r(t).darkModeSwitchLabel||"Appearance"),1),g(be)])):_("",!0)}}),qo=$(Wo,[["__scopeId","data-v-ffb44008"]]),Jo=b({__name:"VPNavScreenMenuLink",props:{item:{}},setup(o){const e=q("close-screen");return(t,s)=>(a(),k(O,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:r(e),innerHTML:t.item.text},null,8,["href","target","rel","onClick","innerHTML"]))}}),Yo=$(Jo,[["__scopeId","data-v-27d04aeb"]]),Xo=b({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(o){const e=q("close-screen");return(t,s)=>(a(),k(O,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:r(e)},{default:f(()=>[F(N(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}}),De=$(Xo,[["__scopeId","data-v-7179dbb7"]]),Qo={class:"VPNavScreenMenuGroupSection"},Zo={key:0,class:"title"},xo=b({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(o){return(e,t)=>(a(),d("div",Qo,[e.text?(a(),d("p",Zo,N(e.text),1)):_("",!0),(a(!0),d(M,null,B(e.items,s=>(a(),k(De,{key:s.text,item:s},null,8,["item"]))),128))]))}}),ea=$(xo,[["__scopeId","data-v-4b8941ac"]]),ta=["aria-controls","aria-expanded"],na=["innerHTML"],sa=["id"],oa={key:0,class:"item"},aa={key:1,class:"item"},ra={key:2,class:"group"},ia=b({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(o){const e=o,t=T(!1),s=P(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function n(){t.value=!t.value}return(i,l)=>(a(),d("div",{class:I(["VPNavScreenMenuGroup",{open:t.value}])},[p("button",{class:"button","aria-controls":s.value,"aria-expanded":t.value,onClick:n},[p("span",{class:"button-text",innerHTML:i.text},null,8,na),l[0]||(l[0]=p("span",{class:"vpi-plus button-icon"},null,-1))],8,ta),p("div",{id:s.value,class:"items"},[(a(!0),d(M,null,B(i.items,v=>(a(),d(M,{key:JSON.stringify(v)},["link"in v?(a(),d("div",oa,[g(De,{item:v},null,8,["item"])])):"component"in v?(a(),d("div",aa,[(a(),k(H(v.component),j({ref_for:!0},v.props,{"screen-menu":""}),null,16))])):(a(),d("div",ra,[g(ea,{text:v.text,items:v.items},null,8,["text","items"])]))],64))),128))],8,sa)],2))}}),Fe=$(ia,[["__scopeId","data-v-875057a5"]]),la={key:0,class:"VPNavScreenMenu"},ca=b({__name:"VPNavScreenMenu",setup(o){const{theme:e}=L();return(t,s)=>r(e).nav?(a(),d("nav",la,[(a(!0),d(M,null,B(r(e).nav,n=>(a(),d(M,{key:JSON.stringify(n)},["link"in n?(a(),k(Yo,{key:0,item:n},null,8,["item"])):"component"in n?(a(),k(H(n.component),j({key:1,ref_for:!0},n.props,{"screen-menu":""}),null,16)):(a(),k(Fe,{key:2,text:n.text||"",items:n.items},null,8,["text","items"]))],64))),128))])):_("",!0)}}),ua=b({__name:"VPNavScreenSocialLinks",setup(o){const{theme:e}=L();return(t,s)=>r(e).socialLinks?(a(),k($e,{key:0,class:"VPNavScreenSocialLinks",links:r(e).socialLinks},null,8,["links"])):_("",!0)}}),da={class:"list"},va=b({__name:"VPNavScreenTranslations",setup(o){const{localeLinks:e,currentLang:t}=Y({correspondingLink:!0}),s=T(!1);function n(){s.value=!s.value}return(i,l)=>r(e).length&&r(t).label?(a(),d("div",{key:0,class:I(["VPNavScreenTranslations",{open:s.value}])},[p("button",{class:"title",onClick:n},[l[0]||(l[0]=p("span",{class:"vpi-languages icon lang"},null,-1)),F(" "+N(r(t).label)+" ",1),l[1]||(l[1]=p("span",{class:"vpi-chevron-down icon chevron"},null,-1))]),p("ul",da,[(a(!0),d(M,null,B(r(e),v=>(a(),d("li",{key:v.link,class:"item"},[g(O,{class:"link",href:v.link},{default:f(()=>[F(N(v.text),1)]),_:2},1032,["href"])]))),128))])],2)):_("",!0)}}),pa=$(va,[["__scopeId","data-v-362991c2"]]),fa={class:"container"},ha=b({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(o){const e=T(null),t=Ie(te?document.body:null);return(s,n)=>(a(),k(de,{name:"fade",onEnter:n[0]||(n[0]=i=>t.value=!0),onAfterLeave:n[1]||(n[1]=i=>t.value=!1)},{default:f(()=>[s.open?(a(),d("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[p("div",fa,[u(s.$slots,"nav-screen-content-before",{},void 0,!0),g(ca,{class:"menu"}),g(pa,{class:"translations"}),g(qo,{class:"appearance"}),g(ua,{class:"social-links"}),u(s.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):_("",!0)]),_:3}))}}),ma=$(ha,[["__scopeId","data-v-833aabba"]]),_a={key:0,class:"VPNav"},ba=b({__name:"VPNav",setup(o){const{isScreenOpen:e,closeScreen:t,toggleScreen:s}=_s(),{frontmatter:n}=L(),i=P(()=>n.value.navbar!==!1);return he("close-screen",t),Z(()=>{te&&document.documentElement.classList.toggle("hide-nav",!i.value)}),(l,v)=>i.value?(a(),d("header",_a,[g(jo,{"is-screen-open":r(e),onToggleScreen:r(s)},{"nav-bar-title-before":f(()=>[u(l.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(l.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":f(()=>[u(l.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":f(()=>[u(l.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),g(ma,{open:r(e)},{"nav-screen-content-before":f(()=>[u(l.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":f(()=>[u(l.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])])):_("",!0)}}),ka=$(ba,[["__scopeId","data-v-f1e365da"]]),ga=["role","tabindex"],$a={key:1,class:"items"},ya=b({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(o){const e=o,{collapsed:t,collapsible:s,isLink:n,isActiveLink:i,hasActiveLink:l,hasChildren:v,toggle:c}=gt(P(()=>e.item)),h=P(()=>v.value?"section":"div"),y=P(()=>n.value?"a":"div"),m=P(()=>v.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),V=P(()=>n.value?void 0:"button"),S=P(()=>[[`level-${e.depth}`],{collapsible:s.value},{collapsed:t.value},{"is-link":n.value},{"is-active":i.value},{"has-active":l.value}]);function C(w){"key"in w&&w.key!=="Enter"||!e.item.link&&c()}function A(){e.item.link&&c()}return(w,E)=>{const G=K("VPSidebarItem",!0);return a(),k(H(h.value),{class:I(["VPSidebarItem",S.value])},{default:f(()=>[w.item.text?(a(),d("div",j({key:0,class:"item",role:V.value},Qe(w.item.items?{click:C,keydown:C}:{},!0),{tabindex:w.item.items&&0}),[E[1]||(E[1]=p("div",{class:"indicator"},null,-1)),w.item.link?(a(),k(O,{key:0,tag:y.value,class:"link",href:w.item.link,rel:w.item.rel,target:w.item.target},{default:f(()=>[(a(),k(H(m.value),{class:"text",innerHTML:w.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(a(),k(H(m.value),{key:1,class:"text",innerHTML:w.item.text},null,8,["innerHTML"])),w.item.collapsed!=null&&w.item.items&&w.item.items.length?(a(),d("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:A,onKeydown:Ze(A,["enter"]),tabindex:"0"},E[0]||(E[0]=[p("span",{class:"vpi-chevron-right caret-icon"},null,-1)]),32)):_("",!0)],16,ga)):_("",!0),w.item.items&&w.item.items.length?(a(),d("div",$a,[w.depth<5?(a(!0),d(M,{key:0},B(w.item.items,W=>(a(),k(G,{key:W.text,item:W,depth:w.depth+1},null,8,["item","depth"]))),128)):_("",!0)])):_("",!0)]),_:1},8,["class"])}}}),Pa=$(ya,[["__scopeId","data-v-196b2e5f"]]),Va=b({__name:"VPSidebarGroup",props:{items:{}},setup(o){const e=T(!0);let t=null;return R(()=>{t=setTimeout(()=>{t=null,e.value=!1},300)}),xe(()=>{t!=null&&(clearTimeout(t),t=null)}),(s,n)=>(a(!0),d(M,null,B(s.items,i=>(a(),d("div",{key:i.text,class:I(["group",{"no-transition":e.value}])},[g(Pa,{item:i,depth:0},null,8,["item"])],2))),128))}}),Sa=$(Va,[["__scopeId","data-v-9e426adc"]]),La={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Ta=b({__name:"VPSidebar",props:{open:{type:Boolean}},setup(o){const{sidebarGroups:e,hasSidebar:t}=U(),s=o,n=T(null),i=Ie(te?document.body:null);D([s,n],()=>{var v;s.open?(i.value=!0,(v=n.value)==null||v.focus()):i.value=!1},{immediate:!0,flush:"post"});const l=T(0);return D(e,()=>{l.value+=1},{deep:!0}),(v,c)=>r(t)?(a(),d("aside",{key:0,class:I(["VPSidebar",{open:v.open}]),ref_key:"navEl",ref:n,onClick:c[0]||(c[0]=et(()=>{},["stop"]))},[c[2]||(c[2]=p("div",{class:"curtain"},null,-1)),p("nav",La,[c[1]||(c[1]=p("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),u(v.$slots,"sidebar-nav-before",{},void 0,!0),(a(),k(Sa,{items:r(e),key:l.value},null,8,["items"])),u(v.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):_("",!0)}}),wa=$(Ta,[["__scopeId","data-v-18756405"]]),Na=b({__name:"VPSkipLink",setup(o){const e=ee(),t=T();D(()=>e.path,()=>t.value.focus());function s({target:n}){const i=document.getElementById(decodeURIComponent(n.hash).slice(1));if(i){const l=()=>{i.removeAttribute("tabindex"),i.removeEventListener("blur",l)};i.setAttribute("tabindex","-1"),i.addEventListener("blur",l),i.focus(),window.scrollTo(0,0)}}return(n,i)=>(a(),d(M,null,[p("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),p("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:s}," Skip to content ")],64))}}),Ia=$(Na,[["__scopeId","data-v-c3508ec8"]]),Ma=b({__name:"Layout",setup(o){const{isOpen:e,open:t,close:s}=U(),n=ee();D(()=>n.path,s),kt(e,s);const{frontmatter:i}=L(),l=Me(),v=P(()=>!!l["home-hero-image"]);return he("hero-image-slot-exists",v),(c,h)=>{const y=K("Content");return r(i).layout!==!1?(a(),d("div",{key:0,class:I(["Layout",r(i).pageClass])},[u(c.$slots,"layout-top",{},void 0,!0),g(Ia),g(rt,{class:"backdrop",show:r(e),onClick:r(s)},null,8,["show","onClick"]),g(ka,null,{"nav-bar-title-before":f(()=>[u(c.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(c.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":f(()=>[u(c.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":f(()=>[u(c.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":f(()=>[u(c.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":f(()=>[u(c.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),g(ms,{open:r(e),onOpenMenu:r(t)},null,8,["open","onOpenMenu"]),g(wa,{open:r(e)},{"sidebar-nav-before":f(()=>[u(c.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":f(()=>[u(c.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),g(es,null,{"page-top":f(()=>[u(c.$slots,"page-top",{},void 0,!0)]),"page-bottom":f(()=>[u(c.$slots,"page-bottom",{},void 0,!0)]),"not-found":f(()=>[u(c.$slots,"not-found",{},void 0,!0)]),"home-hero-before":f(()=>[u(c.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":f(()=>[u(c.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(c.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(c.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(c.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(c.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":f(()=>[u(c.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":f(()=>[u(c.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":f(()=>[u(c.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":f(()=>[u(c.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":f(()=>[u(c.$slots,"doc-before",{},void 0,!0)]),"doc-after":f(()=>[u(c.$slots,"doc-after",{},void 0,!0)]),"doc-top":f(()=>[u(c.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":f(()=>[u(c.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":f(()=>[u(c.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":f(()=>[u(c.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":f(()=>[u(c.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(c.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(c.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(c.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),g(as),u(c.$slots,"layout-bottom",{},void 0,!0)],2)):(a(),k(y,{key:1}))}}}),Ca=$(Ma,[["__scopeId","data-v-a9a9e638"]]),Aa={Layout:Ca,enhanceApp:({app:o})=>{o.component("Badge",st)}},Ba=o=>{if(typeof document>"u")return{stabilizeScrollPosition:n=>async(...i)=>n(...i)};const e=document.documentElement;return{stabilizeScrollPosition:s=>async(...n)=>{const i=s(...n),l=o.value;if(!l)return i;const v=l.offsetTop-e.scrollTop;return await we(),e.scrollTop=l.offsetTop-v,i}}},Re="vitepress:tabSharedState",J=typeof localStorage<"u"?localStorage:null,Ue="vitepress:tabsSharedState",Ea=()=>{const o=J==null?void 0:J.getItem(Ue);if(o)try{return JSON.parse(o)}catch{}return{}},Ha=o=>{J&&J.setItem(Ue,JSON.stringify(o))},Oa=o=>{const e=tt({});D(()=>e.content,(t,s)=>{t&&s&&Ha(t)},{deep:!0}),o.provide(Re,e)},Da=(o,e)=>{const t=q(Re);if(!t)throw new Error("[vitepress-plugin-tabs] TabsSharedState should be injected");R(()=>{t.content||(t.content=Ea())});const s=T(),n=P({get(){var c;const l=e.value,v=o.value;if(l){const h=(c=t.content)==null?void 0:c[l];if(h&&v.includes(h))return h}else{const h=s.value;if(h)return h}return v[0]},set(l){const v=e.value;v?t.content&&(t.content[v]=l):s.value=l}});return{selected:n,select:l=>{n.value=l}}};let Pe=0;const Fa=()=>(Pe++,""+Pe);function Ra(){const o=Me();return P(()=>{var s;const t=(s=o.default)==null?void 0:s.call(o);return t?t.filter(n=>typeof n.type=="object"&&"__name"in n.type&&n.type.__name==="PluginTabsTab"&&n.props).map(n=>{var i;return(i=n.props)==null?void 0:i.label}):[]})}const Ge="vitepress:tabSingleState",Ua=o=>{he(Ge,o)},Ga=()=>{const o=q(Ge);if(!o)throw new Error("[vitepress-plugin-tabs] TabsSingleState should be injected");return o},ja={class:"plugin-tabs"},za=["id","aria-selected","aria-controls","tabindex","onClick"],Ka=b({__name:"PluginTabs",props:{sharedStateKey:{}},setup(o){const e=o,t=Ra(),{selected:s,select:n}=Da(t,nt(e,"sharedStateKey")),i=T(),{stabilizeScrollPosition:l}=Ba(i),v=l(n),c=T([]),h=m=>{var C;const V=t.value.indexOf(s.value);let S;m.key==="ArrowLeft"?S=V>=1?V-1:t.value.length-1:m.key==="ArrowRight"&&(S=V<t.value.length-1?V+1:0),S!==void 0&&(v(t.value[S]),(C=c.value[S])==null||C.focus())},y=Fa();return Ua({uid:y,selected:s}),(m,V)=>(a(),d("div",ja,[p("div",{ref_key:"tablist",ref:i,class:"plugin-tabs--tab-list",role:"tablist",onKeydown:h},[(a(!0),d(M,null,B(r(t),S=>(a(),d("button",{id:`tab-${S}-${r(y)}`,ref_for:!0,ref_key:"buttonRefs",ref:c,key:S,role:"tab",class:"plugin-tabs--tab","aria-selected":S===r(s),"aria-controls":`panel-${S}-${r(y)}`,tabindex:S===r(s)?0:-1,onClick:()=>r(v)(S)},N(S),9,za))),128))],544),u(m.$slots,"default")]))}}),Wa=["id","aria-labelledby"],qa=b({__name:"PluginTabsTab",props:{label:{}},setup(o){const{uid:e,selected:t}=Ga();return(s,n)=>r(t)===s.label?(a(),d("div",{key:0,id:`panel-${s.label}-${r(e)}`,class:"plugin-tabs--content",role:"tabpanel",tabindex:"0","aria-labelledby":`tab-${s.label}-${r(e)}`},[u(s.$slots,"default",{},void 0,!0)],8,Wa)):_("",!0)}}),Ja=$(qa,[["__scopeId","data-v-9b0d03d2"]]),Ya=o=>{Oa(o),o.component("PluginTabs",Ka),o.component("PluginTabsTab",Ja)},Xa=b({__name:"VersionPicker",props:{screenMenu:{type:Boolean}},setup(o){const e=T([]),t=T("Versions"),s=T(!1);Ve();const n=()=>typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),i=()=>{if(typeof window>"u")return"";const{origin:c,pathname:h}=window.location;if(c.includes("github.io")){const y=h.split("/").filter(Boolean),m=y.length>0?`/${y[0]}/`:"/";return`${c}${m}`}else return c},l=()=>new Promise(c=>{if(n()){c(!1);return}const h=setInterval(()=>{window.DOC_VERSIONS&&window.DOCUMENTER_CURRENT_VERSION&&(clearInterval(h),c(!0))},100);setTimeout(()=>{clearInterval(h),c(!1)},5e3)});return R(async()=>{if(!(typeof window>"u")){try{if(n()){const c=["dev"];e.value=c.map(h=>({text:h,link:"/"})),t.value="dev"}else{const c=await l(),h=P(()=>i());if(c&&window.DOC_VERSIONS&&window.DOCUMENTER_CURRENT_VERSION)e.value=window.DOC_VERSIONS.map(y=>({text:y,link:`${h.value}/${y}/`})),t.value=window.DOCUMENTER_CURRENT_VERSION;else{const y=["dev"];e.value=y.map(m=>({text:m,link:`${h.value}/${m}/`})),t.value="dev"}}}catch(c){console.warn("Error loading versions:",c);const h=["dev"],y=P(()=>i());e.value=h.map(m=>({text:m,link:`${y.value}/${m}/`})),t.value="dev"}s.value=!0}}),(c,h)=>s.value?(a(),d(M,{key:0},[!c.screenMenu&&e.value.length>0?(a(),k(Oe,{key:0,item:{text:t.value,items:e.value},class:"VPVersionPicker"},null,8,["item"])):c.screenMenu&&e.value.length>0?(a(),k(Fe,{key:1,text:t.value,items:e.value,class:"VPVersionPicker"},null,8,["text","items"])):_("",!0)],64)):_("",!0)}}),Qa=$(Xa,[["__scopeId","data-v-f465cb49"]]),xa={extends:Aa,enhanceApp({app:o,router:e,siteData:t}){Ya(o),o.component("VersionPicker",Qa)}};export{xa as R,bo as c,L as u}; diff --git a/dev/assets/chunks/theme.nAO4pd4Y.js b/dev/assets/chunks/theme.nAO4pd4Y.js deleted file mode 100644 index 4a91ede63..000000000 --- a/dev/assets/chunks/theme.nAO4pd4Y.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/chunks/VPLocalSearchBox.Oxp-ssWh.js","assets/chunks/framework.C6EFuEL4.js"])))=>i.map(i=>d[i]); -import{d as b,o as a,c as d,r as u,n as I,a as F,t as N,b as k,w as f,e as _,T as de,_ as $,u as Ve,i as Ge,f as ze,g as ve,h as P,j as p,k as i,l as z,m as re,p as T,q as D,s as Z,v as R,x as pe,y as fe,z as Ke,A as We,B as K,F as M,C as B,D as Se,E as x,G as g,H,I as Le,J as ee,K as G,L as q,M as qe,N as Te,O as ie,P as we,Q as Ne,R as te,S as Je,U as Ye,V as Xe,W as Ie,X as he,Y as Qe,Z as Ze,$ as xe,a0 as et,a1 as Me,a2 as tt,a3 as nt}from"./framework.C6EFuEL4.js";const st=b({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(o){return(e,t)=>(a(),d("span",{class:I(["VPBadge",e.type])},[u(e.$slots,"default",{},()=>[F(N(e.text),1)])],2))}}),ot={key:0,class:"VPBackdrop"},at=b({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(o){return(e,t)=>(a(),k(de,{name:"fade"},{default:f(()=>[e.show?(a(),d("div",ot)):_("",!0)]),_:1}))}}),rt=$(at,[["__scopeId","data-v-b06cdb19"]]),L=Ve;function it(o,e){let t,s=!1;return()=>{t&&clearTimeout(t),s?t=setTimeout(o,e):(o(),(s=!0)&&setTimeout(()=>s=!1,e))}}function le(o){return/^\//.test(o)?o:`/${o}`}function me(o){const{pathname:e,search:t,hash:s,protocol:n}=new URL(o,"http://a.com");if(Ge(o)||o.startsWith("#")||!n.startsWith("http")||!ze(e))return o;const{site:r}=L(),l=e.endsWith("/")||e.endsWith(".html")?o:o.replace(/(?:(^\.+)\/)?.*$/,`$1${e.replace(/(\.md)?$/,r.value.cleanUrls?"":".html")}${t}${s}`);return ve(l)}function Y({correspondingLink:o=!1}={}){const{site:e,localeIndex:t,page:s,theme:n,hash:r}=L(),l=P(()=>{var c,h;return{label:(c=e.value.locales[t.value])==null?void 0:c.label,link:((h=e.value.locales[t.value])==null?void 0:h.link)||(t.value==="root"?"/":`/${t.value}/`)}});return{localeLinks:P(()=>Object.entries(e.value.locales).flatMap(([c,h])=>l.value.label===h.label?[]:{text:h.label,link:lt(h.link||(c==="root"?"/":`/${c}/`),n.value.i18nRouting!==!1&&o,s.value.relativePath.slice(l.value.link.length-1),!e.value.cleanUrls)+r.value})),currentLang:l}}function lt(o,e,t,s){return e?o.replace(/\/$/,"")+le(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,s?".html":"")):o}const ct={class:"NotFound"},ut={class:"code"},dt={class:"title"},vt={class:"quote"},pt={class:"action"},ft=["href","aria-label"],ht=b({__name:"NotFound",setup(o){const{theme:e}=L(),{currentLang:t}=Y();return(s,n)=>{var r,l,v,c,h;return a(),d("div",ct,[p("p",ut,N(((r=i(e).notFound)==null?void 0:r.code)??"404"),1),p("h1",dt,N(((l=i(e).notFound)==null?void 0:l.title)??"PAGE NOT FOUND"),1),n[0]||(n[0]=p("div",{class:"divider"},null,-1)),p("blockquote",vt,N(((v=i(e).notFound)==null?void 0:v.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),p("div",pt,[p("a",{class:"link",href:i(ve)(i(t).link),"aria-label":((c=i(e).notFound)==null?void 0:c.linkLabel)??"go to home"},N(((h=i(e).notFound)==null?void 0:h.linkText)??"Take me home"),9,ft)])])}}}),mt=$(ht,[["__scopeId","data-v-951cab6c"]]);function Ce(o,e){if(Array.isArray(o))return X(o);if(o==null)return[];e=le(e);const t=Object.keys(o).sort((n,r)=>r.split("/").length-n.split("/").length).find(n=>e.startsWith(le(n))),s=t?o[t]:[];return Array.isArray(s)?X(s):X(s.items,s.base)}function _t(o){const e=[];let t=0;for(const s in o){const n=o[s];if(n.items){t=e.push(n);continue}e[t]||e.push({items:[]}),e[t].items.push(n)}return e}function bt(o){const e=[];function t(s){for(const n of s)n.text&&n.link&&e.push({text:n.text,link:n.link,docFooterText:n.docFooterText}),n.items&&t(n.items)}return t(o),e}function ce(o,e){return Array.isArray(e)?e.some(t=>ce(o,t)):z(o,e.link)?!0:e.items?ce(o,e.items):!1}function X(o,e){return[...o].map(t=>{const s={...t},n=s.base||e;return n&&s.link&&(s.link=n+s.link),s.items&&(s.items=X(s.items,n)),s})}function U(){const{frontmatter:o,page:e,theme:t}=L(),s=re("(min-width: 960px)"),n=T(!1),r=P(()=>{const A=t.value.sidebar,w=e.value.relativePath;return A?Ce(A,w):[]}),l=T(r.value);D(r,(A,w)=>{JSON.stringify(A)!==JSON.stringify(w)&&(l.value=r.value)});const v=P(()=>o.value.sidebar!==!1&&l.value.length>0&&o.value.layout!=="home"),c=P(()=>h?o.value.aside==null?t.value.aside==="left":o.value.aside==="left":!1),h=P(()=>o.value.layout==="home"?!1:o.value.aside!=null?!!o.value.aside:t.value.aside!==!1),y=P(()=>v.value&&s.value),m=P(()=>v.value?_t(l.value):[]);function V(){n.value=!0}function S(){n.value=!1}function C(){n.value?S():V()}return{isOpen:n,sidebar:l,sidebarGroups:m,hasSidebar:v,hasAside:h,leftAside:c,isSidebarEnabled:y,open:V,close:S,toggle:C}}function kt(o,e){let t;Z(()=>{t=o.value?document.activeElement:void 0}),R(()=>{window.addEventListener("keyup",s)}),pe(()=>{window.removeEventListener("keyup",s)});function s(n){n.key==="Escape"&&o.value&&(e(),t==null||t.focus())}}function gt(o){const{page:e,hash:t}=L(),s=T(!1),n=P(()=>o.value.collapsed!=null),r=P(()=>!!o.value.link),l=T(!1),v=()=>{l.value=z(e.value.relativePath,o.value.link)};D([e,o,t],v),R(v);const c=P(()=>l.value?!0:o.value.items?ce(e.value.relativePath,o.value.items):!1),h=P(()=>!!(o.value.items&&o.value.items.length));Z(()=>{s.value=!!(n.value&&o.value.collapsed)}),fe(()=>{(l.value||c.value)&&(s.value=!1)});function y(){n.value&&(s.value=!s.value)}return{collapsed:s,collapsible:n,isLink:r,isActiveLink:l,hasActiveLink:c,hasChildren:h,toggle:y}}function $t(){const{hasSidebar:o}=U(),e=re("(min-width: 960px)"),t=re("(min-width: 1280px)");return{isAsideEnabled:P(()=>!t.value&&!e.value?!1:o.value?t.value:e.value)}}const ue=[];function Ae(o){return typeof o.outline=="object"&&!Array.isArray(o.outline)&&o.outline.label||o.outlineTitle||"On this page"}function _e(o){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const s=Number(t.tagName[1]);return{element:t,title:yt(t),link:"#"+t.id,level:s}});return Pt(e,o)}function yt(o){let e="";for(const t of o.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor")||t.classList.contains("ignore-header"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function Pt(o,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[s,n]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;o=o.filter(l=>l.level>=s&&l.level<=n),ue.length=0;for(const{element:l,link:v}of o)ue.push({element:l,link:v});const r=[];e:for(let l=0;l<o.length;l++){const v=o[l];if(l===0)r.push(v);else{for(let c=l-1;c>=0;c--){const h=o[c];if(h.level<v.level){(h.children||(h.children=[])).push(v);continue e}}r.push(v)}}return r}function Vt(o,e){const{isAsideEnabled:t}=$t(),s=it(r,100);let n=null;R(()=>{requestAnimationFrame(r),window.addEventListener("scroll",s)}),Ke(()=>{l(location.hash)}),pe(()=>{window.removeEventListener("scroll",s)});function r(){if(!t.value)return;const v=window.scrollY,c=window.innerHeight,h=document.body.offsetHeight,y=Math.abs(v+c-h)<1,m=ue.map(({element:S,link:C})=>({link:C,top:St(S)})).filter(({top:S})=>!Number.isNaN(S)).sort((S,C)=>S.top-C.top);if(!m.length){l(null);return}if(v<1){l(null);return}if(y){l(m[m.length-1].link);return}let V=null;for(const{link:S,top:C}of m){if(C>v+We()+4)break;V=S}l(V)}function l(v){n&&n.classList.remove("active"),v==null?n=null:n=o.value.querySelector(`a[href="${decodeURIComponent(v)}"]`);const c=n;c?(c.classList.add("active"),e.value.style.top=c.offsetTop+39+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function St(o){let e=0;for(;o!==document.body;){if(o===null)return NaN;e+=o.offsetTop,o=o.offsetParent}return e}const Lt=["href","title"],Tt=b({__name:"VPDocOutlineItem",props:{headers:{},root:{type:Boolean}},setup(o){function e({target:t}){const s=t.href.split("#")[1],n=document.getElementById(decodeURIComponent(s));n==null||n.focus({preventScroll:!0})}return(t,s)=>{const n=K("VPDocOutlineItem",!0);return a(),d("ul",{class:I(["VPDocOutlineItem",t.root?"root":"nested"])},[(a(!0),d(M,null,B(t.headers,({children:r,link:l,title:v})=>(a(),d("li",null,[p("a",{class:"outline-link",href:l,onClick:e,title:v},N(v),9,Lt),r!=null&&r.length?(a(),k(n,{key:0,headers:r},null,8,["headers"])):_("",!0)]))),256))],2)}}}),Be=$(Tt,[["__scopeId","data-v-3f927ebe"]]),wt={class:"content"},Nt={"aria-level":"2",class:"outline-title",id:"doc-outline-aria-label",role:"heading"},It=b({__name:"VPDocAsideOutline",setup(o){const{frontmatter:e,theme:t}=L(),s=Se([]);x(()=>{s.value=_e(e.value.outline??t.value.outline)});const n=T(),r=T();return Vt(n,r),(l,v)=>(a(),d("nav",{"aria-labelledby":"doc-outline-aria-label",class:I(["VPDocAsideOutline",{"has-outline":s.value.length>0}]),ref_key:"container",ref:n},[p("div",wt,[p("div",{class:"outline-marker",ref_key:"marker",ref:r},null,512),p("div",Nt,N(i(Ae)(i(t))),1),g(Be,{headers:s.value,root:!0},null,8,["headers"])])],2))}}),Mt=$(It,[["__scopeId","data-v-b38bf2ff"]]),Ct={class:"VPDocAsideCarbonAds"},At=b({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(o){const e=()=>null;return(t,s)=>(a(),d("div",Ct,[g(i(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),Bt={class:"VPDocAside"},Et=b({__name:"VPDocAside",setup(o){const{theme:e}=L();return(t,s)=>(a(),d("div",Bt,[u(t.$slots,"aside-top",{},void 0,!0),u(t.$slots,"aside-outline-before",{},void 0,!0),g(Mt),u(t.$slots,"aside-outline-after",{},void 0,!0),s[0]||(s[0]=p("div",{class:"spacer"},null,-1)),u(t.$slots,"aside-ads-before",{},void 0,!0),i(e).carbonAds?(a(),k(At,{key:0,"carbon-ads":i(e).carbonAds},null,8,["carbon-ads"])):_("",!0),u(t.$slots,"aside-ads-after",{},void 0,!0),u(t.$slots,"aside-bottom",{},void 0,!0)]))}}),Ht=$(Et,[["__scopeId","data-v-6d7b3c46"]]);function Ot(){const{theme:o,page:e}=L();return P(()=>{const{text:t="Edit this page",pattern:s=""}=o.value.editLink||{};let n;return typeof s=="function"?n=s(e.value):n=s.replace(/:path/g,e.value.filePath),{url:n,text:t}})}function Dt(){const{page:o,theme:e,frontmatter:t}=L();return P(()=>{var h,y,m,V,S,C,A,w;const s=Ce(e.value.sidebar,o.value.relativePath),n=bt(s),r=Ft(n,E=>E.link.replace(/[?#].*$/,"")),l=r.findIndex(E=>z(o.value.relativePath,E.link)),v=((h=e.value.docFooter)==null?void 0:h.prev)===!1&&!t.value.prev||t.value.prev===!1,c=((y=e.value.docFooter)==null?void 0:y.next)===!1&&!t.value.next||t.value.next===!1;return{prev:v?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((m=r[l-1])==null?void 0:m.docFooterText)??((V=r[l-1])==null?void 0:V.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((S=r[l-1])==null?void 0:S.link)},next:c?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((C=r[l+1])==null?void 0:C.docFooterText)??((A=r[l+1])==null?void 0:A.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((w=r[l+1])==null?void 0:w.link)}}})}function Ft(o,e){const t=new Set;return o.filter(s=>{const n=e(s);return t.has(n)?!1:t.add(n)})}const O=b({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(o){const e=o,t=P(()=>e.tag??(e.href?"a":"span")),s=P(()=>e.href&&Le.test(e.href)||e.target==="_blank");return(n,r)=>(a(),k(H(t.value),{class:I(["VPLink",{link:n.href,"vp-external-link-icon":s.value,"no-icon":n.noIcon}]),href:n.href?i(me)(n.href):void 0,target:n.target??(s.value?"_blank":void 0),rel:n.rel??(s.value?"noreferrer":void 0)},{default:f(()=>[u(n.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),Rt={class:"VPLastUpdated"},Ut=["datetime"],jt=b({__name:"VPDocFooterLastUpdated",setup(o){const{theme:e,page:t,lang:s}=L(),n=P(()=>new Date(t.value.lastUpdated)),r=P(()=>n.value.toISOString()),l=T("");return R(()=>{Z(()=>{var v,c,h;l.value=new Intl.DateTimeFormat((c=(v=e.value.lastUpdated)==null?void 0:v.formatOptions)!=null&&c.forceLocale?s.value:void 0,((h=e.value.lastUpdated)==null?void 0:h.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(n.value)})}),(v,c)=>{var h;return a(),d("p",Rt,[F(N(((h=i(e).lastUpdated)==null?void 0:h.text)||i(e).lastUpdatedText||"Last updated")+": ",1),p("time",{datetime:r.value},N(l.value),9,Ut)])}}}),Gt=$(jt,[["__scopeId","data-v-475f71b8"]]),zt={key:0,class:"VPDocFooter"},Kt={key:0,class:"edit-info"},Wt={key:0,class:"edit-link"},qt={key:1,class:"last-updated"},Jt={key:1,class:"prev-next","aria-labelledby":"doc-footer-aria-label"},Yt={class:"pager"},Xt=["innerHTML"],Qt=["innerHTML"],Zt={class:"pager"},xt=["innerHTML"],en=["innerHTML"],tn=b({__name:"VPDocFooter",setup(o){const{theme:e,page:t,frontmatter:s}=L(),n=Ot(),r=Dt(),l=P(()=>e.value.editLink&&s.value.editLink!==!1),v=P(()=>t.value.lastUpdated),c=P(()=>l.value||v.value||r.value.prev||r.value.next);return(h,y)=>{var m,V,S,C;return c.value?(a(),d("footer",zt,[u(h.$slots,"doc-footer-before",{},void 0,!0),l.value||v.value?(a(),d("div",Kt,[l.value?(a(),d("div",Wt,[g(O,{class:"edit-link-button",href:i(n).url,"no-icon":!0},{default:f(()=>[y[0]||(y[0]=p("span",{class:"vpi-square-pen edit-link-icon"},null,-1)),F(" "+N(i(n).text),1)]),_:1},8,["href"])])):_("",!0),v.value?(a(),d("div",qt,[g(Gt)])):_("",!0)])):_("",!0),(m=i(r).prev)!=null&&m.link||(V=i(r).next)!=null&&V.link?(a(),d("nav",Jt,[y[1]||(y[1]=p("span",{class:"visually-hidden",id:"doc-footer-aria-label"},"Pager",-1)),p("div",Yt,[(S=i(r).prev)!=null&&S.link?(a(),k(O,{key:0,class:"pager-link prev",href:i(r).prev.link},{default:f(()=>{var A;return[p("span",{class:"desc",innerHTML:((A=i(e).docFooter)==null?void 0:A.prev)||"Previous page"},null,8,Xt),p("span",{class:"title",innerHTML:i(r).prev.text},null,8,Qt)]}),_:1},8,["href"])):_("",!0)]),p("div",Zt,[(C=i(r).next)!=null&&C.link?(a(),k(O,{key:0,class:"pager-link next",href:i(r).next.link},{default:f(()=>{var A;return[p("span",{class:"desc",innerHTML:((A=i(e).docFooter)==null?void 0:A.next)||"Next page"},null,8,xt),p("span",{class:"title",innerHTML:i(r).next.text},null,8,en)]}),_:1},8,["href"])):_("",!0)])])):_("",!0)])):_("",!0)}}}),nn=$(tn,[["__scopeId","data-v-4f9813fa"]]),sn={class:"container"},on={class:"aside-container"},an={class:"aside-content"},rn={class:"content"},ln={class:"content-container"},cn={class:"main"},un=b({__name:"VPDoc",setup(o){const{theme:e}=L(),t=ee(),{hasSidebar:s,hasAside:n,leftAside:r}=U(),l=P(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(v,c)=>{const h=K("Content");return a(),d("div",{class:I(["VPDoc",{"has-sidebar":i(s),"has-aside":i(n)}])},[u(v.$slots,"doc-top",{},void 0,!0),p("div",sn,[i(n)?(a(),d("div",{key:0,class:I(["aside",{"left-aside":i(r)}])},[c[0]||(c[0]=p("div",{class:"aside-curtain"},null,-1)),p("div",on,[p("div",an,[g(Ht,null,{"aside-top":f(()=>[u(v.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":f(()=>[u(v.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":f(()=>[u(v.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(v.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(v.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(v.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):_("",!0),p("div",rn,[p("div",ln,[u(v.$slots,"doc-before",{},void 0,!0),p("main",cn,[g(h,{class:I(["vp-doc",[l.value,i(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),g(nn,null,{"doc-footer-before":f(()=>[u(v.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),u(v.$slots,"doc-after",{},void 0,!0)])])]),u(v.$slots,"doc-bottom",{},void 0,!0)],2)}}}),dn=$(un,[["__scopeId","data-v-83890dd9"]]),vn=b({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{},target:{},rel:{}},setup(o){const e=o,t=P(()=>e.href&&Le.test(e.href)),s=P(()=>e.tag||e.href?"a":"button");return(n,r)=>(a(),k(H(s.value),{class:I(["VPButton",[n.size,n.theme]]),href:n.href?i(me)(n.href):void 0,target:e.target??(t.value?"_blank":void 0),rel:e.rel??(t.value?"noreferrer":void 0)},{default:f(()=>[F(N(n.text),1)]),_:1},8,["class","href","target","rel"]))}}),pn=$(vn,[["__scopeId","data-v-14206e74"]]),fn=["src","alt"],hn=b({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(o){return(e,t)=>{const s=K("VPImage",!0);return e.image?(a(),d(M,{key:0},[typeof e.image=="string"||"src"in e.image?(a(),d("img",G({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:i(ve)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,fn)):(a(),d(M,{key:1},[g(s,G({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),g(s,G({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):_("",!0)}}}),Q=$(hn,[["__scopeId","data-v-35a7d0b8"]]),mn={class:"container"},_n={class:"main"},bn={key:0,class:"name"},kn=["innerHTML"],gn=["innerHTML"],$n=["innerHTML"],yn={key:0,class:"actions"},Pn={key:0,class:"image"},Vn={class:"image-container"},Sn=b({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(o){const e=q("hero-image-slot-exists");return(t,s)=>(a(),d("div",{class:I(["VPHero",{"has-image":t.image||i(e)}])},[p("div",mn,[p("div",_n,[u(t.$slots,"home-hero-info-before",{},void 0,!0),u(t.$slots,"home-hero-info",{},()=>[t.name?(a(),d("h1",bn,[p("span",{innerHTML:t.name,class:"clip"},null,8,kn)])):_("",!0),t.text?(a(),d("p",{key:1,innerHTML:t.text,class:"text"},null,8,gn)):_("",!0),t.tagline?(a(),d("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,$n)):_("",!0)],!0),u(t.$slots,"home-hero-info-after",{},void 0,!0),t.actions?(a(),d("div",yn,[(a(!0),d(M,null,B(t.actions,n=>(a(),d("div",{key:n.link,class:"action"},[g(pn,{tag:"a",size:"medium",theme:n.theme,text:n.text,href:n.link,target:n.target,rel:n.rel},null,8,["theme","text","href","target","rel"])]))),128))])):_("",!0),u(t.$slots,"home-hero-actions-after",{},void 0,!0)]),t.image||i(e)?(a(),d("div",Pn,[p("div",Vn,[s[0]||(s[0]=p("div",{class:"image-bg"},null,-1)),u(t.$slots,"home-hero-image",{},()=>[t.image?(a(),k(Q,{key:0,class:"image-src",image:t.image},null,8,["image"])):_("",!0)],!0)])])):_("",!0)])],2))}}),Ln=$(Sn,[["__scopeId","data-v-955009fc"]]),Tn=b({__name:"VPHomeHero",setup(o){const{frontmatter:e}=L();return(t,s)=>i(e).hero?(a(),k(Ln,{key:0,class:"VPHomeHero",name:i(e).hero.name,text:i(e).hero.text,tagline:i(e).hero.tagline,image:i(e).hero.image,actions:i(e).hero.actions},{"home-hero-info-before":f(()=>[u(t.$slots,"home-hero-info-before")]),"home-hero-info":f(()=>[u(t.$slots,"home-hero-info")]),"home-hero-info-after":f(()=>[u(t.$slots,"home-hero-info-after")]),"home-hero-actions-after":f(()=>[u(t.$slots,"home-hero-actions-after")]),"home-hero-image":f(()=>[u(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):_("",!0)}}),wn={class:"box"},Nn={key:0,class:"icon"},In=["innerHTML"],Mn=["innerHTML"],Cn=["innerHTML"],An={key:4,class:"link-text"},Bn={class:"link-text-value"},En=b({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{},target:{}},setup(o){return(e,t)=>(a(),k(O,{class:"VPFeature",href:e.link,rel:e.rel,target:e.target,"no-icon":!0,tag:e.link?"a":"div"},{default:f(()=>[p("article",wn,[typeof e.icon=="object"&&e.icon.wrap?(a(),d("div",Nn,[g(Q,{image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])])):typeof e.icon=="object"?(a(),k(Q,{key:1,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(a(),d("div",{key:2,class:"icon",innerHTML:e.icon},null,8,In)):_("",!0),p("h2",{class:"title",innerHTML:e.title},null,8,Mn),e.details?(a(),d("p",{key:3,class:"details",innerHTML:e.details},null,8,Cn)):_("",!0),e.linkText?(a(),d("div",An,[p("p",Bn,[F(N(e.linkText)+" ",1),t[0]||(t[0]=p("span",{class:"vpi-arrow-right link-text-icon"},null,-1))])])):_("",!0)])]),_:1},8,["href","rel","target","tag"]))}}),Hn=$(En,[["__scopeId","data-v-f5e9645b"]]),On={key:0,class:"VPFeatures"},Dn={class:"container"},Fn={class:"items"},Rn=b({__name:"VPFeatures",props:{features:{}},setup(o){const e=o,t=P(()=>{const s=e.features.length;if(s){if(s===2)return"grid-2";if(s===3)return"grid-3";if(s%3===0)return"grid-6";if(s>3)return"grid-4"}else return});return(s,n)=>s.features?(a(),d("div",On,[p("div",Dn,[p("div",Fn,[(a(!0),d(M,null,B(s.features,r=>(a(),d("div",{key:r.title,class:I(["item",[t.value]])},[g(Hn,{icon:r.icon,title:r.title,details:r.details,link:r.link,"link-text":r.linkText,rel:r.rel,target:r.target},null,8,["icon","title","details","link","link-text","rel","target"])],2))),128))])])])):_("",!0)}}),Un=$(Rn,[["__scopeId","data-v-d0a190d7"]]),jn=b({__name:"VPHomeFeatures",setup(o){const{frontmatter:e}=L();return(t,s)=>i(e).features?(a(),k(Un,{key:0,class:"VPHomeFeatures",features:i(e).features},null,8,["features"])):_("",!0)}}),Gn=b({__name:"VPHomeContent",setup(o){const{width:e}=qe({initialWidth:0,includeScrollbar:!1});return(t,s)=>(a(),d("div",{class:"vp-doc container",style:Te(i(e)?{"--vp-offset":`calc(50% - ${i(e)/2}px)`}:{})},[u(t.$slots,"default",{},void 0,!0)],4))}}),zn=$(Gn,[["__scopeId","data-v-7a48a447"]]),Kn={class:"VPHome"},Wn=b({__name:"VPHome",setup(o){const{frontmatter:e}=L();return(t,s)=>{const n=K("Content");return a(),d("div",Kn,[u(t.$slots,"home-hero-before",{},void 0,!0),g(Tn,null,{"home-hero-info-before":f(()=>[u(t.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(t.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(t.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(t.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(t.$slots,"home-hero-image",{},void 0,!0)]),_:3}),u(t.$slots,"home-hero-after",{},void 0,!0),u(t.$slots,"home-features-before",{},void 0,!0),g(jn),u(t.$slots,"home-features-after",{},void 0,!0),i(e).markdownStyles!==!1?(a(),k(zn,{key:0},{default:f(()=>[g(n)]),_:1})):(a(),k(n,{key:1}))])}}}),qn=$(Wn,[["__scopeId","data-v-cbb6ec48"]]),Jn={},Yn={class:"VPPage"};function Xn(o,e){const t=K("Content");return a(),d("div",Yn,[u(o.$slots,"page-top"),g(t),u(o.$slots,"page-bottom")])}const Qn=$(Jn,[["render",Xn]]),Zn=b({__name:"VPContent",setup(o){const{page:e,frontmatter:t}=L(),{hasSidebar:s}=U();return(n,r)=>(a(),d("div",{class:I(["VPContent",{"has-sidebar":i(s),"is-home":i(t).layout==="home"}]),id:"VPContent"},[i(e).isNotFound?u(n.$slots,"not-found",{key:0},()=>[g(mt)],!0):i(t).layout==="page"?(a(),k(Qn,{key:1},{"page-top":f(()=>[u(n.$slots,"page-top",{},void 0,!0)]),"page-bottom":f(()=>[u(n.$slots,"page-bottom",{},void 0,!0)]),_:3})):i(t).layout==="home"?(a(),k(qn,{key:2},{"home-hero-before":f(()=>[u(n.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":f(()=>[u(n.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(n.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(n.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(n.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(n.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":f(()=>[u(n.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":f(()=>[u(n.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":f(()=>[u(n.$slots,"home-features-after",{},void 0,!0)]),_:3})):i(t).layout&&i(t).layout!=="doc"?(a(),k(H(i(t).layout),{key:3})):(a(),k(dn,{key:4},{"doc-top":f(()=>[u(n.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":f(()=>[u(n.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":f(()=>[u(n.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":f(()=>[u(n.$slots,"doc-before",{},void 0,!0)]),"doc-after":f(()=>[u(n.$slots,"doc-after",{},void 0,!0)]),"aside-top":f(()=>[u(n.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":f(()=>[u(n.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(n.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(n.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(n.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":f(()=>[u(n.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}}),xn=$(Zn,[["__scopeId","data-v-91765379"]]),es={class:"container"},ts=["innerHTML"],ns=["innerHTML"],ss=b({__name:"VPFooter",setup(o){const{theme:e,frontmatter:t}=L(),{hasSidebar:s}=U();return(n,r)=>i(e).footer&&i(t).footer!==!1?(a(),d("footer",{key:0,class:I(["VPFooter",{"has-sidebar":i(s)}])},[p("div",es,[i(e).footer.message?(a(),d("p",{key:0,class:"message",innerHTML:i(e).footer.message},null,8,ts)):_("",!0),i(e).footer.copyright?(a(),d("p",{key:1,class:"copyright",innerHTML:i(e).footer.copyright},null,8,ns)):_("",!0)])],2)):_("",!0)}}),os=$(ss,[["__scopeId","data-v-c970a860"]]);function as(){const{theme:o,frontmatter:e}=L(),t=Se([]),s=P(()=>t.value.length>0);return x(()=>{t.value=_e(e.value.outline??o.value.outline)}),{headers:t,hasLocalNav:s}}const rs={class:"menu-text"},is={class:"header"},ls={class:"outline"},cs=b({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(o){const e=o,{theme:t}=L(),s=T(!1),n=T(0),r=T(),l=T();function v(m){var V;(V=r.value)!=null&&V.contains(m.target)||(s.value=!1)}D(s,m=>{if(m){document.addEventListener("click",v);return}document.removeEventListener("click",v)}),ie("Escape",()=>{s.value=!1}),x(()=>{s.value=!1});function c(){s.value=!s.value,n.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function h(m){m.target.classList.contains("outline-link")&&(l.value&&(l.value.style.transition="none"),we(()=>{s.value=!1}))}function y(){s.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return(m,V)=>(a(),d("div",{class:"VPLocalNavOutlineDropdown",style:Te({"--vp-vh":n.value+"px"}),ref_key:"main",ref:r},[m.headers.length>0?(a(),d("button",{key:0,onClick:c,class:I({open:s.value})},[p("span",rs,N(i(Ae)(i(t))),1),V[0]||(V[0]=p("span",{class:"vpi-chevron-right icon"},null,-1))],2)):(a(),d("button",{key:1,onClick:y},N(i(t).returnToTopLabel||"Return to top"),1)),g(de,{name:"flyout"},{default:f(()=>[s.value?(a(),d("div",{key:0,ref_key:"items",ref:l,class:"items",onClick:h},[p("div",is,[p("a",{class:"top-link",href:"#",onClick:y},N(i(t).returnToTopLabel||"Return to top"),1)]),p("div",ls,[g(Be,{headers:m.headers},null,8,["headers"])])],512)):_("",!0)]),_:1})],4))}}),us=$(cs,[["__scopeId","data-v-bc9dc845"]]),ds={class:"container"},vs=["aria-expanded"],ps={class:"menu-text"},fs=b({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(o){const{theme:e,frontmatter:t}=L(),{hasSidebar:s}=U(),{headers:n}=as(),{y:r}=Ne(),l=T(0);R(()=>{l.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),x(()=>{n.value=_e(t.value.outline??e.value.outline)});const v=P(()=>n.value.length===0),c=P(()=>v.value&&!s.value),h=P(()=>({VPLocalNav:!0,"has-sidebar":s.value,empty:v.value,fixed:c.value}));return(y,m)=>i(t).layout!=="home"&&(!c.value||i(r)>=l.value)?(a(),d("div",{key:0,class:I(h.value)},[p("div",ds,[i(s)?(a(),d("button",{key:0,class:"menu","aria-expanded":y.open,"aria-controls":"VPSidebarNav",onClick:m[0]||(m[0]=V=>y.$emit("open-menu"))},[m[1]||(m[1]=p("span",{class:"vpi-align-left menu-icon"},null,-1)),p("span",ps,N(i(e).sidebarMenuLabel||"Menu"),1)],8,vs)):_("",!0),g(us,{headers:i(n),navHeight:l.value},null,8,["headers","navHeight"])])],2)):_("",!0)}}),hs=$(fs,[["__scopeId","data-v-070ab83d"]]);function ms(){const o=T(!1);function e(){o.value=!0,window.addEventListener("resize",n)}function t(){o.value=!1,window.removeEventListener("resize",n)}function s(){o.value?t():e()}function n(){window.outerWidth>=768&&t()}const r=ee();return D(()=>r.path,t),{isScreenOpen:o,openScreen:e,closeScreen:t,toggleScreen:s}}const _s={},bs={class:"VPSwitch",type:"button",role:"switch"},ks={class:"check"},gs={key:0,class:"icon"};function $s(o,e){return a(),d("button",bs,[p("span",ks,[o.$slots.default?(a(),d("span",gs,[u(o.$slots,"default",{},void 0,!0)])):_("",!0)])])}const ys=$(_s,[["render",$s],["__scopeId","data-v-4a1c76db"]]),Ps=b({__name:"VPSwitchAppearance",setup(o){const{isDark:e,theme:t}=L(),s=q("toggle-appearance",()=>{e.value=!e.value}),n=T("");return fe(()=>{n.value=e.value?t.value.lightModeSwitchTitle||"Switch to light theme":t.value.darkModeSwitchTitle||"Switch to dark theme"}),(r,l)=>(a(),k(ys,{title:n.value,class:"VPSwitchAppearance","aria-checked":i(e),onClick:i(s)},{default:f(()=>l[0]||(l[0]=[p("span",{class:"vpi-sun sun"},null,-1),p("span",{class:"vpi-moon moon"},null,-1)])),_:1},8,["title","aria-checked","onClick"]))}}),be=$(Ps,[["__scopeId","data-v-e40a8bb6"]]),Vs={key:0,class:"VPNavBarAppearance"},Ss=b({__name:"VPNavBarAppearance",setup(o){const{site:e}=L();return(t,s)=>i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(a(),d("div",Vs,[g(be)])):_("",!0)}}),Ls=$(Ss,[["__scopeId","data-v-af096f4a"]]),ke=T();let Ee=!1,ae=0;function Ts(o){const e=T(!1);if(te){!Ee&&ws(),ae++;const t=D(ke,s=>{var n,r,l;s===o.el.value||(n=o.el.value)!=null&&n.contains(s)?(e.value=!0,(r=o.onFocus)==null||r.call(o)):(e.value=!1,(l=o.onBlur)==null||l.call(o))});pe(()=>{t(),ae--,ae||Ns()})}return Je(e)}function ws(){document.addEventListener("focusin",He),Ee=!0,ke.value=document.activeElement}function Ns(){document.removeEventListener("focusin",He)}function He(){ke.value=document.activeElement}const Is={class:"VPMenuLink"},Ms=b({__name:"VPMenuLink",props:{item:{}},setup(o){const{page:e}=L();return(t,s)=>(a(),d("div",Is,[g(O,{class:I({active:i(z)(i(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel},{default:f(()=>[F(N(t.item.text),1)]),_:1},8,["class","href","target","rel"])]))}}),ne=$(Ms,[["__scopeId","data-v-8b74d055"]]),Cs={class:"VPMenuGroup"},As={key:0,class:"title"},Bs=b({__name:"VPMenuGroup",props:{text:{},items:{}},setup(o){return(e,t)=>(a(),d("div",Cs,[e.text?(a(),d("p",As,N(e.text),1)):_("",!0),(a(!0),d(M,null,B(e.items,s=>(a(),d(M,null,["link"in s?(a(),k(ne,{key:0,item:s},null,8,["item"])):_("",!0)],64))),256))]))}}),Es=$(Bs,[["__scopeId","data-v-48c802d0"]]),Hs={class:"VPMenu"},Os={key:0,class:"items"},Ds=b({__name:"VPMenu",props:{items:{}},setup(o){return(e,t)=>(a(),d("div",Hs,[e.items?(a(),d("div",Os,[(a(!0),d(M,null,B(e.items,s=>(a(),d(M,{key:JSON.stringify(s)},["link"in s?(a(),k(ne,{key:0,item:s},null,8,["item"])):"component"in s?(a(),k(H(s.component),G({key:1,ref_for:!0},s.props),null,16)):(a(),k(Es,{key:2,text:s.text,items:s.items},null,8,["text","items"]))],64))),128))])):_("",!0),u(e.$slots,"default",{},void 0,!0)]))}}),Fs=$(Ds,[["__scopeId","data-v-7dd3104a"]]),Rs=["aria-expanded","aria-label"],Us={key:0,class:"text"},js=["innerHTML"],Gs={key:1,class:"vpi-more-horizontal icon"},zs={class:"menu"},Ks=b({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(o){const e=T(!1),t=T();Ts({el:t,onBlur:s});function s(){e.value=!1}return(n,r)=>(a(),d("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:r[1]||(r[1]=l=>e.value=!0),onMouseleave:r[2]||(r[2]=l=>e.value=!1)},[p("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":n.label,onClick:r[0]||(r[0]=l=>e.value=!e.value)},[n.button||n.icon?(a(),d("span",Us,[n.icon?(a(),d("span",{key:0,class:I([n.icon,"option-icon"])},null,2)):_("",!0),n.button?(a(),d("span",{key:1,innerHTML:n.button},null,8,js)):_("",!0),r[3]||(r[3]=p("span",{class:"vpi-chevron-down text-icon"},null,-1))])):(a(),d("span",Gs))],8,Rs),p("div",zs,[g(Fs,{items:n.items},{default:f(()=>[u(n.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}}),ge=$(Ks,[["__scopeId","data-v-e5380155"]]),Ws=["href","aria-label","innerHTML"],qs=b({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(o){const e=o,t=P(()=>typeof e.icon=="object"?e.icon.svg:`<span class="vpi-social-${e.icon}" />`);return(s,n)=>(a(),d("a",{class:"VPSocialLink no-icon",href:s.link,"aria-label":s.ariaLabel??(typeof s.icon=="string"?s.icon:""),target:"_blank",rel:"noopener",innerHTML:t.value},null,8,Ws))}}),Js=$(qs,[["__scopeId","data-v-717b8b75"]]),Ys={class:"VPSocialLinks"},Xs=b({__name:"VPSocialLinks",props:{links:{}},setup(o){return(e,t)=>(a(),d("div",Ys,[(a(!0),d(M,null,B(e.links,({link:s,icon:n,ariaLabel:r})=>(a(),k(Js,{key:s,icon:n,link:s,ariaLabel:r},null,8,["icon","link","ariaLabel"]))),128))]))}}),$e=$(Xs,[["__scopeId","data-v-ee7a9424"]]),Qs={key:0,class:"group translations"},Zs={class:"trans-title"},xs={key:1,class:"group"},eo={class:"item appearance"},to={class:"label"},no={class:"appearance-action"},so={key:2,class:"group"},oo={class:"item social-links"},ao=b({__name:"VPNavBarExtra",setup(o){const{site:e,theme:t}=L(),{localeLinks:s,currentLang:n}=Y({correspondingLink:!0}),r=P(()=>s.value.length&&n.value.label||e.value.appearance||t.value.socialLinks);return(l,v)=>r.value?(a(),k(ge,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:f(()=>[i(s).length&&i(n).label?(a(),d("div",Qs,[p("p",Zs,N(i(n).label),1),(a(!0),d(M,null,B(i(s),c=>(a(),k(ne,{key:c.link,item:c},null,8,["item"]))),128))])):_("",!0),i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(a(),d("div",xs,[p("div",eo,[p("p",to,N(i(t).darkModeSwitchLabel||"Appearance"),1),p("div",no,[g(be)])])])):_("",!0),i(t).socialLinks?(a(),d("div",so,[p("div",oo,[g($e,{class:"social-links-list",links:i(t).socialLinks},null,8,["links"])])])):_("",!0)]),_:1})):_("",!0)}}),ro=$(ao,[["__scopeId","data-v-925effce"]]),io=["aria-expanded"],lo=b({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(o){return(e,t)=>(a(),d("button",{type:"button",class:I(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=s=>e.$emit("click"))},t[1]||(t[1]=[p("span",{class:"container"},[p("span",{class:"top"}),p("span",{class:"middle"}),p("span",{class:"bottom"})],-1)]),10,io))}}),co=$(lo,[["__scopeId","data-v-5dea55bf"]]),uo=["innerHTML"],vo=b({__name:"VPNavBarMenuLink",props:{item:{}},setup(o){const{page:e}=L();return(t,s)=>(a(),k(O,{class:I({VPNavBarMenuLink:!0,active:i(z)(i(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,noIcon:t.item.noIcon,target:t.item.target,rel:t.item.rel,tabindex:"0"},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,uo)]),_:1},8,["class","href","noIcon","target","rel"]))}}),po=$(vo,[["__scopeId","data-v-ed5ac1f6"]]),Oe=b({__name:"VPNavBarMenuGroup",props:{item:{}},setup(o){const e=o,{page:t}=L(),s=r=>"component"in r?!1:"link"in r?z(t.value.relativePath,r.link,!!e.item.activeMatch):r.items.some(s),n=P(()=>s(e.item));return(r,l)=>(a(),k(ge,{class:I({VPNavBarMenuGroup:!0,active:i(z)(i(t).relativePath,r.item.activeMatch,!!r.item.activeMatch)||n.value}),button:r.item.text,items:r.item.items},null,8,["class","button","items"]))}}),fo={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},ho=b({__name:"VPNavBarMenu",setup(o){const{theme:e}=L();return(t,s)=>i(e).nav?(a(),d("nav",fo,[s[0]||(s[0]=p("span",{id:"main-nav-aria-label",class:"visually-hidden"}," Main Navigation ",-1)),(a(!0),d(M,null,B(i(e).nav,n=>(a(),d(M,{key:JSON.stringify(n)},["link"in n?(a(),k(po,{key:0,item:n},null,8,["item"])):"component"in n?(a(),k(H(n.component),G({key:1,ref_for:!0},n.props),null,16)):(a(),k(Oe,{key:2,item:n},null,8,["item"]))],64))),128))])):_("",!0)}}),mo=$(ho,[["__scopeId","data-v-e6d46098"]]);function _o(o){const{localeIndex:e,theme:t}=L();function s(n){var C,A,w;const r=n.split("."),l=(C=t.value.search)==null?void 0:C.options,v=l&&typeof l=="object",c=v&&((w=(A=l.locales)==null?void 0:A[e.value])==null?void 0:w.translations)||null,h=v&&l.translations||null;let y=c,m=h,V=o;const S=r.pop();for(const E of r){let j=null;const W=V==null?void 0:V[E];W&&(j=V=W);const se=m==null?void 0:m[E];se&&(j=m=se);const oe=y==null?void 0:y[E];oe&&(j=y=oe),W||(V=j),se||(m=j),oe||(y=j)}return(y==null?void 0:y[S])??(m==null?void 0:m[S])??(V==null?void 0:V[S])??""}return s}const bo=["aria-label"],ko={class:"DocSearch-Button-Container"},go={class:"DocSearch-Button-Placeholder"},ye=b({__name:"VPNavBarSearchButton",setup(o){const t=_o({button:{buttonText:"Search",buttonAriaLabel:"Search"}});return(s,n)=>(a(),d("button",{type:"button",class:"DocSearch DocSearch-Button","aria-label":i(t)("button.buttonAriaLabel")},[p("span",ko,[n[0]||(n[0]=p("span",{class:"vp-icon DocSearch-Search-Icon"},null,-1)),p("span",go,N(i(t)("button.buttonText")),1)]),n[1]||(n[1]=p("span",{class:"DocSearch-Button-Keys"},[p("kbd",{class:"DocSearch-Button-Key"}),p("kbd",{class:"DocSearch-Button-Key"},"K")],-1))],8,bo))}}),$o={class:"VPNavBarSearch"},yo={id:"local-search"},Po={key:1,id:"docsearch"},Vo=b({__name:"VPNavBarSearch",setup(o){const e=Ye(()=>Xe(()=>import("./VPLocalSearchBox.Oxp-ssWh.js"),__vite__mapDeps([0,1]))),t=()=>null,{theme:s}=L(),n=T(!1),r=T(!1);R(()=>{});function l(){n.value||(n.value=!0,setTimeout(v,16))}function v(){const m=new Event("keydown");m.key="k",m.metaKey=!0,window.dispatchEvent(m),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||v()},16)}function c(m){const V=m.target,S=V.tagName;return V.isContentEditable||S==="INPUT"||S==="SELECT"||S==="TEXTAREA"}const h=T(!1);ie("k",m=>{(m.ctrlKey||m.metaKey)&&(m.preventDefault(),h.value=!0)}),ie("/",m=>{c(m)||(m.preventDefault(),h.value=!0)});const y="local";return(m,V)=>{var S;return a(),d("div",$o,[i(y)==="local"?(a(),d(M,{key:0},[h.value?(a(),k(i(e),{key:0,onClose:V[0]||(V[0]=C=>h.value=!1)})):_("",!0),p("div",yo,[g(ye,{onClick:V[1]||(V[1]=C=>h.value=!0)})])],64)):i(y)==="algolia"?(a(),d(M,{key:1},[n.value?(a(),k(i(t),{key:0,algolia:((S=i(s).search)==null?void 0:S.options)??i(s).algolia,onVnodeBeforeMount:V[2]||(V[2]=C=>r.value=!0)},null,8,["algolia"])):_("",!0),r.value?_("",!0):(a(),d("div",Po,[g(ye,{onClick:l})]))],64)):_("",!0)])}}}),So=b({__name:"VPNavBarSocialLinks",setup(o){const{theme:e}=L();return(t,s)=>i(e).socialLinks?(a(),k($e,{key:0,class:"VPNavBarSocialLinks",links:i(e).socialLinks},null,8,["links"])):_("",!0)}}),Lo=$(So,[["__scopeId","data-v-164c457f"]]),To=["href","rel","target"],wo={key:1},No={key:2},Io=b({__name:"VPNavBarTitle",setup(o){const{site:e,theme:t}=L(),{hasSidebar:s}=U(),{currentLang:n}=Y(),r=P(()=>{var c;return typeof t.value.logoLink=="string"?t.value.logoLink:(c=t.value.logoLink)==null?void 0:c.link}),l=P(()=>{var c;return typeof t.value.logoLink=="string"||(c=t.value.logoLink)==null?void 0:c.rel}),v=P(()=>{var c;return typeof t.value.logoLink=="string"||(c=t.value.logoLink)==null?void 0:c.target});return(c,h)=>(a(),d("div",{class:I(["VPNavBarTitle",{"has-sidebar":i(s)}])},[p("a",{class:"title",href:r.value??i(me)(i(n).link),rel:l.value,target:v.value},[u(c.$slots,"nav-bar-title-before",{},void 0,!0),i(t).logo?(a(),k(Q,{key:0,class:"logo",image:i(t).logo},null,8,["image"])):_("",!0),i(t).siteTitle?(a(),d("span",wo,N(i(t).siteTitle),1)):i(t).siteTitle===void 0?(a(),d("span",No,N(i(e).title),1)):_("",!0),u(c.$slots,"nav-bar-title-after",{},void 0,!0)],8,To)],2))}}),Mo=$(Io,[["__scopeId","data-v-28a961f9"]]),Co={class:"items"},Ao={class:"title"},Bo=b({__name:"VPNavBarTranslations",setup(o){const{theme:e}=L(),{localeLinks:t,currentLang:s}=Y({correspondingLink:!0});return(n,r)=>i(t).length&&i(s).label?(a(),k(ge,{key:0,class:"VPNavBarTranslations",icon:"vpi-languages",label:i(e).langMenuLabel||"Change language"},{default:f(()=>[p("div",Co,[p("p",Ao,N(i(s).label),1),(a(!0),d(M,null,B(i(t),l=>(a(),k(ne,{key:l.link,item:l},null,8,["item"]))),128))])]),_:1},8,["label"])):_("",!0)}}),Eo=$(Bo,[["__scopeId","data-v-c80d9ad0"]]),Ho={class:"wrapper"},Oo={class:"container"},Do={class:"title"},Fo={class:"content"},Ro={class:"content-body"},Uo=b({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(o){const e=o,{y:t}=Ne(),{hasSidebar:s}=U(),{frontmatter:n}=L(),r=T({});return fe(()=>{r.value={"has-sidebar":s.value,home:n.value.layout==="home",top:t.value===0,"screen-open":e.isScreenOpen}}),(l,v)=>(a(),d("div",{class:I(["VPNavBar",r.value])},[p("div",Ho,[p("div",Oo,[p("div",Do,[g(Mo,null,{"nav-bar-title-before":f(()=>[u(l.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(l.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),p("div",Fo,[p("div",Ro,[u(l.$slots,"nav-bar-content-before",{},void 0,!0),g(Vo,{class:"search"}),g(mo,{class:"menu"}),g(Eo,{class:"translations"}),g(Ls,{class:"appearance"}),g(Lo,{class:"social-links"}),g(ro,{class:"extra"}),u(l.$slots,"nav-bar-content-after",{},void 0,!0),g(co,{class:"hamburger",active:l.isScreenOpen,onClick:v[0]||(v[0]=c=>l.$emit("toggle-screen"))},null,8,["active"])])])])]),v[1]||(v[1]=p("div",{class:"divider"},[p("div",{class:"divider-line"})],-1))],2))}}),jo=$(Uo,[["__scopeId","data-v-822684d1"]]),Go={key:0,class:"VPNavScreenAppearance"},zo={class:"text"},Ko=b({__name:"VPNavScreenAppearance",setup(o){const{site:e,theme:t}=L();return(s,n)=>i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(a(),d("div",Go,[p("p",zo,N(i(t).darkModeSwitchLabel||"Appearance"),1),g(be)])):_("",!0)}}),Wo=$(Ko,[["__scopeId","data-v-ffb44008"]]),qo=b({__name:"VPNavScreenMenuLink",props:{item:{}},setup(o){const e=q("close-screen");return(t,s)=>(a(),k(O,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:i(e),innerHTML:t.item.text},null,8,["href","target","rel","onClick","innerHTML"]))}}),Jo=$(qo,[["__scopeId","data-v-27d04aeb"]]),Yo=b({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(o){const e=q("close-screen");return(t,s)=>(a(),k(O,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:i(e)},{default:f(()=>[F(N(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}}),De=$(Yo,[["__scopeId","data-v-7179dbb7"]]),Xo={class:"VPNavScreenMenuGroupSection"},Qo={key:0,class:"title"},Zo=b({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(o){return(e,t)=>(a(),d("div",Xo,[e.text?(a(),d("p",Qo,N(e.text),1)):_("",!0),(a(!0),d(M,null,B(e.items,s=>(a(),k(De,{key:s.text,item:s},null,8,["item"]))),128))]))}}),xo=$(Zo,[["__scopeId","data-v-4b8941ac"]]),ea=["aria-controls","aria-expanded"],ta=["innerHTML"],na=["id"],sa={key:0,class:"item"},oa={key:1,class:"item"},aa={key:2,class:"group"},ra=b({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(o){const e=o,t=T(!1),s=P(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function n(){t.value=!t.value}return(r,l)=>(a(),d("div",{class:I(["VPNavScreenMenuGroup",{open:t.value}])},[p("button",{class:"button","aria-controls":s.value,"aria-expanded":t.value,onClick:n},[p("span",{class:"button-text",innerHTML:r.text},null,8,ta),l[0]||(l[0]=p("span",{class:"vpi-plus button-icon"},null,-1))],8,ea),p("div",{id:s.value,class:"items"},[(a(!0),d(M,null,B(r.items,v=>(a(),d(M,{key:JSON.stringify(v)},["link"in v?(a(),d("div",sa,[g(De,{item:v},null,8,["item"])])):"component"in v?(a(),d("div",oa,[(a(),k(H(v.component),G({ref_for:!0},v.props,{"screen-menu":""}),null,16))])):(a(),d("div",aa,[g(xo,{text:v.text,items:v.items},null,8,["text","items"])]))],64))),128))],8,na)],2))}}),Fe=$(ra,[["__scopeId","data-v-875057a5"]]),ia={key:0,class:"VPNavScreenMenu"},la=b({__name:"VPNavScreenMenu",setup(o){const{theme:e}=L();return(t,s)=>i(e).nav?(a(),d("nav",ia,[(a(!0),d(M,null,B(i(e).nav,n=>(a(),d(M,{key:JSON.stringify(n)},["link"in n?(a(),k(Jo,{key:0,item:n},null,8,["item"])):"component"in n?(a(),k(H(n.component),G({key:1,ref_for:!0},n.props,{"screen-menu":""}),null,16)):(a(),k(Fe,{key:2,text:n.text||"",items:n.items},null,8,["text","items"]))],64))),128))])):_("",!0)}}),ca=b({__name:"VPNavScreenSocialLinks",setup(o){const{theme:e}=L();return(t,s)=>i(e).socialLinks?(a(),k($e,{key:0,class:"VPNavScreenSocialLinks",links:i(e).socialLinks},null,8,["links"])):_("",!0)}}),ua={class:"list"},da=b({__name:"VPNavScreenTranslations",setup(o){const{localeLinks:e,currentLang:t}=Y({correspondingLink:!0}),s=T(!1);function n(){s.value=!s.value}return(r,l)=>i(e).length&&i(t).label?(a(),d("div",{key:0,class:I(["VPNavScreenTranslations",{open:s.value}])},[p("button",{class:"title",onClick:n},[l[0]||(l[0]=p("span",{class:"vpi-languages icon lang"},null,-1)),F(" "+N(i(t).label)+" ",1),l[1]||(l[1]=p("span",{class:"vpi-chevron-down icon chevron"},null,-1))]),p("ul",ua,[(a(!0),d(M,null,B(i(e),v=>(a(),d("li",{key:v.link,class:"item"},[g(O,{class:"link",href:v.link},{default:f(()=>[F(N(v.text),1)]),_:2},1032,["href"])]))),128))])],2)):_("",!0)}}),va=$(da,[["__scopeId","data-v-362991c2"]]),pa={class:"container"},fa=b({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(o){const e=T(null),t=Ie(te?document.body:null);return(s,n)=>(a(),k(de,{name:"fade",onEnter:n[0]||(n[0]=r=>t.value=!0),onAfterLeave:n[1]||(n[1]=r=>t.value=!1)},{default:f(()=>[s.open?(a(),d("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[p("div",pa,[u(s.$slots,"nav-screen-content-before",{},void 0,!0),g(la,{class:"menu"}),g(va,{class:"translations"}),g(Wo,{class:"appearance"}),g(ca,{class:"social-links"}),u(s.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):_("",!0)]),_:3}))}}),ha=$(fa,[["__scopeId","data-v-833aabba"]]),ma={key:0,class:"VPNav"},_a=b({__name:"VPNav",setup(o){const{isScreenOpen:e,closeScreen:t,toggleScreen:s}=ms(),{frontmatter:n}=L(),r=P(()=>n.value.navbar!==!1);return he("close-screen",t),Z(()=>{te&&document.documentElement.classList.toggle("hide-nav",!r.value)}),(l,v)=>r.value?(a(),d("header",ma,[g(jo,{"is-screen-open":i(e),onToggleScreen:i(s)},{"nav-bar-title-before":f(()=>[u(l.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(l.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":f(()=>[u(l.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":f(()=>[u(l.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),g(ha,{open:i(e)},{"nav-screen-content-before":f(()=>[u(l.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":f(()=>[u(l.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])])):_("",!0)}}),ba=$(_a,[["__scopeId","data-v-f1e365da"]]),ka=["role","tabindex"],ga={key:1,class:"items"},$a=b({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(o){const e=o,{collapsed:t,collapsible:s,isLink:n,isActiveLink:r,hasActiveLink:l,hasChildren:v,toggle:c}=gt(P(()=>e.item)),h=P(()=>v.value?"section":"div"),y=P(()=>n.value?"a":"div"),m=P(()=>v.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),V=P(()=>n.value?void 0:"button"),S=P(()=>[[`level-${e.depth}`],{collapsible:s.value},{collapsed:t.value},{"is-link":n.value},{"is-active":r.value},{"has-active":l.value}]);function C(w){"key"in w&&w.key!=="Enter"||!e.item.link&&c()}function A(){e.item.link&&c()}return(w,E)=>{const j=K("VPSidebarItem",!0);return a(),k(H(h.value),{class:I(["VPSidebarItem",S.value])},{default:f(()=>[w.item.text?(a(),d("div",G({key:0,class:"item",role:V.value},Qe(w.item.items?{click:C,keydown:C}:{},!0),{tabindex:w.item.items&&0}),[E[1]||(E[1]=p("div",{class:"indicator"},null,-1)),w.item.link?(a(),k(O,{key:0,tag:y.value,class:"link",href:w.item.link,rel:w.item.rel,target:w.item.target},{default:f(()=>[(a(),k(H(m.value),{class:"text",innerHTML:w.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(a(),k(H(m.value),{key:1,class:"text",innerHTML:w.item.text},null,8,["innerHTML"])),w.item.collapsed!=null&&w.item.items&&w.item.items.length?(a(),d("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:A,onKeydown:Ze(A,["enter"]),tabindex:"0"},E[0]||(E[0]=[p("span",{class:"vpi-chevron-right caret-icon"},null,-1)]),32)):_("",!0)],16,ka)):_("",!0),w.item.items&&w.item.items.length?(a(),d("div",ga,[w.depth<5?(a(!0),d(M,{key:0},B(w.item.items,W=>(a(),k(j,{key:W.text,item:W,depth:w.depth+1},null,8,["item","depth"]))),128)):_("",!0)])):_("",!0)]),_:1},8,["class"])}}}),ya=$($a,[["__scopeId","data-v-196b2e5f"]]),Pa=b({__name:"VPSidebarGroup",props:{items:{}},setup(o){const e=T(!0);let t=null;return R(()=>{t=setTimeout(()=>{t=null,e.value=!1},300)}),xe(()=>{t!=null&&(clearTimeout(t),t=null)}),(s,n)=>(a(!0),d(M,null,B(s.items,r=>(a(),d("div",{key:r.text,class:I(["group",{"no-transition":e.value}])},[g(ya,{item:r,depth:0},null,8,["item"])],2))),128))}}),Va=$(Pa,[["__scopeId","data-v-9e426adc"]]),Sa={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},La=b({__name:"VPSidebar",props:{open:{type:Boolean}},setup(o){const{sidebarGroups:e,hasSidebar:t}=U(),s=o,n=T(null),r=Ie(te?document.body:null);D([s,n],()=>{var v;s.open?(r.value=!0,(v=n.value)==null||v.focus()):r.value=!1},{immediate:!0,flush:"post"});const l=T(0);return D(e,()=>{l.value+=1},{deep:!0}),(v,c)=>i(t)?(a(),d("aside",{key:0,class:I(["VPSidebar",{open:v.open}]),ref_key:"navEl",ref:n,onClick:c[0]||(c[0]=et(()=>{},["stop"]))},[c[2]||(c[2]=p("div",{class:"curtain"},null,-1)),p("nav",Sa,[c[1]||(c[1]=p("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),u(v.$slots,"sidebar-nav-before",{},void 0,!0),(a(),k(Va,{items:i(e),key:l.value},null,8,["items"])),u(v.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):_("",!0)}}),Ta=$(La,[["__scopeId","data-v-18756405"]]),wa=b({__name:"VPSkipLink",setup(o){const e=ee(),t=T();D(()=>e.path,()=>t.value.focus());function s({target:n}){const r=document.getElementById(decodeURIComponent(n.hash).slice(1));if(r){const l=()=>{r.removeAttribute("tabindex"),r.removeEventListener("blur",l)};r.setAttribute("tabindex","-1"),r.addEventListener("blur",l),r.focus(),window.scrollTo(0,0)}}return(n,r)=>(a(),d(M,null,[p("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),p("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:s}," Skip to content ")],64))}}),Na=$(wa,[["__scopeId","data-v-c3508ec8"]]),Ia=b({__name:"Layout",setup(o){const{isOpen:e,open:t,close:s}=U(),n=ee();D(()=>n.path,s),kt(e,s);const{frontmatter:r}=L(),l=Me(),v=P(()=>!!l["home-hero-image"]);return he("hero-image-slot-exists",v),(c,h)=>{const y=K("Content");return i(r).layout!==!1?(a(),d("div",{key:0,class:I(["Layout",i(r).pageClass])},[u(c.$slots,"layout-top",{},void 0,!0),g(Na),g(rt,{class:"backdrop",show:i(e),onClick:i(s)},null,8,["show","onClick"]),g(ba,null,{"nav-bar-title-before":f(()=>[u(c.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(c.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":f(()=>[u(c.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":f(()=>[u(c.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":f(()=>[u(c.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":f(()=>[u(c.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),g(hs,{open:i(e),onOpenMenu:i(t)},null,8,["open","onOpenMenu"]),g(Ta,{open:i(e)},{"sidebar-nav-before":f(()=>[u(c.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":f(()=>[u(c.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),g(xn,null,{"page-top":f(()=>[u(c.$slots,"page-top",{},void 0,!0)]),"page-bottom":f(()=>[u(c.$slots,"page-bottom",{},void 0,!0)]),"not-found":f(()=>[u(c.$slots,"not-found",{},void 0,!0)]),"home-hero-before":f(()=>[u(c.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":f(()=>[u(c.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(c.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(c.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(c.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(c.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":f(()=>[u(c.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":f(()=>[u(c.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":f(()=>[u(c.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":f(()=>[u(c.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":f(()=>[u(c.$slots,"doc-before",{},void 0,!0)]),"doc-after":f(()=>[u(c.$slots,"doc-after",{},void 0,!0)]),"doc-top":f(()=>[u(c.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":f(()=>[u(c.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":f(()=>[u(c.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":f(()=>[u(c.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":f(()=>[u(c.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(c.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(c.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(c.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),g(os),u(c.$slots,"layout-bottom",{},void 0,!0)],2)):(a(),k(y,{key:1}))}}}),Ma=$(Ia,[["__scopeId","data-v-a9a9e638"]]),Ca={Layout:Ma,enhanceApp:({app:o})=>{o.component("Badge",st)}},Aa=o=>{if(typeof document>"u")return{stabilizeScrollPosition:n=>async(...r)=>n(...r)};const e=document.documentElement;return{stabilizeScrollPosition:s=>async(...n)=>{const r=s(...n),l=o.value;if(!l)return r;const v=l.offsetTop-e.scrollTop;return await we(),e.scrollTop=l.offsetTop-v,r}}},Re="vitepress:tabSharedState",J=typeof localStorage<"u"?localStorage:null,Ue="vitepress:tabsSharedState",Ba=()=>{const o=J==null?void 0:J.getItem(Ue);if(o)try{return JSON.parse(o)}catch{}return{}},Ea=o=>{J&&J.setItem(Ue,JSON.stringify(o))},Ha=o=>{const e=tt({});D(()=>e.content,(t,s)=>{t&&s&&Ea(t)},{deep:!0}),o.provide(Re,e)},Oa=(o,e)=>{const t=q(Re);if(!t)throw new Error("[vitepress-plugin-tabs] TabsSharedState should be injected");R(()=>{t.content||(t.content=Ba())});const s=T(),n=P({get(){var c;const l=e.value,v=o.value;if(l){const h=(c=t.content)==null?void 0:c[l];if(h&&v.includes(h))return h}else{const h=s.value;if(h)return h}return v[0]},set(l){const v=e.value;v?t.content&&(t.content[v]=l):s.value=l}});return{selected:n,select:l=>{n.value=l}}};let Pe=0;const Da=()=>(Pe++,""+Pe);function Fa(){const o=Me();return P(()=>{var s;const t=(s=o.default)==null?void 0:s.call(o);return t?t.filter(n=>typeof n.type=="object"&&"__name"in n.type&&n.type.__name==="PluginTabsTab"&&n.props).map(n=>{var r;return(r=n.props)==null?void 0:r.label}):[]})}const je="vitepress:tabSingleState",Ra=o=>{he(je,o)},Ua=()=>{const o=q(je);if(!o)throw new Error("[vitepress-plugin-tabs] TabsSingleState should be injected");return o},ja={class:"plugin-tabs"},Ga=["id","aria-selected","aria-controls","tabindex","onClick"],za=b({__name:"PluginTabs",props:{sharedStateKey:{}},setup(o){const e=o,t=Fa(),{selected:s,select:n}=Oa(t,nt(e,"sharedStateKey")),r=T(),{stabilizeScrollPosition:l}=Aa(r),v=l(n),c=T([]),h=m=>{var C;const V=t.value.indexOf(s.value);let S;m.key==="ArrowLeft"?S=V>=1?V-1:t.value.length-1:m.key==="ArrowRight"&&(S=V<t.value.length-1?V+1:0),S!==void 0&&(v(t.value[S]),(C=c.value[S])==null||C.focus())},y=Da();return Ra({uid:y,selected:s}),(m,V)=>(a(),d("div",ja,[p("div",{ref_key:"tablist",ref:r,class:"plugin-tabs--tab-list",role:"tablist",onKeydown:h},[(a(!0),d(M,null,B(i(t),S=>(a(),d("button",{id:`tab-${S}-${i(y)}`,ref_for:!0,ref_key:"buttonRefs",ref:c,key:S,role:"tab",class:"plugin-tabs--tab","aria-selected":S===i(s),"aria-controls":`panel-${S}-${i(y)}`,tabindex:S===i(s)?0:-1,onClick:()=>i(v)(S)},N(S),9,Ga))),128))],544),u(m.$slots,"default")]))}}),Ka=["id","aria-labelledby"],Wa=b({__name:"PluginTabsTab",props:{label:{}},setup(o){const{uid:e,selected:t}=Ua();return(s,n)=>i(t)===s.label?(a(),d("div",{key:0,id:`panel-${s.label}-${i(e)}`,class:"plugin-tabs--content",role:"tabpanel",tabindex:"0","aria-labelledby":`tab-${s.label}-${i(e)}`},[u(s.$slots,"default",{},void 0,!0)],8,Ka)):_("",!0)}}),qa=$(Wa,[["__scopeId","data-v-9b0d03d2"]]),Ja=o=>{Ha(o),o.component("PluginTabs",za),o.component("PluginTabsTab",qa)},Ya=b({__name:"VersionPicker",props:{screenMenu:{type:Boolean}},setup(o){const e=T([]),t=T("Versions"),s=T(!1);Ve();const n=()=>typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),r=()=>{if(typeof window>"u")return"";const{origin:c,pathname:h}=window.location;if(c.includes("github.io")){const y=h.split("/").filter(Boolean),m=y.length>0?`/${y[0]}/`:"/";return`${c}${m}`}else return c},l=()=>new Promise(c=>{if(n()){c(!1);return}const h=setInterval(()=>{window.DOC_VERSIONS&&window.DOCUMENTER_CURRENT_VERSION&&(clearInterval(h),c(!0))},100);setTimeout(()=>{clearInterval(h),c(!1)},5e3)});return R(async()=>{if(!(typeof window>"u")){try{if(n()){const c=["dev"];e.value=c.map(h=>({text:h,link:"/"})),t.value="dev"}else{const c=await l(),h=P(()=>r());if(c&&window.DOC_VERSIONS&&window.DOCUMENTER_CURRENT_VERSION)e.value=window.DOC_VERSIONS.map(y=>({text:y,link:`${h.value}/${y}/`})),t.value=window.DOCUMENTER_CURRENT_VERSION;else{const y=["dev"];e.value=y.map(m=>({text:m,link:`${h.value}/${m}/`})),t.value="dev"}}}catch(c){console.warn("Error loading versions:",c);const h=["dev"],y=P(()=>r());e.value=h.map(m=>({text:m,link:`${y.value}/${m}/`})),t.value="dev"}s.value=!0}}),(c,h)=>s.value?(a(),d(M,{key:0},[!c.screenMenu&&e.value.length>0?(a(),k(Oe,{key:0,item:{text:t.value,items:e.value},class:"VPVersionPicker"},null,8,["item"])):c.screenMenu&&e.value.length>0?(a(),k(Fe,{key:1,text:t.value,items:e.value,class:"VPVersionPicker"},null,8,["text","items"])):_("",!0)],64)):_("",!0)}}),Xa=$(Ya,[["__scopeId","data-v-f465cb49"]]),Za={extends:Ca,enhanceApp({app:o,router:e,siteData:t}){Ja(o),o.component("VersionPicker",Xa)}};export{Za as R,_o as c,L as u}; diff --git a/dev/assets/cuda.md.DxFyd6lT.js b/dev/assets/cuda.md.DmbWVZki.js similarity index 99% rename from dev/assets/cuda.md.DxFyd6lT.js rename to dev/assets/cuda.md.DmbWVZki.js index ab8c55b5f..e5a3dd9c8 100644 --- a/dev/assets/cuda.md.DxFyd6lT.js +++ b/dev/assets/cuda.md.DmbWVZki.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a4 as n,o as h}from"./chunks/framework.C6EFuEL4.js";const C=JSON.parse('{"title":"CUDA & GPUs","description":"","frontmatter":{},"headers":[],"relativePath":"cuda.md","filePath":"cuda.md","lastUpdated":null}'),t={name:"cuda.md"};function l(k,s,p,e,r,d){return h(),a("div",null,s[0]||(s[0]=[n(`<h1 id="CUDA-and-GPUs" tabindex="-1">CUDA & GPUs <a class="header-anchor" href="#CUDA-and-GPUs" aria-label="Permalink to "CUDA &amp; GPUs {#CUDA-and-GPUs}""></a></h1><p>Running regular julia code on GPUs is one of the most amazing things about the language. DimensionalData.jl leans into this as much as possible.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CUDA</span></span> +import{_ as i,c as a,a4 as n,o as h}from"./chunks/framework.B8l2DGq3.js";const C=JSON.parse('{"title":"CUDA & GPUs","description":"","frontmatter":{},"headers":[],"relativePath":"cuda.md","filePath":"cuda.md","lastUpdated":null}'),t={name:"cuda.md"};function l(k,s,p,e,r,d){return h(),a("div",null,s[0]||(s[0]=[n(`<h1 id="CUDA-and-GPUs" tabindex="-1">CUDA & GPUs <a class="header-anchor" href="#CUDA-and-GPUs" aria-label="Permalink to "CUDA &amp; GPUs {#CUDA-and-GPUs}""></a></h1><p>Running regular julia code on GPUs is one of the most amazing things about the language. DimensionalData.jl leans into this as much as possible.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CUDA</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Create a Float32 array to use on the GPU</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Float32, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1000.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> diff --git a/dev/assets/cuda.md.DxFyd6lT.lean.js b/dev/assets/cuda.md.DmbWVZki.lean.js similarity index 99% rename from dev/assets/cuda.md.DxFyd6lT.lean.js rename to dev/assets/cuda.md.DmbWVZki.lean.js index ab8c55b5f..e5a3dd9c8 100644 --- a/dev/assets/cuda.md.DxFyd6lT.lean.js +++ b/dev/assets/cuda.md.DmbWVZki.lean.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a4 as n,o as h}from"./chunks/framework.C6EFuEL4.js";const C=JSON.parse('{"title":"CUDA & GPUs","description":"","frontmatter":{},"headers":[],"relativePath":"cuda.md","filePath":"cuda.md","lastUpdated":null}'),t={name:"cuda.md"};function l(k,s,p,e,r,d){return h(),a("div",null,s[0]||(s[0]=[n(`<h1 id="CUDA-and-GPUs" tabindex="-1">CUDA & GPUs <a class="header-anchor" href="#CUDA-and-GPUs" aria-label="Permalink to "CUDA &amp; GPUs {#CUDA-and-GPUs}""></a></h1><p>Running regular julia code on GPUs is one of the most amazing things about the language. DimensionalData.jl leans into this as much as possible.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CUDA</span></span> +import{_ as i,c as a,a4 as n,o as h}from"./chunks/framework.B8l2DGq3.js";const C=JSON.parse('{"title":"CUDA & GPUs","description":"","frontmatter":{},"headers":[],"relativePath":"cuda.md","filePath":"cuda.md","lastUpdated":null}'),t={name:"cuda.md"};function l(k,s,p,e,r,d){return h(),a("div",null,s[0]||(s[0]=[n(`<h1 id="CUDA-and-GPUs" tabindex="-1">CUDA & GPUs <a class="header-anchor" href="#CUDA-and-GPUs" aria-label="Permalink to "CUDA &amp; GPUs {#CUDA-and-GPUs}""></a></h1><p>Running regular julia code on GPUs is one of the most amazing things about the language. DimensionalData.jl leans into this as much as possible.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CUDA</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Create a Float32 array to use on the GPU</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Float32, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1000.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> diff --git a/dev/assets/dimarrays.md.CPKxRXq8.js b/dev/assets/dimarrays.md.DAoE3lud.js similarity index 96% rename from dev/assets/dimarrays.md.CPKxRXq8.js rename to dev/assets/dimarrays.md.DAoE3lud.js index 0ba557407..7379f4ce8 100644 --- a/dev/assets/dimarrays.md.CPKxRXq8.js +++ b/dev/assets/dimarrays.md.DAoE3lud.js @@ -1,4 +1,4 @@ -import{_ as d,c as p,a4 as l,G as h,w as e,B as k,o as g,j as i,a as s}from"./chunks/framework.C6EFuEL4.js";const u=JSON.parse('{"title":"DimArrays","description":"","frontmatter":{},"headers":[],"relativePath":"dimarrays.md","filePath":"dimarrays.md","lastUpdated":null}'),o={name:"dimarrays.md"};function r(y,a,f,c,b,E){const t=k("PluginTabsTab"),n=k("PluginTabs");return g(),p("div",null,[a[5]||(a[5]=l(`<h1 id="dimarrays" tabindex="-1">DimArrays <a class="header-anchor" href="#dimarrays" aria-label="Permalink to "DimArrays""></a></h1><p><code>DimArray</code>s are wrappers for other kinds of <code>AbstractArray</code> that add named dimension lookups.</p><p>Here we define a <code>Matrix</code> of <code>Float64</code>, and give it <code>X</code> and <code>Y</code> dimensions</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as d,c as p,a4 as l,G as h,w as e,B as k,o as g,j as i,a as s}from"./chunks/framework.B8l2DGq3.js";const u=JSON.parse('{"title":"DimArrays","description":"","frontmatter":{},"headers":[],"relativePath":"dimarrays.md","filePath":"dimarrays.md","lastUpdated":null}'),o={name:"dimarrays.md"};function r(y,a,f,c,b,E){const t=k("PluginTabsTab"),n=k("PluginTabs");return g(),p("div",null,[a[5]||(a[5]=l(`<h1 id="dimarrays" tabindex="-1">DimArrays <a class="header-anchor" href="#dimarrays" aria-label="Permalink to "DimArrays""></a></h1><p><code>DimArray</code>s are wrappers for other kinds of <code>AbstractArray</code> that add named dimension lookups.</p><p>Here we define a <code>Matrix</code> of <code>Float64</code>, and give it <code>X</code> and <code>Y</code> dimensions</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">5×10 Matrix{Float64}:</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.534915 0.4518 0.194465 0.780132 … 0.476495 0.0239356 0.526295</span></span> @@ -239,21 +239,21 @@ import{_ as d,c as p,a4 as l,G as h,w as e,B as k,o as g,j as i,a as s}from"./ch <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @benchmark</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da4[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">BenchmarkTools.Trial: 10000 samples with 1000 evaluations.</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">3.095 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">20.188 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">3.096 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">3.128 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.460 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">2.785 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">18.735 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">2.795 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">2.822 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.462 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▅</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.1 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.13 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> +<span class="line"><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> </span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.78 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: frequency by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.83 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Memory estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0 bytes</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">, allocs estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">.</span></span></code></pre></div><p>the same as accessing the parent array directly:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @benchmark</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> parent</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">$</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da4)[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">BenchmarkTools.Trial: 10000 samples with 1000 evaluations.</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">2.785 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">14.367 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">2.795 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">2.821 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.411 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">3.095 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">17.072 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">3.105 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">3.136 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.481 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▁</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.78 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.82 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▅</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.1 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.14 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Memory estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0 bytes</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">, allocs estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">.</span></span></code></pre></div>`,52))])}const C=d(o,[["render",r]]);export{u as __pageData,C as default}; diff --git a/dev/assets/dimarrays.md.CPKxRXq8.lean.js b/dev/assets/dimarrays.md.DAoE3lud.lean.js similarity index 96% rename from dev/assets/dimarrays.md.CPKxRXq8.lean.js rename to dev/assets/dimarrays.md.DAoE3lud.lean.js index 0ba557407..7379f4ce8 100644 --- a/dev/assets/dimarrays.md.CPKxRXq8.lean.js +++ b/dev/assets/dimarrays.md.DAoE3lud.lean.js @@ -1,4 +1,4 @@ -import{_ as d,c as p,a4 as l,G as h,w as e,B as k,o as g,j as i,a as s}from"./chunks/framework.C6EFuEL4.js";const u=JSON.parse('{"title":"DimArrays","description":"","frontmatter":{},"headers":[],"relativePath":"dimarrays.md","filePath":"dimarrays.md","lastUpdated":null}'),o={name:"dimarrays.md"};function r(y,a,f,c,b,E){const t=k("PluginTabsTab"),n=k("PluginTabs");return g(),p("div",null,[a[5]||(a[5]=l(`<h1 id="dimarrays" tabindex="-1">DimArrays <a class="header-anchor" href="#dimarrays" aria-label="Permalink to "DimArrays""></a></h1><p><code>DimArray</code>s are wrappers for other kinds of <code>AbstractArray</code> that add named dimension lookups.</p><p>Here we define a <code>Matrix</code> of <code>Float64</code>, and give it <code>X</code> and <code>Y</code> dimensions</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as d,c as p,a4 as l,G as h,w as e,B as k,o as g,j as i,a as s}from"./chunks/framework.B8l2DGq3.js";const u=JSON.parse('{"title":"DimArrays","description":"","frontmatter":{},"headers":[],"relativePath":"dimarrays.md","filePath":"dimarrays.md","lastUpdated":null}'),o={name:"dimarrays.md"};function r(y,a,f,c,b,E){const t=k("PluginTabsTab"),n=k("PluginTabs");return g(),p("div",null,[a[5]||(a[5]=l(`<h1 id="dimarrays" tabindex="-1">DimArrays <a class="header-anchor" href="#dimarrays" aria-label="Permalink to "DimArrays""></a></h1><p><code>DimArray</code>s are wrappers for other kinds of <code>AbstractArray</code> that add named dimension lookups.</p><p>Here we define a <code>Matrix</code> of <code>Float64</code>, and give it <code>X</code> and <code>Y</code> dimensions</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">5×10 Matrix{Float64}:</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.534915 0.4518 0.194465 0.780132 … 0.476495 0.0239356 0.526295</span></span> @@ -239,21 +239,21 @@ import{_ as d,c as p,a4 as l,G as h,w as e,B as k,o as g,j as i,a as s}from"./ch <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @benchmark</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da4[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">BenchmarkTools.Trial: 10000 samples with 1000 evaluations.</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">3.095 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">20.188 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">3.096 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">3.128 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.460 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">2.785 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">18.735 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">2.795 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">2.822 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.462 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▅</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.1 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.13 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> +<span class="line"><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> </span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.78 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: frequency by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.83 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Memory estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0 bytes</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">, allocs estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">.</span></span></code></pre></div><p>the same as accessing the parent array directly:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @benchmark</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> parent</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">$</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da4)[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">BenchmarkTools.Trial: 10000 samples with 1000 evaluations.</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">2.785 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">14.367 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">2.795 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">2.821 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.411 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">3.095 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">17.072 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">3.105 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">3.136 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.481 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▁</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.78 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.82 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▅</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.1 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.14 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Memory estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0 bytes</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">, allocs estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">.</span></span></code></pre></div>`,52))])}const C=d(o,[["render",r]]);export{u as __pageData,C as default}; diff --git a/dev/assets/dimensions.md.t2iPePY7.js b/dev/assets/dimensions.md.Btc7hsPQ.js similarity index 98% rename from dev/assets/dimensions.md.t2iPePY7.js rename to dev/assets/dimensions.md.Btc7hsPQ.js index 973392184..e2f87a7e5 100644 --- a/dev/assets/dimensions.md.t2iPePY7.js +++ b/dev/assets/dimensions.md.Btc7hsPQ.js @@ -1,3 +1,3 @@ -import{_ as i,c as a,a4 as e,o as n}from"./chunks/framework.C6EFuEL4.js";const c=JSON.parse('{"title":"Dimensions","description":"","frontmatter":{},"headers":[],"relativePath":"dimensions.md","filePath":"dimensions.md","lastUpdated":null}'),t={name:"dimensions.md"};function h(l,s,p,k,d,o){return n(),a("div",null,s[0]||(s[0]=[e(`<h1 id="dimensions" tabindex="-1">Dimensions <a class="header-anchor" href="#dimensions" aria-label="Permalink to "Dimensions""></a></h1><p>Dimensions are "wrapper types" that can be used to wrap any object to associate it with a named dimension.</p><p><code>X</code>, <code>Y</code>, <code>Z</code>, <code>Ti</code> are predefined as types:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as i,c as a,a4 as e,o as n}from"./chunks/framework.B8l2DGq3.js";const c=JSON.parse('{"title":"Dimensions","description":"","frontmatter":{},"headers":[],"relativePath":"dimensions.md","filePath":"dimensions.md","lastUpdated":null}'),t={name:"dimensions.md"};function h(l,s,p,k,d,o){return n(),a("div",null,s[0]||(s[0]=[e(`<h1 id="dimensions" tabindex="-1">Dimensions <a class="header-anchor" href="#dimensions" aria-label="Permalink to "Dimensions""></a></h1><p>Dimensions are "wrapper types" that can be used to wrap any object to associate it with a named dimension.</p><p><code>X</code>, <code>Y</code>, <code>Z</code>, <code>Ti</code> are predefined as types:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#d73a49;--shiki-dark:#ea4a5a;"> 1</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 2</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;">↗ </span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;">Z</span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;"> 3</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><p>You can also make <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimensions with any name:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:a}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{:b}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">a</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">b</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><p>The wrapped value can be retrieved with <code>val</code>:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">1</span></span></code></pre></div><p>DimensionalData.jl uses <code>Dimensions</code> everywhere:</p><ul><li><p><code>Dimension</code> are returned from <code>dims</code> to specify the names of the dimensions of an object</p></li><li><p>they wrap <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups"><code>Lookups</code></a> to associate the lookups with those names</p></li><li><p>to index into these objects, they wrap indices like <code>Int</code> or a <code>Selector</code></p></li></ul><p>This symmetry means we can ignore how data is organised, and label and access it by name, letting DD work out the details for us.</p><p>Dimensions are defined in the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions"><code>Dimensions</code></a> submodule, some Dimension-specific methods can be brought into scope with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div>`,18)]))}const g=i(t,[["render",h]]);export{c as __pageData,g as default}; diff --git a/dev/assets/dimensions.md.t2iPePY7.lean.js b/dev/assets/dimensions.md.Btc7hsPQ.lean.js similarity index 98% rename from dev/assets/dimensions.md.t2iPePY7.lean.js rename to dev/assets/dimensions.md.Btc7hsPQ.lean.js index 973392184..e2f87a7e5 100644 --- a/dev/assets/dimensions.md.t2iPePY7.lean.js +++ b/dev/assets/dimensions.md.Btc7hsPQ.lean.js @@ -1,3 +1,3 @@ -import{_ as i,c as a,a4 as e,o as n}from"./chunks/framework.C6EFuEL4.js";const c=JSON.parse('{"title":"Dimensions","description":"","frontmatter":{},"headers":[],"relativePath":"dimensions.md","filePath":"dimensions.md","lastUpdated":null}'),t={name:"dimensions.md"};function h(l,s,p,k,d,o){return n(),a("div",null,s[0]||(s[0]=[e(`<h1 id="dimensions" tabindex="-1">Dimensions <a class="header-anchor" href="#dimensions" aria-label="Permalink to "Dimensions""></a></h1><p>Dimensions are "wrapper types" that can be used to wrap any object to associate it with a named dimension.</p><p><code>X</code>, <code>Y</code>, <code>Z</code>, <code>Ti</code> are predefined as types:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as i,c as a,a4 as e,o as n}from"./chunks/framework.B8l2DGq3.js";const c=JSON.parse('{"title":"Dimensions","description":"","frontmatter":{},"headers":[],"relativePath":"dimensions.md","filePath":"dimensions.md","lastUpdated":null}'),t={name:"dimensions.md"};function h(l,s,p,k,d,o){return n(),a("div",null,s[0]||(s[0]=[e(`<h1 id="dimensions" tabindex="-1">Dimensions <a class="header-anchor" href="#dimensions" aria-label="Permalink to "Dimensions""></a></h1><p>Dimensions are "wrapper types" that can be used to wrap any object to associate it with a named dimension.</p><p><code>X</code>, <code>Y</code>, <code>Z</code>, <code>Ti</code> are predefined as types:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#d73a49;--shiki-dark:#ea4a5a;"> 1</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 2</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;">↗ </span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;">Z</span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;"> 3</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><p>You can also make <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimensions with any name:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:a}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{:b}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">a</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">b</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><p>The wrapped value can be retrieved with <code>val</code>:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">1</span></span></code></pre></div><p>DimensionalData.jl uses <code>Dimensions</code> everywhere:</p><ul><li><p><code>Dimension</code> are returned from <code>dims</code> to specify the names of the dimensions of an object</p></li><li><p>they wrap <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups"><code>Lookups</code></a> to associate the lookups with those names</p></li><li><p>to index into these objects, they wrap indices like <code>Int</code> or a <code>Selector</code></p></li></ul><p>This symmetry means we can ignore how data is organised, and label and access it by name, letting DD work out the details for us.</p><p>Dimensions are defined in the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions"><code>Dimensions</code></a> submodule, some Dimension-specific methods can be brought into scope with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div>`,18)]))}const g=i(t,[["render",h]]);export{c as __pageData,g as default}; diff --git a/dev/assets/diskarrays.md.yKxLOQIu.js b/dev/assets/diskarrays.md.DNn9Ahrm.js similarity index 92% rename from dev/assets/diskarrays.md.yKxLOQIu.js rename to dev/assets/diskarrays.md.DNn9Ahrm.js index da6d50aa9..0139c94ad 100644 --- a/dev/assets/diskarrays.md.yKxLOQIu.js +++ b/dev/assets/diskarrays.md.DNn9Ahrm.js @@ -1 +1 @@ -import{_ as t,c as i,a4 as r,o as e}from"./chunks/framework.C6EFuEL4.js";const m=JSON.parse('{"title":"DiskArrays.jl compatibility","description":"","frontmatter":{},"headers":[],"relativePath":"diskarrays.md","filePath":"diskarrays.md","lastUpdated":null}'),s={name:"diskarrays.md"};function l(n,a,o,d,p,c){return e(),i("div",null,a[0]||(a[0]=[r('<h1 id="DiskArrays.jl-compatibility" tabindex="-1">DiskArrays.jl compatibility <a class="header-anchor" href="#DiskArrays.jl-compatibility" aria-label="Permalink to "DiskArrays.jl compatibility {#DiskArrays.jl-compatibility}""></a></h1><p><a href="https://github.com/meggart/DiskArrays.jl" target="_blank" rel="noreferrer">DiskArrays.jl</a> enables lazy, chunked application of:</p><ul><li><p>broadcast</p></li><li><p>reductions</p></li><li><p>iteration</p></li><li><p>generators</p></li><li><p>zip</p></li></ul><p>It is rarely used directly, but is present in most disk and cloud based spatial data packages in julia, including: ArchGDAL.jl, NetCDF.jl, Zarr.jl, NCDatasets.lj, GRIBDatasets.jl and CommonDataModel.jl</p><p>The combination of DiskArrays.jl and DimensionalData.jl is Julias answer to pythons <a href="https://xarray.dev/" target="_blank" rel="noreferrer">xarray</a>. Rasters.jl and YAXArrays.jl are user-facing tools building on this combination.</p><p>They have no direct dependency relationships, with but are intentionally designed to integrate via both adherence to Julia's <code>AbstractArray</code> interface, and by coordination during development of both packages.</p>',6)]))}const h=t(s,[["render",l]]);export{m as __pageData,h as default}; +import{_ as t,c as i,a4 as r,o as e}from"./chunks/framework.B8l2DGq3.js";const m=JSON.parse('{"title":"DiskArrays.jl compatibility","description":"","frontmatter":{},"headers":[],"relativePath":"diskarrays.md","filePath":"diskarrays.md","lastUpdated":null}'),s={name:"diskarrays.md"};function l(n,a,o,d,p,c){return e(),i("div",null,a[0]||(a[0]=[r('<h1 id="DiskArrays.jl-compatibility" tabindex="-1">DiskArrays.jl compatibility <a class="header-anchor" href="#DiskArrays.jl-compatibility" aria-label="Permalink to "DiskArrays.jl compatibility {#DiskArrays.jl-compatibility}""></a></h1><p><a href="https://github.com/meggart/DiskArrays.jl" target="_blank" rel="noreferrer">DiskArrays.jl</a> enables lazy, chunked application of:</p><ul><li><p>broadcast</p></li><li><p>reductions</p></li><li><p>iteration</p></li><li><p>generators</p></li><li><p>zip</p></li></ul><p>It is rarely used directly, but is present in most disk and cloud based spatial data packages in julia, including: ArchGDAL.jl, NetCDF.jl, Zarr.jl, NCDatasets.lj, GRIBDatasets.jl and CommonDataModel.jl</p><p>The combination of DiskArrays.jl and DimensionalData.jl is Julias answer to pythons <a href="https://xarray.dev/" target="_blank" rel="noreferrer">xarray</a>. Rasters.jl and YAXArrays.jl are user-facing tools building on this combination.</p><p>They have no direct dependency relationships, with but are intentionally designed to integrate via both adherence to Julia's <code>AbstractArray</code> interface, and by coordination during development of both packages.</p>',6)]))}const h=t(s,[["render",l]]);export{m as __pageData,h as default}; diff --git a/dev/assets/diskarrays.md.yKxLOQIu.lean.js b/dev/assets/diskarrays.md.DNn9Ahrm.lean.js similarity index 92% rename from dev/assets/diskarrays.md.yKxLOQIu.lean.js rename to dev/assets/diskarrays.md.DNn9Ahrm.lean.js index da6d50aa9..0139c94ad 100644 --- a/dev/assets/diskarrays.md.yKxLOQIu.lean.js +++ b/dev/assets/diskarrays.md.DNn9Ahrm.lean.js @@ -1 +1 @@ -import{_ as t,c as i,a4 as r,o as e}from"./chunks/framework.C6EFuEL4.js";const m=JSON.parse('{"title":"DiskArrays.jl compatibility","description":"","frontmatter":{},"headers":[],"relativePath":"diskarrays.md","filePath":"diskarrays.md","lastUpdated":null}'),s={name:"diskarrays.md"};function l(n,a,o,d,p,c){return e(),i("div",null,a[0]||(a[0]=[r('<h1 id="DiskArrays.jl-compatibility" tabindex="-1">DiskArrays.jl compatibility <a class="header-anchor" href="#DiskArrays.jl-compatibility" aria-label="Permalink to "DiskArrays.jl compatibility {#DiskArrays.jl-compatibility}""></a></h1><p><a href="https://github.com/meggart/DiskArrays.jl" target="_blank" rel="noreferrer">DiskArrays.jl</a> enables lazy, chunked application of:</p><ul><li><p>broadcast</p></li><li><p>reductions</p></li><li><p>iteration</p></li><li><p>generators</p></li><li><p>zip</p></li></ul><p>It is rarely used directly, but is present in most disk and cloud based spatial data packages in julia, including: ArchGDAL.jl, NetCDF.jl, Zarr.jl, NCDatasets.lj, GRIBDatasets.jl and CommonDataModel.jl</p><p>The combination of DiskArrays.jl and DimensionalData.jl is Julias answer to pythons <a href="https://xarray.dev/" target="_blank" rel="noreferrer">xarray</a>. Rasters.jl and YAXArrays.jl are user-facing tools building on this combination.</p><p>They have no direct dependency relationships, with but are intentionally designed to integrate via both adherence to Julia's <code>AbstractArray</code> interface, and by coordination during development of both packages.</p>',6)]))}const h=t(s,[["render",l]]);export{m as __pageData,h as default}; +import{_ as t,c as i,a4 as r,o as e}from"./chunks/framework.B8l2DGq3.js";const m=JSON.parse('{"title":"DiskArrays.jl compatibility","description":"","frontmatter":{},"headers":[],"relativePath":"diskarrays.md","filePath":"diskarrays.md","lastUpdated":null}'),s={name:"diskarrays.md"};function l(n,a,o,d,p,c){return e(),i("div",null,a[0]||(a[0]=[r('<h1 id="DiskArrays.jl-compatibility" tabindex="-1">DiskArrays.jl compatibility <a class="header-anchor" href="#DiskArrays.jl-compatibility" aria-label="Permalink to "DiskArrays.jl compatibility {#DiskArrays.jl-compatibility}""></a></h1><p><a href="https://github.com/meggart/DiskArrays.jl" target="_blank" rel="noreferrer">DiskArrays.jl</a> enables lazy, chunked application of:</p><ul><li><p>broadcast</p></li><li><p>reductions</p></li><li><p>iteration</p></li><li><p>generators</p></li><li><p>zip</p></li></ul><p>It is rarely used directly, but is present in most disk and cloud based spatial data packages in julia, including: ArchGDAL.jl, NetCDF.jl, Zarr.jl, NCDatasets.lj, GRIBDatasets.jl and CommonDataModel.jl</p><p>The combination of DiskArrays.jl and DimensionalData.jl is Julias answer to pythons <a href="https://xarray.dev/" target="_blank" rel="noreferrer">xarray</a>. Rasters.jl and YAXArrays.jl are user-facing tools building on this combination.</p><p>They have no direct dependency relationships, with but are intentionally designed to integrate via both adherence to Julia's <code>AbstractArray</code> interface, and by coordination during development of both packages.</p>',6)]))}const h=t(s,[["render",l]]);export{m as __pageData,h as default}; diff --git a/dev/assets/extending_dd.md.DidWHgEG.js b/dev/assets/extending_dd.md.DoS75dmN.js similarity index 99% rename from dev/assets/extending_dd.md.DidWHgEG.js rename to dev/assets/extending_dd.md.DoS75dmN.js index 29a3044aa..714803264 100644 --- a/dev/assets/extending_dd.md.DidWHgEG.js +++ b/dev/assets/extending_dd.md.DoS75dmN.js @@ -1,4 +1,4 @@ -import{_ as n,c as d,a4 as r,G as a,w as t,B as l,o as p,j as i,a as s}from"./chunks/framework.C6EFuEL4.js";const b=JSON.parse('{"title":"Extending DimensionalData","description":"","frontmatter":{},"headers":[],"relativePath":"extending_dd.md","filePath":"extending_dd.md","lastUpdated":null}'),o={name:"extending_dd.md"};function g(y,e,c,u,m,E){const h=l("PluginTabsTab"),k=l("PluginTabs");return p(),d("div",null,[e[2]||(e[2]=r('<h1 id="Extending-DimensionalData" tabindex="-1">Extending DimensionalData <a class="header-anchor" href="#Extending-DimensionalData" aria-label="Permalink to "Extending DimensionalData {#Extending-DimensionalData}""></a></h1><p>Nearly everything in DimensionalData.jl is designed to be extensible.</p><ul><li><p><code>AbstractDimArray</code> are easily extended to custom array types. <code>Raster</code> or <code>YAXArray</code> are examples from other packages.</p></li><li><p><code>AbstractDimStack</code> are easily extended to custom mixed array dataset. <code>RasterStack</code> or <code>ArViZ.Dataset</code> are examples.</p></li><li><p><code>Lookup</code> can have new types added, e.g. to <code>AbstractSampled</code> or <code>AbstractCategorical</code>. <code>Rasters.Projected</code> is a lookup that knows its coordinate reference system, but otherwise behaves as a regular <code>Sampled</code> lookup.</p></li></ul><p><code>dims</code>, <code>rebuild</code> and <code>format</code> are the key interface methods in most of these cases.</p><h2 id="dims" tabindex="-1"><code>dims</code> <a class="header-anchor" href="#dims" aria-label="Permalink to "`dims` {#dims}""></a></h2><p>Objects extending DimensionalData.jl that have dimensions must return a <code>Tuple</code> of constructed <code>Dimension</code>s from <code>dims(obj)</code>.</p><h3 id="Dimension-axes" tabindex="-1"><code>Dimension</code> axes <a class="header-anchor" href="#Dimension-axes" aria-label="Permalink to "`Dimension` axes {#Dimension-axes}""></a></h3><p>Dimensions return from <code>dims</code> should hold a <code>Lookup</code> or in some cases just an <code>AbstractArray</code> (like with <code>DimIndices</code>). When attached to multi-dimensional objects, lookups must be the <em>same length</em> as the axis of the array it represents, and <code>eachindex(A, i)</code> and <code>eachindex(dim)</code> must return the same values.</p><p>This means that if the array has OffsetArrays.jl axes, the array the dimension wraps must also have OffsetArrays.jl axes.</p><h3 id="dims-keywords" tabindex="-1"><code>dims</code> keywords <a class="header-anchor" href="#dims-keywords" aria-label="Permalink to "`dims` keywords {#dims-keywords}""></a></h3><p>To any <code>dims</code> keyword argument that usually requires the dimension I, objects should accept any <code>Dimension</code>, <code>Type{<:Dimension}</code>, <code>Symbol</code>, <code>Val{:Symbol}</code>, <code>Val{<:Type{<:Dimension}}</code> or also regular <code>Integer</code>.</p><p>This is easier than it sounds, calling <code>DD.dims(objs, dims)</code> will return the matching dimension and <code>DD.dimnum(obj, dims)</code> will return the matching <code>Int</code> for any of these inputs as long as <code>dims(obj)</code> is implemented.</p><h2 id="rebuild" tabindex="-1"><code>rebuild</code> <a class="header-anchor" href="#rebuild" aria-label="Permalink to "`rebuild` {#rebuild}""></a></h2><p>Rebuild methods are used to rebuild immutable objects with new field values, in a way that is more flexible and extensible than just using ConstructionBase.jl reconstruction. Developers can choose to ignore some of the fields passed by <code>rebuild</code>.</p><p>The function signature is always one of:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><code>rebuild</code> has keyword versions automatically generated for all objects using <a href="https://github.com/JuliaObjects/ConstructionBase.jl" target="_blank" rel="noreferrer">ConstructionBase.jl</a>.</p><p>These will work without further work as long as your object has the fields used by DimensionalData.jl objects. For example, <code>AbstractDimArray</code> will receive these keywords in <code>rebuild</code>: <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code>.</p><p>If your <code>AbstractDimArray</code> does not have all these fields, you must implement <code>rebuild(x::YourDimArray; kw...)</code> manually.</p><p>An argument method is also defined with the same arguments as the keyword version. For <code>AbstractDimArray</code> it should only be used for updating <code>data</code> and <code>dims</code>, any more that that is confusing.</p><p>For <code>Dimension</code> and <code>Selector</code> the single argument versions are easiest to use, as there is only one argument.</p><h2 id="format" tabindex="-1"><code>format</code> <a class="header-anchor" href="#format" aria-label="Permalink to "`format` {#format}""></a></h2><p>When constructing an <code>AbstractDimArray</code> or <code>AbstractDimStack</code> <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.format"><code>DimensionalData.format</code></a> must be called on the <code>dims</code> tuple and the parent array:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, array)</span></span></code></pre></div><p>This lets DimensionalData detect the lookup properties, fill in missing fields of a <code>Lookup</code>, pass keywords from <code>Dimension</code> to detected <code>Lookup</code> constructors, and accept a wider range of dimension inputs like tuples of <code>Symbol</code> and <code>Type</code>.</p><p>Not calling <code>format</code> in the outer constructors of an <code>AbstractDimArray</code> has undefined behaviour.</p><h2 id="Interfaces.jl-interface-testing" tabindex="-1">Interfaces.jl interface testing <a class="header-anchor" href="#Interfaces.jl-interface-testing" aria-label="Permalink to "Interfaces.jl interface testing {#Interfaces.jl-interface-testing}""></a></h2><p>DimensionalData defines explicit, testable Interfaces.jl interfaces: <code>DimArrayInterface</code> and <code>DimStackInterface</code>.</p>',28)),a(k,null,{default:t(()=>[a(h,{label:"array"},{default:t(()=>e[0]||(e[0]=[i("p",null,[s("This is the implementation definition for "),i("code",null,"DimArray"),s(":")],-1),i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}}," using"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData, Interfaces")]),s(` +import{_ as n,c as d,a4 as r,G as a,w as t,B as l,o as p,j as i,a as s}from"./chunks/framework.B8l2DGq3.js";const b=JSON.parse('{"title":"Extending DimensionalData","description":"","frontmatter":{},"headers":[],"relativePath":"extending_dd.md","filePath":"extending_dd.md","lastUpdated":null}'),o={name:"extending_dd.md"};function g(y,e,c,u,m,E){const h=l("PluginTabsTab"),k=l("PluginTabs");return p(),d("div",null,[e[2]||(e[2]=r('<h1 id="Extending-DimensionalData" tabindex="-1">Extending DimensionalData <a class="header-anchor" href="#Extending-DimensionalData" aria-label="Permalink to "Extending DimensionalData {#Extending-DimensionalData}""></a></h1><p>Nearly everything in DimensionalData.jl is designed to be extensible.</p><ul><li><p><code>AbstractDimArray</code> are easily extended to custom array types. <code>Raster</code> or <code>YAXArray</code> are examples from other packages.</p></li><li><p><code>AbstractDimStack</code> are easily extended to custom mixed array dataset. <code>RasterStack</code> or <code>ArViZ.Dataset</code> are examples.</p></li><li><p><code>Lookup</code> can have new types added, e.g. to <code>AbstractSampled</code> or <code>AbstractCategorical</code>. <code>Rasters.Projected</code> is a lookup that knows its coordinate reference system, but otherwise behaves as a regular <code>Sampled</code> lookup.</p></li></ul><p><code>dims</code>, <code>rebuild</code> and <code>format</code> are the key interface methods in most of these cases.</p><h2 id="dims" tabindex="-1"><code>dims</code> <a class="header-anchor" href="#dims" aria-label="Permalink to "`dims` {#dims}""></a></h2><p>Objects extending DimensionalData.jl that have dimensions must return a <code>Tuple</code> of constructed <code>Dimension</code>s from <code>dims(obj)</code>.</p><h3 id="Dimension-axes" tabindex="-1"><code>Dimension</code> axes <a class="header-anchor" href="#Dimension-axes" aria-label="Permalink to "`Dimension` axes {#Dimension-axes}""></a></h3><p>Dimensions return from <code>dims</code> should hold a <code>Lookup</code> or in some cases just an <code>AbstractArray</code> (like with <code>DimIndices</code>). When attached to multi-dimensional objects, lookups must be the <em>same length</em> as the axis of the array it represents, and <code>eachindex(A, i)</code> and <code>eachindex(dim)</code> must return the same values.</p><p>This means that if the array has OffsetArrays.jl axes, the array the dimension wraps must also have OffsetArrays.jl axes.</p><h3 id="dims-keywords" tabindex="-1"><code>dims</code> keywords <a class="header-anchor" href="#dims-keywords" aria-label="Permalink to "`dims` keywords {#dims-keywords}""></a></h3><p>To any <code>dims</code> keyword argument that usually requires the dimension I, objects should accept any <code>Dimension</code>, <code>Type{<:Dimension}</code>, <code>Symbol</code>, <code>Val{:Symbol}</code>, <code>Val{<:Type{<:Dimension}}</code> or also regular <code>Integer</code>.</p><p>This is easier than it sounds, calling <code>DD.dims(objs, dims)</code> will return the matching dimension and <code>DD.dimnum(obj, dims)</code> will return the matching <code>Int</code> for any of these inputs as long as <code>dims(obj)</code> is implemented.</p><h2 id="rebuild" tabindex="-1"><code>rebuild</code> <a class="header-anchor" href="#rebuild" aria-label="Permalink to "`rebuild` {#rebuild}""></a></h2><p>Rebuild methods are used to rebuild immutable objects with new field values, in a way that is more flexible and extensible than just using ConstructionBase.jl reconstruction. Developers can choose to ignore some of the fields passed by <code>rebuild</code>.</p><p>The function signature is always one of:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><code>rebuild</code> has keyword versions automatically generated for all objects using <a href="https://github.com/JuliaObjects/ConstructionBase.jl" target="_blank" rel="noreferrer">ConstructionBase.jl</a>.</p><p>These will work without further work as long as your object has the fields used by DimensionalData.jl objects. For example, <code>AbstractDimArray</code> will receive these keywords in <code>rebuild</code>: <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code>.</p><p>If your <code>AbstractDimArray</code> does not have all these fields, you must implement <code>rebuild(x::YourDimArray; kw...)</code> manually.</p><p>An argument method is also defined with the same arguments as the keyword version. For <code>AbstractDimArray</code> it should only be used for updating <code>data</code> and <code>dims</code>, any more that that is confusing.</p><p>For <code>Dimension</code> and <code>Selector</code> the single argument versions are easiest to use, as there is only one argument.</p><h2 id="format" tabindex="-1"><code>format</code> <a class="header-anchor" href="#format" aria-label="Permalink to "`format` {#format}""></a></h2><p>When constructing an <code>AbstractDimArray</code> or <code>AbstractDimStack</code> <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.format"><code>DimensionalData.format</code></a> must be called on the <code>dims</code> tuple and the parent array:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, array)</span></span></code></pre></div><p>This lets DimensionalData detect the lookup properties, fill in missing fields of a <code>Lookup</code>, pass keywords from <code>Dimension</code> to detected <code>Lookup</code> constructors, and accept a wider range of dimension inputs like tuples of <code>Symbol</code> and <code>Type</code>.</p><p>Not calling <code>format</code> in the outer constructors of an <code>AbstractDimArray</code> has undefined behaviour.</p><h2 id="Interfaces.jl-interface-testing" tabindex="-1">Interfaces.jl interface testing <a class="header-anchor" href="#Interfaces.jl-interface-testing" aria-label="Permalink to "Interfaces.jl interface testing {#Interfaces.jl-interface-testing}""></a></h2><p>DimensionalData defines explicit, testable Interfaces.jl interfaces: <code>DimArrayInterface</code> and <code>DimStackInterface</code>.</p>',28)),a(k,null,{default:t(()=>[a(h,{label:"array"},{default:t(()=>e[0]||(e[0]=[i("p",null,[s("This is the implementation definition for "),i("code",null,"DimArray"),s(":")],-1),i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}}," using"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData, Interfaces")]),s(` `),i("span",{class:"line"}),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}}," @implements"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},"."),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"DimArrayInterface{("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},":refdims"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},","),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},":name"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},","),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},":metadata"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},")} DimArray ["),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"rand"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"X"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"10"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"), "),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"Y"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"10"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},")), "),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"zeros"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"Z"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"10"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"))]")])])])],-1),i("p",null,[s("See the "),i("a",{href:"/DimensionalData.jl/dev/api/reference#DimensionalData.DimArrayInterface"},[i("code",null,"DimensionalData.DimArrayInterface")]),s(" docs for options. We can test it with:")],-1),i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," Interfaces"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},"."),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"test"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"(DimensionalData"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},"."),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"DimArrayInterface)")])])])],-1),i("div",{class:"language- vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"}),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"}),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}},"Testing "),i("span",{style:{"--shiki-light":"#0366d6","--shiki-dark":"#2188ff"}},"DimArrayInterface"),i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}}," is implemented for "),i("span",{style:{"--shiki-light":"#0366d6","--shiki-dark":"#2188ff"}},"DimArray")]),s(` diff --git a/dev/assets/extending_dd.md.DidWHgEG.lean.js b/dev/assets/extending_dd.md.DoS75dmN.lean.js similarity index 99% rename from dev/assets/extending_dd.md.DidWHgEG.lean.js rename to dev/assets/extending_dd.md.DoS75dmN.lean.js index 29a3044aa..714803264 100644 --- a/dev/assets/extending_dd.md.DidWHgEG.lean.js +++ b/dev/assets/extending_dd.md.DoS75dmN.lean.js @@ -1,4 +1,4 @@ -import{_ as n,c as d,a4 as r,G as a,w as t,B as l,o as p,j as i,a as s}from"./chunks/framework.C6EFuEL4.js";const b=JSON.parse('{"title":"Extending DimensionalData","description":"","frontmatter":{},"headers":[],"relativePath":"extending_dd.md","filePath":"extending_dd.md","lastUpdated":null}'),o={name:"extending_dd.md"};function g(y,e,c,u,m,E){const h=l("PluginTabsTab"),k=l("PluginTabs");return p(),d("div",null,[e[2]||(e[2]=r('<h1 id="Extending-DimensionalData" tabindex="-1">Extending DimensionalData <a class="header-anchor" href="#Extending-DimensionalData" aria-label="Permalink to "Extending DimensionalData {#Extending-DimensionalData}""></a></h1><p>Nearly everything in DimensionalData.jl is designed to be extensible.</p><ul><li><p><code>AbstractDimArray</code> are easily extended to custom array types. <code>Raster</code> or <code>YAXArray</code> are examples from other packages.</p></li><li><p><code>AbstractDimStack</code> are easily extended to custom mixed array dataset. <code>RasterStack</code> or <code>ArViZ.Dataset</code> are examples.</p></li><li><p><code>Lookup</code> can have new types added, e.g. to <code>AbstractSampled</code> or <code>AbstractCategorical</code>. <code>Rasters.Projected</code> is a lookup that knows its coordinate reference system, but otherwise behaves as a regular <code>Sampled</code> lookup.</p></li></ul><p><code>dims</code>, <code>rebuild</code> and <code>format</code> are the key interface methods in most of these cases.</p><h2 id="dims" tabindex="-1"><code>dims</code> <a class="header-anchor" href="#dims" aria-label="Permalink to "`dims` {#dims}""></a></h2><p>Objects extending DimensionalData.jl that have dimensions must return a <code>Tuple</code> of constructed <code>Dimension</code>s from <code>dims(obj)</code>.</p><h3 id="Dimension-axes" tabindex="-1"><code>Dimension</code> axes <a class="header-anchor" href="#Dimension-axes" aria-label="Permalink to "`Dimension` axes {#Dimension-axes}""></a></h3><p>Dimensions return from <code>dims</code> should hold a <code>Lookup</code> or in some cases just an <code>AbstractArray</code> (like with <code>DimIndices</code>). When attached to multi-dimensional objects, lookups must be the <em>same length</em> as the axis of the array it represents, and <code>eachindex(A, i)</code> and <code>eachindex(dim)</code> must return the same values.</p><p>This means that if the array has OffsetArrays.jl axes, the array the dimension wraps must also have OffsetArrays.jl axes.</p><h3 id="dims-keywords" tabindex="-1"><code>dims</code> keywords <a class="header-anchor" href="#dims-keywords" aria-label="Permalink to "`dims` keywords {#dims-keywords}""></a></h3><p>To any <code>dims</code> keyword argument that usually requires the dimension I, objects should accept any <code>Dimension</code>, <code>Type{<:Dimension}</code>, <code>Symbol</code>, <code>Val{:Symbol}</code>, <code>Val{<:Type{<:Dimension}}</code> or also regular <code>Integer</code>.</p><p>This is easier than it sounds, calling <code>DD.dims(objs, dims)</code> will return the matching dimension and <code>DD.dimnum(obj, dims)</code> will return the matching <code>Int</code> for any of these inputs as long as <code>dims(obj)</code> is implemented.</p><h2 id="rebuild" tabindex="-1"><code>rebuild</code> <a class="header-anchor" href="#rebuild" aria-label="Permalink to "`rebuild` {#rebuild}""></a></h2><p>Rebuild methods are used to rebuild immutable objects with new field values, in a way that is more flexible and extensible than just using ConstructionBase.jl reconstruction. Developers can choose to ignore some of the fields passed by <code>rebuild</code>.</p><p>The function signature is always one of:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><code>rebuild</code> has keyword versions automatically generated for all objects using <a href="https://github.com/JuliaObjects/ConstructionBase.jl" target="_blank" rel="noreferrer">ConstructionBase.jl</a>.</p><p>These will work without further work as long as your object has the fields used by DimensionalData.jl objects. For example, <code>AbstractDimArray</code> will receive these keywords in <code>rebuild</code>: <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code>.</p><p>If your <code>AbstractDimArray</code> does not have all these fields, you must implement <code>rebuild(x::YourDimArray; kw...)</code> manually.</p><p>An argument method is also defined with the same arguments as the keyword version. For <code>AbstractDimArray</code> it should only be used for updating <code>data</code> and <code>dims</code>, any more that that is confusing.</p><p>For <code>Dimension</code> and <code>Selector</code> the single argument versions are easiest to use, as there is only one argument.</p><h2 id="format" tabindex="-1"><code>format</code> <a class="header-anchor" href="#format" aria-label="Permalink to "`format` {#format}""></a></h2><p>When constructing an <code>AbstractDimArray</code> or <code>AbstractDimStack</code> <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.format"><code>DimensionalData.format</code></a> must be called on the <code>dims</code> tuple and the parent array:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, array)</span></span></code></pre></div><p>This lets DimensionalData detect the lookup properties, fill in missing fields of a <code>Lookup</code>, pass keywords from <code>Dimension</code> to detected <code>Lookup</code> constructors, and accept a wider range of dimension inputs like tuples of <code>Symbol</code> and <code>Type</code>.</p><p>Not calling <code>format</code> in the outer constructors of an <code>AbstractDimArray</code> has undefined behaviour.</p><h2 id="Interfaces.jl-interface-testing" tabindex="-1">Interfaces.jl interface testing <a class="header-anchor" href="#Interfaces.jl-interface-testing" aria-label="Permalink to "Interfaces.jl interface testing {#Interfaces.jl-interface-testing}""></a></h2><p>DimensionalData defines explicit, testable Interfaces.jl interfaces: <code>DimArrayInterface</code> and <code>DimStackInterface</code>.</p>',28)),a(k,null,{default:t(()=>[a(h,{label:"array"},{default:t(()=>e[0]||(e[0]=[i("p",null,[s("This is the implementation definition for "),i("code",null,"DimArray"),s(":")],-1),i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}}," using"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData, Interfaces")]),s(` +import{_ as n,c as d,a4 as r,G as a,w as t,B as l,o as p,j as i,a as s}from"./chunks/framework.B8l2DGq3.js";const b=JSON.parse('{"title":"Extending DimensionalData","description":"","frontmatter":{},"headers":[],"relativePath":"extending_dd.md","filePath":"extending_dd.md","lastUpdated":null}'),o={name:"extending_dd.md"};function g(y,e,c,u,m,E){const h=l("PluginTabsTab"),k=l("PluginTabs");return p(),d("div",null,[e[2]||(e[2]=r('<h1 id="Extending-DimensionalData" tabindex="-1">Extending DimensionalData <a class="header-anchor" href="#Extending-DimensionalData" aria-label="Permalink to "Extending DimensionalData {#Extending-DimensionalData}""></a></h1><p>Nearly everything in DimensionalData.jl is designed to be extensible.</p><ul><li><p><code>AbstractDimArray</code> are easily extended to custom array types. <code>Raster</code> or <code>YAXArray</code> are examples from other packages.</p></li><li><p><code>AbstractDimStack</code> are easily extended to custom mixed array dataset. <code>RasterStack</code> or <code>ArViZ.Dataset</code> are examples.</p></li><li><p><code>Lookup</code> can have new types added, e.g. to <code>AbstractSampled</code> or <code>AbstractCategorical</code>. <code>Rasters.Projected</code> is a lookup that knows its coordinate reference system, but otherwise behaves as a regular <code>Sampled</code> lookup.</p></li></ul><p><code>dims</code>, <code>rebuild</code> and <code>format</code> are the key interface methods in most of these cases.</p><h2 id="dims" tabindex="-1"><code>dims</code> <a class="header-anchor" href="#dims" aria-label="Permalink to "`dims` {#dims}""></a></h2><p>Objects extending DimensionalData.jl that have dimensions must return a <code>Tuple</code> of constructed <code>Dimension</code>s from <code>dims(obj)</code>.</p><h3 id="Dimension-axes" tabindex="-1"><code>Dimension</code> axes <a class="header-anchor" href="#Dimension-axes" aria-label="Permalink to "`Dimension` axes {#Dimension-axes}""></a></h3><p>Dimensions return from <code>dims</code> should hold a <code>Lookup</code> or in some cases just an <code>AbstractArray</code> (like with <code>DimIndices</code>). When attached to multi-dimensional objects, lookups must be the <em>same length</em> as the axis of the array it represents, and <code>eachindex(A, i)</code> and <code>eachindex(dim)</code> must return the same values.</p><p>This means that if the array has OffsetArrays.jl axes, the array the dimension wraps must also have OffsetArrays.jl axes.</p><h3 id="dims-keywords" tabindex="-1"><code>dims</code> keywords <a class="header-anchor" href="#dims-keywords" aria-label="Permalink to "`dims` keywords {#dims-keywords}""></a></h3><p>To any <code>dims</code> keyword argument that usually requires the dimension I, objects should accept any <code>Dimension</code>, <code>Type{<:Dimension}</code>, <code>Symbol</code>, <code>Val{:Symbol}</code>, <code>Val{<:Type{<:Dimension}}</code> or also regular <code>Integer</code>.</p><p>This is easier than it sounds, calling <code>DD.dims(objs, dims)</code> will return the matching dimension and <code>DD.dimnum(obj, dims)</code> will return the matching <code>Int</code> for any of these inputs as long as <code>dims(obj)</code> is implemented.</p><h2 id="rebuild" tabindex="-1"><code>rebuild</code> <a class="header-anchor" href="#rebuild" aria-label="Permalink to "`rebuild` {#rebuild}""></a></h2><p>Rebuild methods are used to rebuild immutable objects with new field values, in a way that is more flexible and extensible than just using ConstructionBase.jl reconstruction. Developers can choose to ignore some of the fields passed by <code>rebuild</code>.</p><p>The function signature is always one of:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><code>rebuild</code> has keyword versions automatically generated for all objects using <a href="https://github.com/JuliaObjects/ConstructionBase.jl" target="_blank" rel="noreferrer">ConstructionBase.jl</a>.</p><p>These will work without further work as long as your object has the fields used by DimensionalData.jl objects. For example, <code>AbstractDimArray</code> will receive these keywords in <code>rebuild</code>: <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code>.</p><p>If your <code>AbstractDimArray</code> does not have all these fields, you must implement <code>rebuild(x::YourDimArray; kw...)</code> manually.</p><p>An argument method is also defined with the same arguments as the keyword version. For <code>AbstractDimArray</code> it should only be used for updating <code>data</code> and <code>dims</code>, any more that that is confusing.</p><p>For <code>Dimension</code> and <code>Selector</code> the single argument versions are easiest to use, as there is only one argument.</p><h2 id="format" tabindex="-1"><code>format</code> <a class="header-anchor" href="#format" aria-label="Permalink to "`format` {#format}""></a></h2><p>When constructing an <code>AbstractDimArray</code> or <code>AbstractDimStack</code> <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.format"><code>DimensionalData.format</code></a> must be called on the <code>dims</code> tuple and the parent array:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, array)</span></span></code></pre></div><p>This lets DimensionalData detect the lookup properties, fill in missing fields of a <code>Lookup</code>, pass keywords from <code>Dimension</code> to detected <code>Lookup</code> constructors, and accept a wider range of dimension inputs like tuples of <code>Symbol</code> and <code>Type</code>.</p><p>Not calling <code>format</code> in the outer constructors of an <code>AbstractDimArray</code> has undefined behaviour.</p><h2 id="Interfaces.jl-interface-testing" tabindex="-1">Interfaces.jl interface testing <a class="header-anchor" href="#Interfaces.jl-interface-testing" aria-label="Permalink to "Interfaces.jl interface testing {#Interfaces.jl-interface-testing}""></a></h2><p>DimensionalData defines explicit, testable Interfaces.jl interfaces: <code>DimArrayInterface</code> and <code>DimStackInterface</code>.</p>',28)),a(k,null,{default:t(()=>[a(h,{label:"array"},{default:t(()=>e[0]||(e[0]=[i("p",null,[s("This is the implementation definition for "),i("code",null,"DimArray"),s(":")],-1),i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}}," using"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData, Interfaces")]),s(` `),i("span",{class:"line"}),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}}," @implements"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},"."),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"DimArrayInterface{("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},":refdims"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},","),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},":name"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},","),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},":metadata"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},")} DimArray ["),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"rand"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"X"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"10"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"), "),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"Y"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"10"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},")), "),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"zeros"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"Z"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"10"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"))]")])])])],-1),i("p",null,[s("See the "),i("a",{href:"/DimensionalData.jl/dev/api/reference#DimensionalData.DimArrayInterface"},[i("code",null,"DimensionalData.DimArrayInterface")]),s(" docs for options. We can test it with:")],-1),i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," Interfaces"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},"."),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"test"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"(DimensionalData"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},"."),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"DimArrayInterface)")])])])],-1),i("div",{class:"language- vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"}),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"}),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}},"Testing "),i("span",{style:{"--shiki-light":"#0366d6","--shiki-dark":"#2188ff"}},"DimArrayInterface"),i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}}," is implemented for "),i("span",{style:{"--shiki-light":"#0366d6","--shiki-dark":"#2188ff"}},"DimArray")]),s(` diff --git a/dev/assets/get_info.md.D7dC6CSA.js b/dev/assets/get_info.md.B7K6LY7P.js similarity index 99% rename from dev/assets/get_info.md.D7dC6CSA.js rename to dev/assets/get_info.md.B7K6LY7P.js index a3afdead0..0cb00aba1 100644 --- a/dev/assets/get_info.md.D7dC6CSA.js +++ b/dev/assets/get_info.md.B7K6LY7P.js @@ -1,4 +1,4 @@ -import{_ as d,c as p,a4 as k,G as l,w as e,B as n,o as g,j as i,a as s}from"./chunks/framework.C6EFuEL4.js";const C=JSON.parse('{"title":"Getters","description":"","frontmatter":{},"headers":[],"relativePath":"get_info.md","filePath":"get_info.md","lastUpdated":null}'),r={name:"get_info.md"};function c(o,a,u,y,E,v){const t=n("PluginTabsTab"),h=n("PluginTabs");return g(),p("div",null,[a[24]||(a[24]=k(`<h1 id="getters" tabindex="-1">Getters <a class="header-anchor" href="#getters" aria-label="Permalink to "Getters""></a></h1><p>DimensionalData.jl defines consistent methods to retrieve information from objects like <code>DimArray</code>, <code>DimStack</code>, <code>Tuple</code>s of <code>Dimension</code>, <code>Dimension</code> and <code>Lookup</code>.</p><p>First we will define an example <code>DimArray</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as d,c as p,a4 as k,G as l,w as e,B as n,o as g,j as i,a as s}from"./chunks/framework.B8l2DGq3.js";const C=JSON.parse('{"title":"Getters","description":"","frontmatter":{},"headers":[],"relativePath":"get_info.md","filePath":"get_info.md","lastUpdated":null}'),r={name:"get_info.md"};function c(o,a,u,y,E,v){const t=n("PluginTabsTab"),h=n("PluginTabs");return g(),p("div",null,[a[24]||(a[24]=k(`<h1 id="getters" tabindex="-1">Getters <a class="header-anchor" href="#getters" aria-label="Permalink to "Getters""></a></h1><p>DimensionalData.jl defines consistent methods to retrieve information from objects like <code>DimArray</code>, <code>DimStack</code>, <code>Tuple</code>s of <code>Dimension</code>, <code>Dimension</code> and <code>Lookup</code>.</p><p>First we will define an example <code>DimArray</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">x, y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">200.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>(↓ X 10:-1:1,</span></span> <span class="line"><span>→ Y 100.0:10.0:200.0)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭───────────────────────────╮</span></span> diff --git a/dev/assets/get_info.md.D7dC6CSA.lean.js b/dev/assets/get_info.md.B7K6LY7P.lean.js similarity index 99% rename from dev/assets/get_info.md.D7dC6CSA.lean.js rename to dev/assets/get_info.md.B7K6LY7P.lean.js index a3afdead0..0cb00aba1 100644 --- a/dev/assets/get_info.md.D7dC6CSA.lean.js +++ b/dev/assets/get_info.md.B7K6LY7P.lean.js @@ -1,4 +1,4 @@ -import{_ as d,c as p,a4 as k,G as l,w as e,B as n,o as g,j as i,a as s}from"./chunks/framework.C6EFuEL4.js";const C=JSON.parse('{"title":"Getters","description":"","frontmatter":{},"headers":[],"relativePath":"get_info.md","filePath":"get_info.md","lastUpdated":null}'),r={name:"get_info.md"};function c(o,a,u,y,E,v){const t=n("PluginTabsTab"),h=n("PluginTabs");return g(),p("div",null,[a[24]||(a[24]=k(`<h1 id="getters" tabindex="-1">Getters <a class="header-anchor" href="#getters" aria-label="Permalink to "Getters""></a></h1><p>DimensionalData.jl defines consistent methods to retrieve information from objects like <code>DimArray</code>, <code>DimStack</code>, <code>Tuple</code>s of <code>Dimension</code>, <code>Dimension</code> and <code>Lookup</code>.</p><p>First we will define an example <code>DimArray</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as d,c as p,a4 as k,G as l,w as e,B as n,o as g,j as i,a as s}from"./chunks/framework.B8l2DGq3.js";const C=JSON.parse('{"title":"Getters","description":"","frontmatter":{},"headers":[],"relativePath":"get_info.md","filePath":"get_info.md","lastUpdated":null}'),r={name:"get_info.md"};function c(o,a,u,y,E,v){const t=n("PluginTabsTab"),h=n("PluginTabs");return g(),p("div",null,[a[24]||(a[24]=k(`<h1 id="getters" tabindex="-1">Getters <a class="header-anchor" href="#getters" aria-label="Permalink to "Getters""></a></h1><p>DimensionalData.jl defines consistent methods to retrieve information from objects like <code>DimArray</code>, <code>DimStack</code>, <code>Tuple</code>s of <code>Dimension</code>, <code>Dimension</code> and <code>Lookup</code>.</p><p>First we will define an example <code>DimArray</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">x, y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">200.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>(↓ X 10:-1:1,</span></span> <span class="line"><span>→ Y 100.0:10.0:200.0)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭───────────────────────────╮</span></span> diff --git a/dev/assets/groupby.md.B2ubhn1c.js b/dev/assets/groupby.md.DESSK1W0.js similarity index 99% rename from dev/assets/groupby.md.B2ubhn1c.js rename to dev/assets/groupby.md.DESSK1W0.js index e99419201..9f6cbbb9b 100644 --- a/dev/assets/groupby.md.B2ubhn1c.js +++ b/dev/assets/groupby.md.DESSK1W0.js @@ -1,4 +1,4 @@ -import{_ as p,c as d,a4 as t,G as e,w as l,j as i,a as s,B as n,o as r}from"./chunks/framework.C6EFuEL4.js";const b=JSON.parse('{"title":"Group By","description":"","frontmatter":{},"headers":[],"relativePath":"groupby.md","filePath":"groupby.md","lastUpdated":null}'),g={name:"groupby.md"};function y(f,a,c,o,u,E){const h=n("PluginTabsTab"),k=n("PluginTabs");return r(),d("div",null,[a[25]||(a[25]=t(`<h1 id="Group-By" tabindex="-1">Group By <a class="header-anchor" href="#Group-By" aria-label="Permalink to "Group By {#Group-By}""></a></h1><p>DimensionalData.jl provides a <code>groupby</code> function for dimensional grouping. This guide will cover:</p><ul><li><p>simple grouping with a function</p></li><li><p>grouping with <code>Bins</code></p></li><li><p>grouping with another existing <code>AbstractDimArry</code> or <code>Dimension</code></p></li></ul><h2 id="Grouping-functions" tabindex="-1">Grouping functions <a class="header-anchor" href="#Grouping-functions" aria-label="Permalink to "Grouping functions {#Grouping-functions}""></a></h2><p>Lets look at the kind of functions that can be used to group <code>DateTime</code>. Other types will follow the same principles, but are usually simpler.</p><p>First load some packages:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as p,c as d,a4 as t,G as e,w as l,j as i,a as s,B as n,o as r}from"./chunks/framework.B8l2DGq3.js";const b=JSON.parse('{"title":"Group By","description":"","frontmatter":{},"headers":[],"relativePath":"groupby.md","filePath":"groupby.md","lastUpdated":null}'),g={name:"groupby.md"};function y(f,a,c,o,u,E){const h=n("PluginTabsTab"),k=n("PluginTabs");return r(),d("div",null,[a[25]||(a[25]=t(`<h1 id="Group-By" tabindex="-1">Group By <a class="header-anchor" href="#Group-By" aria-label="Permalink to "Group By {#Group-By}""></a></h1><p>DimensionalData.jl provides a <code>groupby</code> function for dimensional grouping. This guide will cover:</p><ul><li><p>simple grouping with a function</p></li><li><p>grouping with <code>Bins</code></p></li><li><p>grouping with another existing <code>AbstractDimArry</code> or <code>Dimension</code></p></li></ul><h2 id="Grouping-functions" tabindex="-1">Grouping functions <a class="header-anchor" href="#Grouping-functions" aria-label="Permalink to "Grouping functions {#Grouping-functions}""></a></h2><p>Lets look at the kind of functions that can be used to group <code>DateTime</code>. Other types will follow the same principles, but are usually simpler.</p><p>First load some packages:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Statistics</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DD </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><p>Now create a demo <code>DateTime</code> range</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> tempo </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> range</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Hour</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), length</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">365</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">24</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">Dates.DateTime("2000-01-01T00:00:00"):Dates.Hour(1):Dates.DateTime("2001-12-30T23:00:00")</span></span></code></pre></div><p>Lets see how some common functions work.</p><p>The <code>hour</code> function will transform values to hour of the day - the integers <code>0:23</code></p>`,12)),e(k,null,{default:l(()=>[e(h,{label:"hour"},{default:l(()=>a[0]||(a[0]=[i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}}," hour"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},".(tempo)")])])])],-1),i("div",{class:"language- vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"}),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}},"17520-element Vector{Int64}:")]),s(` diff --git a/dev/assets/groupby.md.B2ubhn1c.lean.js b/dev/assets/groupby.md.DESSK1W0.lean.js similarity index 99% rename from dev/assets/groupby.md.B2ubhn1c.lean.js rename to dev/assets/groupby.md.DESSK1W0.lean.js index e99419201..9f6cbbb9b 100644 --- a/dev/assets/groupby.md.B2ubhn1c.lean.js +++ b/dev/assets/groupby.md.DESSK1W0.lean.js @@ -1,4 +1,4 @@ -import{_ as p,c as d,a4 as t,G as e,w as l,j as i,a as s,B as n,o as r}from"./chunks/framework.C6EFuEL4.js";const b=JSON.parse('{"title":"Group By","description":"","frontmatter":{},"headers":[],"relativePath":"groupby.md","filePath":"groupby.md","lastUpdated":null}'),g={name:"groupby.md"};function y(f,a,c,o,u,E){const h=n("PluginTabsTab"),k=n("PluginTabs");return r(),d("div",null,[a[25]||(a[25]=t(`<h1 id="Group-By" tabindex="-1">Group By <a class="header-anchor" href="#Group-By" aria-label="Permalink to "Group By {#Group-By}""></a></h1><p>DimensionalData.jl provides a <code>groupby</code> function for dimensional grouping. This guide will cover:</p><ul><li><p>simple grouping with a function</p></li><li><p>grouping with <code>Bins</code></p></li><li><p>grouping with another existing <code>AbstractDimArry</code> or <code>Dimension</code></p></li></ul><h2 id="Grouping-functions" tabindex="-1">Grouping functions <a class="header-anchor" href="#Grouping-functions" aria-label="Permalink to "Grouping functions {#Grouping-functions}""></a></h2><p>Lets look at the kind of functions that can be used to group <code>DateTime</code>. Other types will follow the same principles, but are usually simpler.</p><p>First load some packages:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as p,c as d,a4 as t,G as e,w as l,j as i,a as s,B as n,o as r}from"./chunks/framework.B8l2DGq3.js";const b=JSON.parse('{"title":"Group By","description":"","frontmatter":{},"headers":[],"relativePath":"groupby.md","filePath":"groupby.md","lastUpdated":null}'),g={name:"groupby.md"};function y(f,a,c,o,u,E){const h=n("PluginTabsTab"),k=n("PluginTabs");return r(),d("div",null,[a[25]||(a[25]=t(`<h1 id="Group-By" tabindex="-1">Group By <a class="header-anchor" href="#Group-By" aria-label="Permalink to "Group By {#Group-By}""></a></h1><p>DimensionalData.jl provides a <code>groupby</code> function for dimensional grouping. This guide will cover:</p><ul><li><p>simple grouping with a function</p></li><li><p>grouping with <code>Bins</code></p></li><li><p>grouping with another existing <code>AbstractDimArry</code> or <code>Dimension</code></p></li></ul><h2 id="Grouping-functions" tabindex="-1">Grouping functions <a class="header-anchor" href="#Grouping-functions" aria-label="Permalink to "Grouping functions {#Grouping-functions}""></a></h2><p>Lets look at the kind of functions that can be used to group <code>DateTime</code>. Other types will follow the same principles, but are usually simpler.</p><p>First load some packages:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Statistics</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DD </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><p>Now create a demo <code>DateTime</code> range</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> tempo </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> range</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Hour</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), length</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">365</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">24</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">Dates.DateTime("2000-01-01T00:00:00"):Dates.Hour(1):Dates.DateTime("2001-12-30T23:00:00")</span></span></code></pre></div><p>Lets see how some common functions work.</p><p>The <code>hour</code> function will transform values to hour of the day - the integers <code>0:23</code></p>`,12)),e(k,null,{default:l(()=>[e(h,{label:"hour"},{default:l(()=>a[0]||(a[0]=[i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}}," hour"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},".(tempo)")])])])],-1),i("div",{class:"language- vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"}),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}},"17520-element Vector{Int64}:")]),s(` diff --git a/dev/assets/index.md.CRTGE4WO.js b/dev/assets/index.md.uhypFJup.js similarity index 95% rename from dev/assets/index.md.CRTGE4WO.js rename to dev/assets/index.md.uhypFJup.js index d3cb1fb14..6f73cca4d 100644 --- a/dev/assets/index.md.CRTGE4WO.js +++ b/dev/assets/index.md.uhypFJup.js @@ -1 +1 @@ -import{_ as e,c as t,o as a}from"./chunks/framework.C6EFuEL4.js";const p=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"DimensionalData.jl","text":"Julia datasets with named dimensions","tagline":"High performance named indexing for Julia","image":{"src":"/logo.png"},"actions":[{"theme":"brand","text":"Getting Started","link":"/basics"},{"theme":"alt","text":"API reference","link":"/api/reference"},{"theme":"alt","text":"View on Github","link":"https://github.com/rafaqz/DimensionalData.jl"}]},"features":[{"title":"Intelligent indexing","details":"DimensionalData.jl provides no-cost abstractions for named indexing, and fast index lookups.","link":"/selectors"},{"title":"Powerful Array manipulation","details":"broadcast, reduce, permutedims, and groupby operations.","link":"/groupby"},{"title":"Seamlessly integrated with the julia ecosystem","details":"Works with most methods that accept a regular Array. If a method accepts numeric indices or dims=X in base, you should be able to use DimensionalData.jl dims."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":null}'),i={name:"index.md"};function n(s,o,r,l,d,m){return a(),t("div")}const u=e(i,[["render",n]]);export{p as __pageData,u as default}; +import{_ as e,c as t,o as a}from"./chunks/framework.B8l2DGq3.js";const p=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"DimensionalData.jl","text":"Julia datasets with named dimensions","tagline":"High performance named indexing for Julia","image":{"src":"/logo.png"},"actions":[{"theme":"brand","text":"Getting Started","link":"/basics"},{"theme":"alt","text":"API reference","link":"/api/reference"},{"theme":"alt","text":"View on Github","link":"https://github.com/rafaqz/DimensionalData.jl"}]},"features":[{"title":"Intelligent indexing","details":"DimensionalData.jl provides no-cost abstractions for named indexing, and fast index lookups.","link":"/selectors"},{"title":"Powerful Array manipulation","details":"broadcast, reduce, permutedims, and groupby operations.","link":"/groupby"},{"title":"Seamlessly integrated with the julia ecosystem","details":"Works with most methods that accept a regular Array. If a method accepts numeric indices or dims=X in base, you should be able to use DimensionalData.jl dims."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":null}'),i={name:"index.md"};function n(s,o,r,l,d,m){return a(),t("div")}const u=e(i,[["render",n]]);export{p as __pageData,u as default}; diff --git a/dev/assets/index.md.CRTGE4WO.lean.js b/dev/assets/index.md.uhypFJup.lean.js similarity index 95% rename from dev/assets/index.md.CRTGE4WO.lean.js rename to dev/assets/index.md.uhypFJup.lean.js index d3cb1fb14..6f73cca4d 100644 --- a/dev/assets/index.md.CRTGE4WO.lean.js +++ b/dev/assets/index.md.uhypFJup.lean.js @@ -1 +1 @@ -import{_ as e,c as t,o as a}from"./chunks/framework.C6EFuEL4.js";const p=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"DimensionalData.jl","text":"Julia datasets with named dimensions","tagline":"High performance named indexing for Julia","image":{"src":"/logo.png"},"actions":[{"theme":"brand","text":"Getting Started","link":"/basics"},{"theme":"alt","text":"API reference","link":"/api/reference"},{"theme":"alt","text":"View on Github","link":"https://github.com/rafaqz/DimensionalData.jl"}]},"features":[{"title":"Intelligent indexing","details":"DimensionalData.jl provides no-cost abstractions for named indexing, and fast index lookups.","link":"/selectors"},{"title":"Powerful Array manipulation","details":"broadcast, reduce, permutedims, and groupby operations.","link":"/groupby"},{"title":"Seamlessly integrated with the julia ecosystem","details":"Works with most methods that accept a regular Array. If a method accepts numeric indices or dims=X in base, you should be able to use DimensionalData.jl dims."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":null}'),i={name:"index.md"};function n(s,o,r,l,d,m){return a(),t("div")}const u=e(i,[["render",n]]);export{p as __pageData,u as default}; +import{_ as e,c as t,o as a}from"./chunks/framework.B8l2DGq3.js";const p=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"DimensionalData.jl","text":"Julia datasets with named dimensions","tagline":"High performance named indexing for Julia","image":{"src":"/logo.png"},"actions":[{"theme":"brand","text":"Getting Started","link":"/basics"},{"theme":"alt","text":"API reference","link":"/api/reference"},{"theme":"alt","text":"View on Github","link":"https://github.com/rafaqz/DimensionalData.jl"}]},"features":[{"title":"Intelligent indexing","details":"DimensionalData.jl provides no-cost abstractions for named indexing, and fast index lookups.","link":"/selectors"},{"title":"Powerful Array manipulation","details":"broadcast, reduce, permutedims, and groupby operations.","link":"/groupby"},{"title":"Seamlessly integrated with the julia ecosystem","details":"Works with most methods that accept a regular Array. If a method accepts numeric indices or dims=X in base, you should be able to use DimensionalData.jl dims."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":null}'),i={name:"index.md"};function n(s,o,r,l,d,m){return a(),t("div")}const u=e(i,[["render",n]]);export{p as __pageData,u as default}; diff --git a/dev/assets/integrations.md.B4DeywJ6.js b/dev/assets/integrations.md.dJo1qUjg.js similarity index 98% rename from dev/assets/integrations.md.B4DeywJ6.js rename to dev/assets/integrations.md.dJo1qUjg.js index 6f60dccc5..810aa2cb8 100644 --- a/dev/assets/integrations.md.B4DeywJ6.js +++ b/dev/assets/integrations.md.dJo1qUjg.js @@ -1 +1 @@ -import{_ as e,c as r,a4 as t,o}from"./chunks/framework.C6EFuEL4.js";const p=JSON.parse('{"title":"Integrations","description":"","frontmatter":{},"headers":[],"relativePath":"integrations.md","filePath":"integrations.md","lastUpdated":null}'),s={name:"integrations.md"};function i(l,a,n,d,c,h){return o(),r("div",null,a[0]||(a[0]=[t('<h1 id="integrations" tabindex="-1">Integrations <a class="header-anchor" href="#integrations" aria-label="Permalink to "Integrations""></a></h1><h2 id="rasters-jl" tabindex="-1">Rasters.jl <a class="header-anchor" href="#rasters-jl" aria-label="Permalink to "Rasters.jl""></a></h2><p><a href="https://rafaqz.github.io/Rasters.jl/stable" target="_blank" rel="noreferrer">Rasters.jl</a> extends DD for geospatial data manipulation, providing file load/save for a wide range of raster data sources and common GIS tools like polygon rasterization and masking. <code>Raster</code> types are aware of <code>crs</code> and their <code>missingval</code> (which is often not <code>missing</code> for performance and storage reasons).</p><p>Rasters.jl is also the reason DimensionalData.jl exists at all! But it always made sense to separate out spatial indexing from GIS tools and dependencies.</p><p>A <code>Raster</code> is a <code>AbstractDimArray</code>, a <code>RasterStack</code> is a <code>AbstractDimStack</code>, and <code>Projected</code> and <code>Mapped</code> are <code>AbstractSample</code> lookups.</p><h2 id="yaxarrays-jl" tabindex="-1">YAXArrays.jl <a class="header-anchor" href="#yaxarrays-jl" aria-label="Permalink to "YAXArrays.jl""></a></h2><p><a href="https://juliadatacubes.github.io/YAXArrays.jl/dev/" target="_blank" rel="noreferrer">YAXArrays.jl</a> is another spatial data package aimed more at (very) large datasets. It's functionality is slowly converging with Rasters.jl (both wrapping DiskArray.jl/DimensionalData.jl) and we work closely with the developers.</p><p><code>YAXArray</code> is a <code>AbstractDimArray</code> and inherits its behaviours.</p><h2 id="climatebase-jl" tabindex="-1">ClimateBase.jl <a class="header-anchor" href="#climatebase-jl" aria-label="Permalink to "ClimateBase.jl""></a></h2><p><a href="https://juliaclimate.github.io/ClimateBase.jl/dev/" target="_blank" rel="noreferrer">ClimateBase.jl</a> Extends DD with methods for analysis of climate data.</p><h2 id="arviz-jl" tabindex="-1">ArviZ.jl <a class="header-anchor" href="#arviz-jl" aria-label="Permalink to "ArviZ.jl""></a></h2><p><a href="https://arviz-devs.github.io/ArviZ.jl/dev/" target="_blank" rel="noreferrer">ArviZ.jl</a> Is a Julia package for exploratory analysis of Bayesian models.</p><p>An <code>ArviZ.Dataset</code> is an <code>AbstractDimStack</code>!</p><h2 id="jump-jl" tabindex="-1">JuMP.jl <a class="header-anchor" href="#jump-jl" aria-label="Permalink to "JuMP.jl""></a></h2><p><a href="https://jump.dev/" target="_blank" rel="noreferrer">JuMP.jl</a> is a powerful optimization DSL. It defines its own named array types but now accepts any <code>AbstractDimArray</code> too, through a package extension.</p><h2 id="cryogrid-jl" tabindex="-1">CryoGrid.jl <a class="header-anchor" href="#cryogrid-jl" aria-label="Permalink to "CryoGrid.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/CryoGrid" target="_blank" rel="noreferrer">CryoGrid.jl</a> A Julia implementation of the CryoGrid permafrost model.</p><p><code>CryoGridOutput</code> uses <code>DimArray</code> for views into output data.</p><h2 id="dynamicgrids-jl" tabindex="-1">DynamicGrids.jl <a class="header-anchor" href="#dynamicgrids-jl" aria-label="Permalink to "DynamicGrids.jl""></a></h2><p><a href="https://github.com/cesaraustralia/DynamicGrids.jl" target="_blank" rel="noreferrer">DynamicGrids.jl</a> is a spatial simulation engine, for cellular automata and spatial process models.</p><p>All DynamicGrids.jl <code>Outputs</code> are <code><: AbstractDimArray</code>, and <code>AbstractDimArray</code> are used for auxiliary data to allow temporal synchronisation during simulations. Notably, this all works on GPUs!</p><h2 id="astroimages-jl" tabindex="-1">AstroImages.jl <a class="header-anchor" href="#astroimages-jl" aria-label="Permalink to "AstroImages.jl""></a></h2><p><a href="http://juliaastro.org/dev/modules/AstroImages" target="_blank" rel="noreferrer">AstroImages.jl</a> Provides tools to load and visualise astronomical images. <code>AstroImage</code> is <code><: AbstractDimArray</code>.</p><h2 id="timeseriestools-jl" tabindex="-1">TimeseriesTools.jl <a class="header-anchor" href="#timeseriestools-jl" aria-label="Permalink to "TimeseriesTools.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/TimeseriesTools" target="_blank" rel="noreferrer">TimeseriesTools.jl</a> Uses <code>DimArray</code> for time-series data.</p>',25)]))}const u=e(s,[["render",i]]);export{p as __pageData,u as default}; +import{_ as e,c as r,a4 as t,o}from"./chunks/framework.B8l2DGq3.js";const p=JSON.parse('{"title":"Integrations","description":"","frontmatter":{},"headers":[],"relativePath":"integrations.md","filePath":"integrations.md","lastUpdated":null}'),s={name:"integrations.md"};function i(l,a,n,d,c,h){return o(),r("div",null,a[0]||(a[0]=[t('<h1 id="integrations" tabindex="-1">Integrations <a class="header-anchor" href="#integrations" aria-label="Permalink to "Integrations""></a></h1><h2 id="rasters-jl" tabindex="-1">Rasters.jl <a class="header-anchor" href="#rasters-jl" aria-label="Permalink to "Rasters.jl""></a></h2><p><a href="https://rafaqz.github.io/Rasters.jl/stable" target="_blank" rel="noreferrer">Rasters.jl</a> extends DD for geospatial data manipulation, providing file load/save for a wide range of raster data sources and common GIS tools like polygon rasterization and masking. <code>Raster</code> types are aware of <code>crs</code> and their <code>missingval</code> (which is often not <code>missing</code> for performance and storage reasons).</p><p>Rasters.jl is also the reason DimensionalData.jl exists at all! But it always made sense to separate out spatial indexing from GIS tools and dependencies.</p><p>A <code>Raster</code> is a <code>AbstractDimArray</code>, a <code>RasterStack</code> is a <code>AbstractDimStack</code>, and <code>Projected</code> and <code>Mapped</code> are <code>AbstractSample</code> lookups.</p><h2 id="yaxarrays-jl" tabindex="-1">YAXArrays.jl <a class="header-anchor" href="#yaxarrays-jl" aria-label="Permalink to "YAXArrays.jl""></a></h2><p><a href="https://juliadatacubes.github.io/YAXArrays.jl/dev/" target="_blank" rel="noreferrer">YAXArrays.jl</a> is another spatial data package aimed more at (very) large datasets. It's functionality is slowly converging with Rasters.jl (both wrapping DiskArray.jl/DimensionalData.jl) and we work closely with the developers.</p><p><code>YAXArray</code> is a <code>AbstractDimArray</code> and inherits its behaviours.</p><h2 id="climatebase-jl" tabindex="-1">ClimateBase.jl <a class="header-anchor" href="#climatebase-jl" aria-label="Permalink to "ClimateBase.jl""></a></h2><p><a href="https://juliaclimate.github.io/ClimateBase.jl/dev/" target="_blank" rel="noreferrer">ClimateBase.jl</a> Extends DD with methods for analysis of climate data.</p><h2 id="arviz-jl" tabindex="-1">ArviZ.jl <a class="header-anchor" href="#arviz-jl" aria-label="Permalink to "ArviZ.jl""></a></h2><p><a href="https://arviz-devs.github.io/ArviZ.jl/dev/" target="_blank" rel="noreferrer">ArviZ.jl</a> Is a Julia package for exploratory analysis of Bayesian models.</p><p>An <code>ArviZ.Dataset</code> is an <code>AbstractDimStack</code>!</p><h2 id="jump-jl" tabindex="-1">JuMP.jl <a class="header-anchor" href="#jump-jl" aria-label="Permalink to "JuMP.jl""></a></h2><p><a href="https://jump.dev/" target="_blank" rel="noreferrer">JuMP.jl</a> is a powerful optimization DSL. It defines its own named array types but now accepts any <code>AbstractDimArray</code> too, through a package extension.</p><h2 id="cryogrid-jl" tabindex="-1">CryoGrid.jl <a class="header-anchor" href="#cryogrid-jl" aria-label="Permalink to "CryoGrid.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/CryoGrid" target="_blank" rel="noreferrer">CryoGrid.jl</a> A Julia implementation of the CryoGrid permafrost model.</p><p><code>CryoGridOutput</code> uses <code>DimArray</code> for views into output data.</p><h2 id="dynamicgrids-jl" tabindex="-1">DynamicGrids.jl <a class="header-anchor" href="#dynamicgrids-jl" aria-label="Permalink to "DynamicGrids.jl""></a></h2><p><a href="https://github.com/cesaraustralia/DynamicGrids.jl" target="_blank" rel="noreferrer">DynamicGrids.jl</a> is a spatial simulation engine, for cellular automata and spatial process models.</p><p>All DynamicGrids.jl <code>Outputs</code> are <code><: AbstractDimArray</code>, and <code>AbstractDimArray</code> are used for auxiliary data to allow temporal synchronisation during simulations. Notably, this all works on GPUs!</p><h2 id="astroimages-jl" tabindex="-1">AstroImages.jl <a class="header-anchor" href="#astroimages-jl" aria-label="Permalink to "AstroImages.jl""></a></h2><p><a href="http://juliaastro.org/dev/modules/AstroImages" target="_blank" rel="noreferrer">AstroImages.jl</a> Provides tools to load and visualise astronomical images. <code>AstroImage</code> is <code><: AbstractDimArray</code>.</p><h2 id="timeseriestools-jl" tabindex="-1">TimeseriesTools.jl <a class="header-anchor" href="#timeseriestools-jl" aria-label="Permalink to "TimeseriesTools.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/TimeseriesTools" target="_blank" rel="noreferrer">TimeseriesTools.jl</a> Uses <code>DimArray</code> for time-series data.</p>',25)]))}const u=e(s,[["render",i]]);export{p as __pageData,u as default}; diff --git a/dev/assets/integrations.md.B4DeywJ6.lean.js b/dev/assets/integrations.md.dJo1qUjg.lean.js similarity index 98% rename from dev/assets/integrations.md.B4DeywJ6.lean.js rename to dev/assets/integrations.md.dJo1qUjg.lean.js index 6f60dccc5..810aa2cb8 100644 --- a/dev/assets/integrations.md.B4DeywJ6.lean.js +++ b/dev/assets/integrations.md.dJo1qUjg.lean.js @@ -1 +1 @@ -import{_ as e,c as r,a4 as t,o}from"./chunks/framework.C6EFuEL4.js";const p=JSON.parse('{"title":"Integrations","description":"","frontmatter":{},"headers":[],"relativePath":"integrations.md","filePath":"integrations.md","lastUpdated":null}'),s={name:"integrations.md"};function i(l,a,n,d,c,h){return o(),r("div",null,a[0]||(a[0]=[t('<h1 id="integrations" tabindex="-1">Integrations <a class="header-anchor" href="#integrations" aria-label="Permalink to "Integrations""></a></h1><h2 id="rasters-jl" tabindex="-1">Rasters.jl <a class="header-anchor" href="#rasters-jl" aria-label="Permalink to "Rasters.jl""></a></h2><p><a href="https://rafaqz.github.io/Rasters.jl/stable" target="_blank" rel="noreferrer">Rasters.jl</a> extends DD for geospatial data manipulation, providing file load/save for a wide range of raster data sources and common GIS tools like polygon rasterization and masking. <code>Raster</code> types are aware of <code>crs</code> and their <code>missingval</code> (which is often not <code>missing</code> for performance and storage reasons).</p><p>Rasters.jl is also the reason DimensionalData.jl exists at all! But it always made sense to separate out spatial indexing from GIS tools and dependencies.</p><p>A <code>Raster</code> is a <code>AbstractDimArray</code>, a <code>RasterStack</code> is a <code>AbstractDimStack</code>, and <code>Projected</code> and <code>Mapped</code> are <code>AbstractSample</code> lookups.</p><h2 id="yaxarrays-jl" tabindex="-1">YAXArrays.jl <a class="header-anchor" href="#yaxarrays-jl" aria-label="Permalink to "YAXArrays.jl""></a></h2><p><a href="https://juliadatacubes.github.io/YAXArrays.jl/dev/" target="_blank" rel="noreferrer">YAXArrays.jl</a> is another spatial data package aimed more at (very) large datasets. It's functionality is slowly converging with Rasters.jl (both wrapping DiskArray.jl/DimensionalData.jl) and we work closely with the developers.</p><p><code>YAXArray</code> is a <code>AbstractDimArray</code> and inherits its behaviours.</p><h2 id="climatebase-jl" tabindex="-1">ClimateBase.jl <a class="header-anchor" href="#climatebase-jl" aria-label="Permalink to "ClimateBase.jl""></a></h2><p><a href="https://juliaclimate.github.io/ClimateBase.jl/dev/" target="_blank" rel="noreferrer">ClimateBase.jl</a> Extends DD with methods for analysis of climate data.</p><h2 id="arviz-jl" tabindex="-1">ArviZ.jl <a class="header-anchor" href="#arviz-jl" aria-label="Permalink to "ArviZ.jl""></a></h2><p><a href="https://arviz-devs.github.io/ArviZ.jl/dev/" target="_blank" rel="noreferrer">ArviZ.jl</a> Is a Julia package for exploratory analysis of Bayesian models.</p><p>An <code>ArviZ.Dataset</code> is an <code>AbstractDimStack</code>!</p><h2 id="jump-jl" tabindex="-1">JuMP.jl <a class="header-anchor" href="#jump-jl" aria-label="Permalink to "JuMP.jl""></a></h2><p><a href="https://jump.dev/" target="_blank" rel="noreferrer">JuMP.jl</a> is a powerful optimization DSL. It defines its own named array types but now accepts any <code>AbstractDimArray</code> too, through a package extension.</p><h2 id="cryogrid-jl" tabindex="-1">CryoGrid.jl <a class="header-anchor" href="#cryogrid-jl" aria-label="Permalink to "CryoGrid.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/CryoGrid" target="_blank" rel="noreferrer">CryoGrid.jl</a> A Julia implementation of the CryoGrid permafrost model.</p><p><code>CryoGridOutput</code> uses <code>DimArray</code> for views into output data.</p><h2 id="dynamicgrids-jl" tabindex="-1">DynamicGrids.jl <a class="header-anchor" href="#dynamicgrids-jl" aria-label="Permalink to "DynamicGrids.jl""></a></h2><p><a href="https://github.com/cesaraustralia/DynamicGrids.jl" target="_blank" rel="noreferrer">DynamicGrids.jl</a> is a spatial simulation engine, for cellular automata and spatial process models.</p><p>All DynamicGrids.jl <code>Outputs</code> are <code><: AbstractDimArray</code>, and <code>AbstractDimArray</code> are used for auxiliary data to allow temporal synchronisation during simulations. Notably, this all works on GPUs!</p><h2 id="astroimages-jl" tabindex="-1">AstroImages.jl <a class="header-anchor" href="#astroimages-jl" aria-label="Permalink to "AstroImages.jl""></a></h2><p><a href="http://juliaastro.org/dev/modules/AstroImages" target="_blank" rel="noreferrer">AstroImages.jl</a> Provides tools to load and visualise astronomical images. <code>AstroImage</code> is <code><: AbstractDimArray</code>.</p><h2 id="timeseriestools-jl" tabindex="-1">TimeseriesTools.jl <a class="header-anchor" href="#timeseriestools-jl" aria-label="Permalink to "TimeseriesTools.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/TimeseriesTools" target="_blank" rel="noreferrer">TimeseriesTools.jl</a> Uses <code>DimArray</code> for time-series data.</p>',25)]))}const u=e(s,[["render",i]]);export{p as __pageData,u as default}; +import{_ as e,c as r,a4 as t,o}from"./chunks/framework.B8l2DGq3.js";const p=JSON.parse('{"title":"Integrations","description":"","frontmatter":{},"headers":[],"relativePath":"integrations.md","filePath":"integrations.md","lastUpdated":null}'),s={name:"integrations.md"};function i(l,a,n,d,c,h){return o(),r("div",null,a[0]||(a[0]=[t('<h1 id="integrations" tabindex="-1">Integrations <a class="header-anchor" href="#integrations" aria-label="Permalink to "Integrations""></a></h1><h2 id="rasters-jl" tabindex="-1">Rasters.jl <a class="header-anchor" href="#rasters-jl" aria-label="Permalink to "Rasters.jl""></a></h2><p><a href="https://rafaqz.github.io/Rasters.jl/stable" target="_blank" rel="noreferrer">Rasters.jl</a> extends DD for geospatial data manipulation, providing file load/save for a wide range of raster data sources and common GIS tools like polygon rasterization and masking. <code>Raster</code> types are aware of <code>crs</code> and their <code>missingval</code> (which is often not <code>missing</code> for performance and storage reasons).</p><p>Rasters.jl is also the reason DimensionalData.jl exists at all! But it always made sense to separate out spatial indexing from GIS tools and dependencies.</p><p>A <code>Raster</code> is a <code>AbstractDimArray</code>, a <code>RasterStack</code> is a <code>AbstractDimStack</code>, and <code>Projected</code> and <code>Mapped</code> are <code>AbstractSample</code> lookups.</p><h2 id="yaxarrays-jl" tabindex="-1">YAXArrays.jl <a class="header-anchor" href="#yaxarrays-jl" aria-label="Permalink to "YAXArrays.jl""></a></h2><p><a href="https://juliadatacubes.github.io/YAXArrays.jl/dev/" target="_blank" rel="noreferrer">YAXArrays.jl</a> is another spatial data package aimed more at (very) large datasets. It's functionality is slowly converging with Rasters.jl (both wrapping DiskArray.jl/DimensionalData.jl) and we work closely with the developers.</p><p><code>YAXArray</code> is a <code>AbstractDimArray</code> and inherits its behaviours.</p><h2 id="climatebase-jl" tabindex="-1">ClimateBase.jl <a class="header-anchor" href="#climatebase-jl" aria-label="Permalink to "ClimateBase.jl""></a></h2><p><a href="https://juliaclimate.github.io/ClimateBase.jl/dev/" target="_blank" rel="noreferrer">ClimateBase.jl</a> Extends DD with methods for analysis of climate data.</p><h2 id="arviz-jl" tabindex="-1">ArviZ.jl <a class="header-anchor" href="#arviz-jl" aria-label="Permalink to "ArviZ.jl""></a></h2><p><a href="https://arviz-devs.github.io/ArviZ.jl/dev/" target="_blank" rel="noreferrer">ArviZ.jl</a> Is a Julia package for exploratory analysis of Bayesian models.</p><p>An <code>ArviZ.Dataset</code> is an <code>AbstractDimStack</code>!</p><h2 id="jump-jl" tabindex="-1">JuMP.jl <a class="header-anchor" href="#jump-jl" aria-label="Permalink to "JuMP.jl""></a></h2><p><a href="https://jump.dev/" target="_blank" rel="noreferrer">JuMP.jl</a> is a powerful optimization DSL. It defines its own named array types but now accepts any <code>AbstractDimArray</code> too, through a package extension.</p><h2 id="cryogrid-jl" tabindex="-1">CryoGrid.jl <a class="header-anchor" href="#cryogrid-jl" aria-label="Permalink to "CryoGrid.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/CryoGrid" target="_blank" rel="noreferrer">CryoGrid.jl</a> A Julia implementation of the CryoGrid permafrost model.</p><p><code>CryoGridOutput</code> uses <code>DimArray</code> for views into output data.</p><h2 id="dynamicgrids-jl" tabindex="-1">DynamicGrids.jl <a class="header-anchor" href="#dynamicgrids-jl" aria-label="Permalink to "DynamicGrids.jl""></a></h2><p><a href="https://github.com/cesaraustralia/DynamicGrids.jl" target="_blank" rel="noreferrer">DynamicGrids.jl</a> is a spatial simulation engine, for cellular automata and spatial process models.</p><p>All DynamicGrids.jl <code>Outputs</code> are <code><: AbstractDimArray</code>, and <code>AbstractDimArray</code> are used for auxiliary data to allow temporal synchronisation during simulations. Notably, this all works on GPUs!</p><h2 id="astroimages-jl" tabindex="-1">AstroImages.jl <a class="header-anchor" href="#astroimages-jl" aria-label="Permalink to "AstroImages.jl""></a></h2><p><a href="http://juliaastro.org/dev/modules/AstroImages" target="_blank" rel="noreferrer">AstroImages.jl</a> Provides tools to load and visualise astronomical images. <code>AstroImage</code> is <code><: AbstractDimArray</code>.</p><h2 id="timeseriestools-jl" tabindex="-1">TimeseriesTools.jl <a class="header-anchor" href="#timeseriestools-jl" aria-label="Permalink to "TimeseriesTools.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/TimeseriesTools" target="_blank" rel="noreferrer">TimeseriesTools.jl</a> Uses <code>DimArray</code> for time-series data.</p>',25)]))}const u=e(s,[["render",i]]);export{p as __pageData,u as default}; diff --git a/dev/assets/object_modification.md.BpAIEIxF.js b/dev/assets/object_modification.md.-cjSpi5I.js similarity index 99% rename from dev/assets/object_modification.md.BpAIEIxF.js rename to dev/assets/object_modification.md.-cjSpi5I.js index 9e0cc4abc..1c42af456 100644 --- a/dev/assets/object_modification.md.BpAIEIxF.js +++ b/dev/assets/object_modification.md.-cjSpi5I.js @@ -1,4 +1,4 @@ -import{_ as d,c as p,a4 as k,G as e,w as l,j as i,a as s,B as n,o as r}from"./chunks/framework.C6EFuEL4.js";const m=JSON.parse('{"title":"Modifying objects","description":"","frontmatter":{},"headers":[],"relativePath":"object_modification.md","filePath":"object_modification.md","lastUpdated":null}'),g={name:"object_modification.md"};function y(o,a,c,f,u,E){const h=n("PluginTabsTab"),t=n("PluginTabs");return r(),p("div",null,[a[12]||(a[12]=k('<h1 id="Modifying-objects" tabindex="-1">Modifying objects <a class="header-anchor" href="#Modifying-objects" aria-label="Permalink to "Modifying objects {#Modifying-objects}""></a></h1><p>DimensionalData.jl objects are all <code>struct</code> rather than <code>mutable struct</code>. The only things you can modify in-place are the values of the contained arrays or metadata <code>Dict</code>s if they exist.</p><p>Everything else must be <em>rebuilt</em> and assigned to a variable.</p><h2 id="modify" tabindex="-1"><code>modify</code> <a class="header-anchor" href="#modify" aria-label="Permalink to "`modify` {#modify}""></a></h2><p>Modify the inner arrays of a <code>AbstractDimArray</code> or <code>AbstractDimStack</code>, with <a href="/DimensionalData.jl/dev/object_modification#modify"><code>modify</code></a>. This can be useful to e.g. replace all arrays with <code>CuArray</code> moving the data to the GPU, <code>collect</code> all inner arrays to <code>Array</code> without losing the outer <code>DimArray</code> wrappers, and similar things.</p>',5)),e(t,null,{default:l(()=>[e(h,{label:"array"},{default:l(()=>a[0]||(a[0]=[i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}}," using"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData")]),s(` +import{_ as d,c as p,a4 as k,G as e,w as l,j as i,a as s,B as n,o as r}from"./chunks/framework.B8l2DGq3.js";const m=JSON.parse('{"title":"Modifying objects","description":"","frontmatter":{},"headers":[],"relativePath":"object_modification.md","filePath":"object_modification.md","lastUpdated":null}'),g={name:"object_modification.md"};function y(o,a,c,f,u,E){const h=n("PluginTabsTab"),t=n("PluginTabs");return r(),p("div",null,[a[12]||(a[12]=k('<h1 id="Modifying-objects" tabindex="-1">Modifying objects <a class="header-anchor" href="#Modifying-objects" aria-label="Permalink to "Modifying objects {#Modifying-objects}""></a></h1><p>DimensionalData.jl objects are all <code>struct</code> rather than <code>mutable struct</code>. The only things you can modify in-place are the values of the contained arrays or metadata <code>Dict</code>s if they exist.</p><p>Everything else must be <em>rebuilt</em> and assigned to a variable.</p><h2 id="modify" tabindex="-1"><code>modify</code> <a class="header-anchor" href="#modify" aria-label="Permalink to "`modify` {#modify}""></a></h2><p>Modify the inner arrays of a <code>AbstractDimArray</code> or <code>AbstractDimStack</code>, with <a href="/DimensionalData.jl/dev/object_modification#modify"><code>modify</code></a>. This can be useful to e.g. replace all arrays with <code>CuArray</code> moving the data to the GPU, <code>collect</code> all inner arrays to <code>Array</code> without losing the outer <code>DimArray</code> wrappers, and similar things.</p>',5)),e(t,null,{default:l(()=>[e(h,{label:"array"},{default:l(()=>a[0]||(a[0]=[i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}}," using"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData")]),s(` `),i("span",{class:"line"}),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," A "),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},"="),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}}," falses"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"X"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"3"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"), "),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"Y"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"5"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"))")])])])],-1),i("div",{class:"language- vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"}),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}},"╭──────────────────────╮")]),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}},"│ "),i("span",{style:{"--shiki-light":"#ff875f","--shiki-dark":"#ff875f"}},"3"),i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}},"×"),i("span",{style:{"--shiki-light":"#0087d7","--shiki-dark":"#0087d7"}},"5"),i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}}," DimArray{Bool,2}"),i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}}," │")]),s(` diff --git a/dev/assets/object_modification.md.BpAIEIxF.lean.js b/dev/assets/object_modification.md.-cjSpi5I.lean.js similarity index 99% rename from dev/assets/object_modification.md.BpAIEIxF.lean.js rename to dev/assets/object_modification.md.-cjSpi5I.lean.js index 9e0cc4abc..1c42af456 100644 --- a/dev/assets/object_modification.md.BpAIEIxF.lean.js +++ b/dev/assets/object_modification.md.-cjSpi5I.lean.js @@ -1,4 +1,4 @@ -import{_ as d,c as p,a4 as k,G as e,w as l,j as i,a as s,B as n,o as r}from"./chunks/framework.C6EFuEL4.js";const m=JSON.parse('{"title":"Modifying objects","description":"","frontmatter":{},"headers":[],"relativePath":"object_modification.md","filePath":"object_modification.md","lastUpdated":null}'),g={name:"object_modification.md"};function y(o,a,c,f,u,E){const h=n("PluginTabsTab"),t=n("PluginTabs");return r(),p("div",null,[a[12]||(a[12]=k('<h1 id="Modifying-objects" tabindex="-1">Modifying objects <a class="header-anchor" href="#Modifying-objects" aria-label="Permalink to "Modifying objects {#Modifying-objects}""></a></h1><p>DimensionalData.jl objects are all <code>struct</code> rather than <code>mutable struct</code>. The only things you can modify in-place are the values of the contained arrays or metadata <code>Dict</code>s if they exist.</p><p>Everything else must be <em>rebuilt</em> and assigned to a variable.</p><h2 id="modify" tabindex="-1"><code>modify</code> <a class="header-anchor" href="#modify" aria-label="Permalink to "`modify` {#modify}""></a></h2><p>Modify the inner arrays of a <code>AbstractDimArray</code> or <code>AbstractDimStack</code>, with <a href="/DimensionalData.jl/dev/object_modification#modify"><code>modify</code></a>. This can be useful to e.g. replace all arrays with <code>CuArray</code> moving the data to the GPU, <code>collect</code> all inner arrays to <code>Array</code> without losing the outer <code>DimArray</code> wrappers, and similar things.</p>',5)),e(t,null,{default:l(()=>[e(h,{label:"array"},{default:l(()=>a[0]||(a[0]=[i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}}," using"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData")]),s(` +import{_ as d,c as p,a4 as k,G as e,w as l,j as i,a as s,B as n,o as r}from"./chunks/framework.B8l2DGq3.js";const m=JSON.parse('{"title":"Modifying objects","description":"","frontmatter":{},"headers":[],"relativePath":"object_modification.md","filePath":"object_modification.md","lastUpdated":null}'),g={name:"object_modification.md"};function y(o,a,c,f,u,E){const h=n("PluginTabsTab"),t=n("PluginTabs");return r(),p("div",null,[a[12]||(a[12]=k('<h1 id="Modifying-objects" tabindex="-1">Modifying objects <a class="header-anchor" href="#Modifying-objects" aria-label="Permalink to "Modifying objects {#Modifying-objects}""></a></h1><p>DimensionalData.jl objects are all <code>struct</code> rather than <code>mutable struct</code>. The only things you can modify in-place are the values of the contained arrays or metadata <code>Dict</code>s if they exist.</p><p>Everything else must be <em>rebuilt</em> and assigned to a variable.</p><h2 id="modify" tabindex="-1"><code>modify</code> <a class="header-anchor" href="#modify" aria-label="Permalink to "`modify` {#modify}""></a></h2><p>Modify the inner arrays of a <code>AbstractDimArray</code> or <code>AbstractDimStack</code>, with <a href="/DimensionalData.jl/dev/object_modification#modify"><code>modify</code></a>. This can be useful to e.g. replace all arrays with <code>CuArray</code> moving the data to the GPU, <code>collect</code> all inner arrays to <code>Array</code> without losing the outer <code>DimArray</code> wrappers, and similar things.</p>',5)),e(t,null,{default:l(()=>[e(h,{label:"array"},{default:l(()=>a[0]||(a[0]=[i("div",{class:"language-julia vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"},"julia"),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}}," using"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," DimensionalData")]),s(` `),i("span",{class:"line"}),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"julia"),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},">"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}}," A "),i("span",{style:{"--shiki-light":"#D73A49","--shiki-dark":"#F97583"}},"="),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}}," falses"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"X"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"3"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"), "),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"Y"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"("),i("span",{style:{"--shiki-light":"#005CC5","--shiki-dark":"#79B8FF"}},"5"),i("span",{style:{"--shiki-light":"#24292E","--shiki-dark":"#E1E4E8"}},"))")])])])],-1),i("div",{class:"language- vp-adaptive-theme"},[i("button",{title:"Copy Code",class:"copy"}),i("span",{class:"lang"}),i("pre",{class:"shiki shiki-themes github-light github-dark vp-code",tabindex:"0"},[i("code",null,[i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}},"╭──────────────────────╮")]),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}},"│ "),i("span",{style:{"--shiki-light":"#ff875f","--shiki-dark":"#ff875f"}},"3"),i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}},"×"),i("span",{style:{"--shiki-light":"#0087d7","--shiki-dark":"#0087d7"}},"5"),i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}}," DimArray{Bool,2}"),i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}}," │")]),s(` diff --git a/dev/assets/plots.md.2aFJv8Qw.js b/dev/assets/plots.md.kpY9w3i0.js similarity index 98% rename from dev/assets/plots.md.2aFJv8Qw.js rename to dev/assets/plots.md.kpY9w3i0.js index f387d9dc6..b8e46c42a 100644 --- a/dev/assets/plots.md.2aFJv8Qw.js +++ b/dev/assets/plots.md.kpY9w3i0.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a4 as t,o as l}from"./chunks/framework.C6EFuEL4.js";const e="/DimensionalData.jl/dev/assets/jmmhsxu.iiL4UBgm.png",h="/DimensionalData.jl/dev/assets/ybmzrjc.BIa4VhRY.png",n="/DimensionalData.jl/dev/assets/veptoqy.CZKDtjAN.png",p="/DimensionalData.jl/dev/assets/izkfogt.nOjqWh1g.png",k="/DimensionalData.jl/dev/assets/yhxwiti.CBNkYhiq.png",r="/DimensionalData.jl/dev/assets/rcywifo.NnnTWDGw.png",m=JSON.parse('{"title":"Plots.jl","description":"","frontmatter":{},"headers":[],"relativePath":"plots.md","filePath":"plots.md","lastUpdated":null}'),d={name:"plots.md"};function o(E,s,g,c,y,F){return l(),a("div",null,s[0]||(s[0]=[t(`<h1 id="plots-jl" tabindex="-1">Plots.jl <a class="header-anchor" href="#plots-jl" aria-label="Permalink to "Plots.jl""></a></h1><p>Plots.jl and Makie.jl functions mostly work out of the box on <code>AbstractDimArray</code>, although not with the same results - they choose to follow each packages default behaviour as much as possible.</p><p>This will plot a line plot with 'a', 'b' and 'c' in the legend, and values 1-10 on the labelled X axis:</p><p>Plots.jl support is deprecated, as development is moving to Makie.jl</p><h1 id="makie-jl" tabindex="-1">Makie.jl <a class="header-anchor" href="#makie-jl" aria-label="Permalink to "Makie.jl""></a></h1><p>Makie.jl functions also mostly work with <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> and will <code>permute</code> and <a href="/DimensionalData.jl/dev/object_modification#reorder"><code>reorder</code></a> axes into the right places, especially if <code>X</code>/<code>Y</code>/<code>Z</code>/<code>Ti</code> dimensions are used.</p><p>In Makie a <code>DimMatrix</code> will plot as a heatmap by default, but it will have labels and axes in the right places:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CairoMakie</span></span> +import{_ as i,c as a,a4 as t,o as l}from"./chunks/framework.B8l2DGq3.js";const e="/DimensionalData.jl/dev/assets/jmmhsxu.iiL4UBgm.png",h="/DimensionalData.jl/dev/assets/ybmzrjc.BIa4VhRY.png",n="/DimensionalData.jl/dev/assets/veptoqy.CZKDtjAN.png",p="/DimensionalData.jl/dev/assets/izkfogt.nOjqWh1g.png",k="/DimensionalData.jl/dev/assets/yhxwiti.CBNkYhiq.png",r="/DimensionalData.jl/dev/assets/rcywifo.NnnTWDGw.png",m=JSON.parse('{"title":"Plots.jl","description":"","frontmatter":{},"headers":[],"relativePath":"plots.md","filePath":"plots.md","lastUpdated":null}'),d={name:"plots.md"};function o(E,s,g,c,y,F){return l(),a("div",null,s[0]||(s[0]=[t(`<h1 id="plots-jl" tabindex="-1">Plots.jl <a class="header-anchor" href="#plots-jl" aria-label="Permalink to "Plots.jl""></a></h1><p>Plots.jl and Makie.jl functions mostly work out of the box on <code>AbstractDimArray</code>, although not with the same results - they choose to follow each packages default behaviour as much as possible.</p><p>This will plot a line plot with 'a', 'b' and 'c' in the legend, and values 1-10 on the labelled X axis:</p><p>Plots.jl support is deprecated, as development is moving to Makie.jl</p><h1 id="makie-jl" tabindex="-1">Makie.jl <a class="header-anchor" href="#makie-jl" aria-label="Permalink to "Makie.jl""></a></h1><p>Makie.jl functions also mostly work with <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> and will <code>permute</code> and <a href="/DimensionalData.jl/dev/object_modification#reorder"><code>reorder</code></a> axes into the right places, especially if <code>X</code>/<code>Y</code>/<code>Z</code>/<code>Ti</code> dimensions are used.</p><p>In Makie a <code>DimMatrix</code> will plot as a heatmap by default, but it will have labels and axes in the right places:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CairoMakie</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">plot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; colormap</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:inferno</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><img src="`+e+'" alt=""></p><p>Other plots also work, here DD ignores the axis order and instead favours the categorical variable for the X axis:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rainclouds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A)</span></span></code></pre></div><p><img src="'+h+`" alt=""></p><h2 id="Test-series-plots" tabindex="-1">Test series plots <a class="header-anchor" href="#Test-series-plots" aria-label="Permalink to "Test series plots {#Test-series-plots}""></a></h2><h3 id="default-colormap" tabindex="-1">default colormap <a class="header-anchor" href="#default-colormap" aria-label="Permalink to "default colormap {#default-colormap}""></a></h3><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">B </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:e</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:f</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:g</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:h</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:i</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:j</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> diff --git a/dev/assets/plots.md.2aFJv8Qw.lean.js b/dev/assets/plots.md.kpY9w3i0.lean.js similarity index 98% rename from dev/assets/plots.md.2aFJv8Qw.lean.js rename to dev/assets/plots.md.kpY9w3i0.lean.js index f387d9dc6..b8e46c42a 100644 --- a/dev/assets/plots.md.2aFJv8Qw.lean.js +++ b/dev/assets/plots.md.kpY9w3i0.lean.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a4 as t,o as l}from"./chunks/framework.C6EFuEL4.js";const e="/DimensionalData.jl/dev/assets/jmmhsxu.iiL4UBgm.png",h="/DimensionalData.jl/dev/assets/ybmzrjc.BIa4VhRY.png",n="/DimensionalData.jl/dev/assets/veptoqy.CZKDtjAN.png",p="/DimensionalData.jl/dev/assets/izkfogt.nOjqWh1g.png",k="/DimensionalData.jl/dev/assets/yhxwiti.CBNkYhiq.png",r="/DimensionalData.jl/dev/assets/rcywifo.NnnTWDGw.png",m=JSON.parse('{"title":"Plots.jl","description":"","frontmatter":{},"headers":[],"relativePath":"plots.md","filePath":"plots.md","lastUpdated":null}'),d={name:"plots.md"};function o(E,s,g,c,y,F){return l(),a("div",null,s[0]||(s[0]=[t(`<h1 id="plots-jl" tabindex="-1">Plots.jl <a class="header-anchor" href="#plots-jl" aria-label="Permalink to "Plots.jl""></a></h1><p>Plots.jl and Makie.jl functions mostly work out of the box on <code>AbstractDimArray</code>, although not with the same results - they choose to follow each packages default behaviour as much as possible.</p><p>This will plot a line plot with 'a', 'b' and 'c' in the legend, and values 1-10 on the labelled X axis:</p><p>Plots.jl support is deprecated, as development is moving to Makie.jl</p><h1 id="makie-jl" tabindex="-1">Makie.jl <a class="header-anchor" href="#makie-jl" aria-label="Permalink to "Makie.jl""></a></h1><p>Makie.jl functions also mostly work with <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> and will <code>permute</code> and <a href="/DimensionalData.jl/dev/object_modification#reorder"><code>reorder</code></a> axes into the right places, especially if <code>X</code>/<code>Y</code>/<code>Z</code>/<code>Ti</code> dimensions are used.</p><p>In Makie a <code>DimMatrix</code> will plot as a heatmap by default, but it will have labels and axes in the right places:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CairoMakie</span></span> +import{_ as i,c as a,a4 as t,o as l}from"./chunks/framework.B8l2DGq3.js";const e="/DimensionalData.jl/dev/assets/jmmhsxu.iiL4UBgm.png",h="/DimensionalData.jl/dev/assets/ybmzrjc.BIa4VhRY.png",n="/DimensionalData.jl/dev/assets/veptoqy.CZKDtjAN.png",p="/DimensionalData.jl/dev/assets/izkfogt.nOjqWh1g.png",k="/DimensionalData.jl/dev/assets/yhxwiti.CBNkYhiq.png",r="/DimensionalData.jl/dev/assets/rcywifo.NnnTWDGw.png",m=JSON.parse('{"title":"Plots.jl","description":"","frontmatter":{},"headers":[],"relativePath":"plots.md","filePath":"plots.md","lastUpdated":null}'),d={name:"plots.md"};function o(E,s,g,c,y,F){return l(),a("div",null,s[0]||(s[0]=[t(`<h1 id="plots-jl" tabindex="-1">Plots.jl <a class="header-anchor" href="#plots-jl" aria-label="Permalink to "Plots.jl""></a></h1><p>Plots.jl and Makie.jl functions mostly work out of the box on <code>AbstractDimArray</code>, although not with the same results - they choose to follow each packages default behaviour as much as possible.</p><p>This will plot a line plot with 'a', 'b' and 'c' in the legend, and values 1-10 on the labelled X axis:</p><p>Plots.jl support is deprecated, as development is moving to Makie.jl</p><h1 id="makie-jl" tabindex="-1">Makie.jl <a class="header-anchor" href="#makie-jl" aria-label="Permalink to "Makie.jl""></a></h1><p>Makie.jl functions also mostly work with <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> and will <code>permute</code> and <a href="/DimensionalData.jl/dev/object_modification#reorder"><code>reorder</code></a> axes into the right places, especially if <code>X</code>/<code>Y</code>/<code>Z</code>/<code>Ti</code> dimensions are used.</p><p>In Makie a <code>DimMatrix</code> will plot as a heatmap by default, but it will have labels and axes in the right places:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CairoMakie</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">plot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; colormap</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:inferno</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><img src="`+e+'" alt=""></p><p>Other plots also work, here DD ignores the axis order and instead favours the categorical variable for the X axis:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rainclouds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A)</span></span></code></pre></div><p><img src="'+h+`" alt=""></p><h2 id="Test-series-plots" tabindex="-1">Test series plots <a class="header-anchor" href="#Test-series-plots" aria-label="Permalink to "Test series plots {#Test-series-plots}""></a></h2><h3 id="default-colormap" tabindex="-1">default colormap <a class="header-anchor" href="#default-colormap" aria-label="Permalink to "default colormap {#default-colormap}""></a></h3><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">B </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:e</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:f</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:g</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:h</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:i</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:j</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> diff --git a/dev/assets/selectors.md.BxHSadsn.js b/dev/assets/selectors.md.Cu8DY1IK.js similarity index 99% rename from dev/assets/selectors.md.BxHSadsn.js rename to dev/assets/selectors.md.Cu8DY1IK.js index f01f19b06..334341268 100644 --- a/dev/assets/selectors.md.BxHSadsn.js +++ b/dev/assets/selectors.md.Cu8DY1IK.js @@ -1,4 +1,4 @@ -import{_ as p,c as d,a4 as k,G as l,w as h,B as n,o as r,j as i,a as s}from"./chunks/framework.C6EFuEL4.js";const C=JSON.parse('{"title":"Selectors","description":"","frontmatter":{},"headers":[],"relativePath":"selectors.md","filePath":"selectors.md","lastUpdated":null}'),g={name:"selectors.md"};function y(f,a,o,c,E,u){const e=n("PluginTabsTab"),t=n("PluginTabs");return r(),d("div",null,[a[11]||(a[11]=k(`<h1 id="selectors" tabindex="-1">Selectors <a class="header-anchor" href="#selectors" aria-label="Permalink to "Selectors""></a></h1><p>As well as choosing dimensions by name, we can also select values in them.</p><p>First, we can create <code>DimArray</code> with lookup values as well as dimension names:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> +import{_ as p,c as d,a4 as k,G as l,w as h,B as n,o as r,j as i,a as s}from"./chunks/framework.B8l2DGq3.js";const C=JSON.parse('{"title":"Selectors","description":"","frontmatter":{},"headers":[],"relativePath":"selectors.md","filePath":"selectors.md","lastUpdated":null}'),g={name:"selectors.md"};function y(f,a,o,c,E,u){const e=n("PluginTabsTab"),t=n("PluginTabs");return r(),d("div",null,[a[11]||(a[11]=k(`<h1 id="selectors" tabindex="-1">Selectors <a class="header-anchor" href="#selectors" aria-label="Permalink to "Selectors""></a></h1><p>As well as choosing dimensions by name, we can also select values in them.</p><p>First, we can create <code>DimArray</code> with lookup values as well as dimension names:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> <span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">│ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">6</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">×</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">3</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> DimArray{Float64,2}</span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;"> │</span></span> <span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">├─────────────────────────┴────────────────────────────────────────────── dims ┐</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> ↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Sampled{Float64} </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">1.0:0.2:2.0</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> ForwardOrdered</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Regular</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Points</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> diff --git a/dev/assets/selectors.md.BxHSadsn.lean.js b/dev/assets/selectors.md.Cu8DY1IK.lean.js similarity index 99% rename from dev/assets/selectors.md.BxHSadsn.lean.js rename to dev/assets/selectors.md.Cu8DY1IK.lean.js index f01f19b06..334341268 100644 --- a/dev/assets/selectors.md.BxHSadsn.lean.js +++ b/dev/assets/selectors.md.Cu8DY1IK.lean.js @@ -1,4 +1,4 @@ -import{_ as p,c as d,a4 as k,G as l,w as h,B as n,o as r,j as i,a as s}from"./chunks/framework.C6EFuEL4.js";const C=JSON.parse('{"title":"Selectors","description":"","frontmatter":{},"headers":[],"relativePath":"selectors.md","filePath":"selectors.md","lastUpdated":null}'),g={name:"selectors.md"};function y(f,a,o,c,E,u){const e=n("PluginTabsTab"),t=n("PluginTabs");return r(),d("div",null,[a[11]||(a[11]=k(`<h1 id="selectors" tabindex="-1">Selectors <a class="header-anchor" href="#selectors" aria-label="Permalink to "Selectors""></a></h1><p>As well as choosing dimensions by name, we can also select values in them.</p><p>First, we can create <code>DimArray</code> with lookup values as well as dimension names:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> +import{_ as p,c as d,a4 as k,G as l,w as h,B as n,o as r,j as i,a as s}from"./chunks/framework.B8l2DGq3.js";const C=JSON.parse('{"title":"Selectors","description":"","frontmatter":{},"headers":[],"relativePath":"selectors.md","filePath":"selectors.md","lastUpdated":null}'),g={name:"selectors.md"};function y(f,a,o,c,E,u){const e=n("PluginTabsTab"),t=n("PluginTabs");return r(),d("div",null,[a[11]||(a[11]=k(`<h1 id="selectors" tabindex="-1">Selectors <a class="header-anchor" href="#selectors" aria-label="Permalink to "Selectors""></a></h1><p>As well as choosing dimensions by name, we can also select values in them.</p><p>First, we can create <code>DimArray</code> with lookup values as well as dimension names:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> <span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">│ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">6</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">×</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">3</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> DimArray{Float64,2}</span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;"> │</span></span> <span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">├─────────────────────────┴────────────────────────────────────────────── dims ┐</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> ↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Sampled{Float64} </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">1.0:0.2:2.0</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> ForwardOrdered</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Regular</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Points</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> diff --git a/dev/assets/stacks.md.Dr5B-1Fh.js b/dev/assets/stacks.md.SmvHWrk4.js similarity index 99% rename from dev/assets/stacks.md.Dr5B-1Fh.js rename to dev/assets/stacks.md.SmvHWrk4.js index b5fc3d536..9586148b9 100644 --- a/dev/assets/stacks.md.Dr5B-1Fh.js +++ b/dev/assets/stacks.md.SmvHWrk4.js @@ -1,4 +1,4 @@ -import{_ as n,c as p,a4 as t,G as h,w as l,j as i,a as s,B as d,o as r}from"./chunks/framework.C6EFuEL4.js";const b=JSON.parse('{"title":"DimStacks","description":"","frontmatter":{},"headers":[],"relativePath":"stacks.md","filePath":"stacks.md","lastUpdated":null}'),g={name:"stacks.md"};function y(f,a,c,o,u,E){const k=d("PluginTabsTab"),e=d("PluginTabs");return r(),p("div",null,[a[25]||(a[25]=t(`<h1 id="dimstacks" tabindex="-1">DimStacks <a class="header-anchor" href="#dimstacks" aria-label="Permalink to "DimStacks""></a></h1><p>An <code>AbstractDimStack</code> represents a collection of <code>AbstractDimArray</code> layers that share some or all dimensions. For any two layers, a dimension of the same name must have the identical lookup - in fact only one is stored for all layers to enforce this consistency.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as n,c as p,a4 as t,G as h,w as l,j as i,a as s,B as d,o as r}from"./chunks/framework.B8l2DGq3.js";const b=JSON.parse('{"title":"DimStacks","description":"","frontmatter":{},"headers":[],"relativePath":"stacks.md","filePath":"stacks.md","lastUpdated":null}'),g={name:"stacks.md"};function y(f,a,c,o,u,E){const k=d("PluginTabsTab"),e=d("PluginTabs");return r(),p("div",null,[a[25]||(a[25]=t(`<h1 id="dimstacks" tabindex="-1">DimStacks <a class="header-anchor" href="#dimstacks" aria-label="Permalink to "DimStacks""></a></h1><p>An <code>AbstractDimStack</code> represents a collection of <code>AbstractDimArray</code> layers that share some or all dimensions. For any two layers, a dimension of the same name must have the identical lookup - in fact only one is stored for all layers to enforce this consistency.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1.0:1.0:10.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 5.0:1.0:10.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> st </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((a</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y), b</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y), c</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(y), d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭───────────────╮</span></span> @@ -363,6 +363,6 @@ import{_ as n,c as p,a4 as t,G as h,w as l,j as i,a as s,B as d,o as r}from"./ch `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#00afaf","--shiki-dark":"#00afaf"}}," :d"),i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}}," eltype: "),i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}},"Float64"),i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}}," dims: "),i("span",{style:{"--shiki-light":"#0087d7","--shiki-dark":"#0087d7"}},"X"),i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}}," size: "),i("span",{style:{"--shiki-light":"#0087d7","--shiki-dark":"#0087d7"}},"10")]),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}},"└──────────────────────────────────────────────────────────────────────────────┘")])])])],-1)])),_:1})]),_:1}),a[29]||(a[29]=t(`<h2 id="performance" tabindex="-1">Performance <a class="header-anchor" href="#performance" aria-label="Permalink to "Performance""></a></h2><p>Indexing stack is fast - indexing a single value return a <code>NamedTuple</code> from all layers is usually measures in nanoseconds, and no slower than manually indexing into each parent array directly.</p><p>There are some compilation overheads to this though, and stacks with very many layers can take a long time to compile.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> BenchmarkTools</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[X</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.027 ns (0 allocations: 0 bytes)</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.027 ns (0 allocations: 0 bytes)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[X</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.028 ns (0 allocations: 0 bytes)</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.028 ns (0 allocations: 0 bytes)</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div>`,7))])}const F=n(g,[["render",y]]);export{b as __pageData,F as default}; diff --git a/dev/assets/stacks.md.Dr5B-1Fh.lean.js b/dev/assets/stacks.md.SmvHWrk4.lean.js similarity index 99% rename from dev/assets/stacks.md.Dr5B-1Fh.lean.js rename to dev/assets/stacks.md.SmvHWrk4.lean.js index b5fc3d536..9586148b9 100644 --- a/dev/assets/stacks.md.Dr5B-1Fh.lean.js +++ b/dev/assets/stacks.md.SmvHWrk4.lean.js @@ -1,4 +1,4 @@ -import{_ as n,c as p,a4 as t,G as h,w as l,j as i,a as s,B as d,o as r}from"./chunks/framework.C6EFuEL4.js";const b=JSON.parse('{"title":"DimStacks","description":"","frontmatter":{},"headers":[],"relativePath":"stacks.md","filePath":"stacks.md","lastUpdated":null}'),g={name:"stacks.md"};function y(f,a,c,o,u,E){const k=d("PluginTabsTab"),e=d("PluginTabs");return r(),p("div",null,[a[25]||(a[25]=t(`<h1 id="dimstacks" tabindex="-1">DimStacks <a class="header-anchor" href="#dimstacks" aria-label="Permalink to "DimStacks""></a></h1><p>An <code>AbstractDimStack</code> represents a collection of <code>AbstractDimArray</code> layers that share some or all dimensions. For any two layers, a dimension of the same name must have the identical lookup - in fact only one is stored for all layers to enforce this consistency.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as n,c as p,a4 as t,G as h,w as l,j as i,a as s,B as d,o as r}from"./chunks/framework.B8l2DGq3.js";const b=JSON.parse('{"title":"DimStacks","description":"","frontmatter":{},"headers":[],"relativePath":"stacks.md","filePath":"stacks.md","lastUpdated":null}'),g={name:"stacks.md"};function y(f,a,c,o,u,E){const k=d("PluginTabsTab"),e=d("PluginTabs");return r(),p("div",null,[a[25]||(a[25]=t(`<h1 id="dimstacks" tabindex="-1">DimStacks <a class="header-anchor" href="#dimstacks" aria-label="Permalink to "DimStacks""></a></h1><p>An <code>AbstractDimStack</code> represents a collection of <code>AbstractDimArray</code> layers that share some or all dimensions. For any two layers, a dimension of the same name must have the identical lookup - in fact only one is stored for all layers to enforce this consistency.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1.0:1.0:10.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 5.0:1.0:10.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> st </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((a</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y), b</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y), c</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(y), d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭───────────────╮</span></span> @@ -363,6 +363,6 @@ import{_ as n,c as p,a4 as t,G as h,w as l,j as i,a as s,B as d,o as r}from"./ch `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#00afaf","--shiki-dark":"#00afaf"}}," :d"),i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}}," eltype: "),i("span",{style:{"--shiki-light":"#24292e","--shiki-dark":"#e1e4e8"}},"Float64"),i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}}," dims: "),i("span",{style:{"--shiki-light":"#0087d7","--shiki-dark":"#0087d7"}},"X"),i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}}," size: "),i("span",{style:{"--shiki-light":"#0087d7","--shiki-dark":"#0087d7"}},"10")]),s(` `),i("span",{class:"line"},[i("span",{style:{"--shiki-light":"#959da5","--shiki-dark":"#959da5"}},"└──────────────────────────────────────────────────────────────────────────────┘")])])])],-1)])),_:1})]),_:1}),a[29]||(a[29]=t(`<h2 id="performance" tabindex="-1">Performance <a class="header-anchor" href="#performance" aria-label="Permalink to "Performance""></a></h2><p>Indexing stack is fast - indexing a single value return a <code>NamedTuple</code> from all layers is usually measures in nanoseconds, and no slower than manually indexing into each parent array directly.</p><p>There are some compilation overheads to this though, and stacks with very many layers can take a long time to compile.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> BenchmarkTools</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[X</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.027 ns (0 allocations: 0 bytes)</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.027 ns (0 allocations: 0 bytes)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[X</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.028 ns (0 allocations: 0 bytes)</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.028 ns (0 allocations: 0 bytes)</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div>`,7))])}const F=n(g,[["render",y]]);export{b as __pageData,F as default}; diff --git a/dev/assets/style.CMKUYRAZ.css b/dev/assets/style.CaBzy52z.css similarity index 98% rename from dev/assets/style.CMKUYRAZ.css rename to dev/assets/style.CaBzy52z.css index f4eafa596..ebdf959e5 100644 --- a/dev/assets/style.CMKUYRAZ.css +++ b/dev/assets/style.CaBzy52z.css @@ -1 +1 @@ -@import"https://fonts.googleapis.com/css?family=Space+Mono:regular,italic,700,700italic";@import"https://fonts.googleapis.com/css?family=Space+Grotesk:regular,italic,700,700italic";@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-cyrillic.C5lxZ8CY.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-greek-ext.CqjqNYQ-.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-greek.BBVDIX6e.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-vietnamese.BjW4sHH5.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-latin-ext.4ZJIpNVo.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-cyrillic-ext.r48I6akx.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-cyrillic.By2_1cv3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-greek-ext.1u6EdAuj.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-greek.DJ8dCoTZ.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-vietnamese.BSbpV94h.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-latin-ext.CN1xVJS-.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-latin.C2AdPX0b.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Punctuation SC;font-weight:400;src:local("PingFang SC Regular"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:500;src:local("PingFang SC Medium"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:600;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:700;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white)}.dark{--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black)}:root{--vp-c-gray-1: #dddde3;--vp-c-gray-2: #e4e4e9;--vp-c-gray-3: #ebebef;--vp-c-gray-soft: rgba(142, 150, 170, .14);--vp-c-indigo-1: #3451b2;--vp-c-indigo-2: #3a5ccc;--vp-c-indigo-3: #5672cd;--vp-c-indigo-soft: rgba(100, 108, 255, .14);--vp-c-purple-1: #6f42c1;--vp-c-purple-2: #7e4cc9;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .14);--vp-c-green-1: #18794e;--vp-c-green-2: #299764;--vp-c-green-3: #30a46c;--vp-c-green-soft: rgba(16, 185, 129, .14);--vp-c-yellow-1: #915930;--vp-c-yellow-2: #946300;--vp-c-yellow-3: #9f6a00;--vp-c-yellow-soft: rgba(234, 179, 8, .14);--vp-c-red-1: #b8272c;--vp-c-red-2: #d5393e;--vp-c-red-3: #e0575b;--vp-c-red-soft: rgba(244, 63, 94, .14);--vp-c-sponsor: #db2777}.dark{--vp-c-gray-1: #515c67;--vp-c-gray-2: #414853;--vp-c-gray-3: #32363f;--vp-c-gray-soft: rgba(101, 117, 133, .16);--vp-c-indigo-1: #a8b1ff;--vp-c-indigo-2: #5c73e7;--vp-c-indigo-3: #3e63dd;--vp-c-indigo-soft: rgba(100, 108, 255, .16);--vp-c-purple-1: #c8abfa;--vp-c-purple-2: #a879e6;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .16);--vp-c-green-1: #3dd68c;--vp-c-green-2: #30a46c;--vp-c-green-3: #298459;--vp-c-green-soft: rgba(16, 185, 129, .16);--vp-c-yellow-1: #f9b44e;--vp-c-yellow-2: #da8b17;--vp-c-yellow-3: #a46a0a;--vp-c-yellow-soft: rgba(234, 179, 8, .16);--vp-c-red-1: #f66f81;--vp-c-red-2: #f14158;--vp-c-red-3: #b62a3c;--vp-c-red-soft: rgba(244, 63, 94, .16)}:root{--vp-c-bg: #ffffff;--vp-c-bg-alt: #f6f6f7;--vp-c-bg-elv: #ffffff;--vp-c-bg-soft: #f6f6f7}.dark{--vp-c-bg: #1b1b1f;--vp-c-bg-alt: #161618;--vp-c-bg-elv: #202127;--vp-c-bg-soft: #202127}:root{--vp-c-border: #c2c2c4;--vp-c-divider: #e2e2e3;--vp-c-gutter: #e2e2e3}.dark{--vp-c-border: #3c3f44;--vp-c-divider: #2e2e32;--vp-c-gutter: #000000}:root{--vp-c-text-1: rgba(60, 60, 67);--vp-c-text-2: rgba(60, 60, 67, .78);--vp-c-text-3: rgba(60, 60, 67, .56)}.dark{--vp-c-text-1: rgba(255, 255, 245, .86);--vp-c-text-2: rgba(235, 235, 245, .6);--vp-c-text-3: rgba(235, 235, 245, .38)}:root{--vp-c-default-1: var(--vp-c-gray-1);--vp-c-default-2: var(--vp-c-gray-2);--vp-c-default-3: var(--vp-c-gray-3);--vp-c-default-soft: var(--vp-c-gray-soft);--vp-c-brand-1: var(--vp-c-indigo-1);--vp-c-brand-2: var(--vp-c-indigo-2);--vp-c-brand-3: var(--vp-c-indigo-3);--vp-c-brand-soft: var(--vp-c-indigo-soft);--vp-c-brand: var(--vp-c-brand-1);--vp-c-tip-1: var(--vp-c-brand-1);--vp-c-tip-2: var(--vp-c-brand-2);--vp-c-tip-3: var(--vp-c-brand-3);--vp-c-tip-soft: var(--vp-c-brand-soft);--vp-c-note-1: var(--vp-c-brand-1);--vp-c-note-2: var(--vp-c-brand-2);--vp-c-note-3: var(--vp-c-brand-3);--vp-c-note-soft: var(--vp-c-brand-soft);--vp-c-success-1: var(--vp-c-green-1);--vp-c-success-2: var(--vp-c-green-2);--vp-c-success-3: var(--vp-c-green-3);--vp-c-success-soft: var(--vp-c-green-soft);--vp-c-important-1: var(--vp-c-purple-1);--vp-c-important-2: var(--vp-c-purple-2);--vp-c-important-3: var(--vp-c-purple-3);--vp-c-important-soft: var(--vp-c-purple-soft);--vp-c-warning-1: var(--vp-c-yellow-1);--vp-c-warning-2: var(--vp-c-yellow-2);--vp-c-warning-3: var(--vp-c-yellow-3);--vp-c-warning-soft: var(--vp-c-yellow-soft);--vp-c-danger-1: var(--vp-c-red-1);--vp-c-danger-2: var(--vp-c-red-2);--vp-c-danger-3: var(--vp-c-red-3);--vp-c-danger-soft: var(--vp-c-red-soft);--vp-c-caution-1: var(--vp-c-red-1);--vp-c-caution-2: var(--vp-c-red-2);--vp-c-caution-3: var(--vp-c-red-3);--vp-c-caution-soft: var(--vp-c-red-soft)}:root{--vp-font-family-base: "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;font-optical-sizing:auto}:root:where(:lang(zh)){--vp-font-family-base: "Punctuation SC", "Inter", ui-sans-serif, system-ui, "PingFang SC", "Noto Sans CJK SC", "Noto Sans SC", "Heiti SC", "Microsoft YaHei", "DengXian", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}:root{--vp-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--vp-shadow-2: 0 3px 12px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .07);--vp-shadow-3: 0 12px 32px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .08);--vp-shadow-4: 0 14px 44px rgba(0, 0, 0, .12), 0 3px 9px rgba(0, 0, 0, .12);--vp-shadow-5: 0 18px 56px rgba(0, 0, 0, .16), 0 4px 12px rgba(0, 0, 0, .16)}:root{--vp-z-index-footer: 10;--vp-z-index-local-nav: 20;--vp-z-index-nav: 30;--vp-z-index-layout-top: 40;--vp-z-index-backdrop: 50;--vp-z-index-sidebar: 60}@media (min-width: 960px){:root{--vp-z-index-sidebar: 25}}:root{--vp-layout-max-width: 1440px}:root{--vp-header-anchor-symbol: "#"}:root{--vp-code-line-height: 1.7;--vp-code-font-size: .875em;--vp-code-color: var(--vp-c-brand-1);--vp-code-link-color: var(--vp-c-brand-1);--vp-code-link-hover-color: var(--vp-c-brand-2);--vp-code-bg: var(--vp-c-default-soft);--vp-code-block-color: var(--vp-c-text-2);--vp-code-block-bg: var(--vp-c-bg-alt);--vp-code-block-divider-color: var(--vp-c-gutter);--vp-code-lang-color: var(--vp-c-text-3);--vp-code-line-highlight-color: var(--vp-c-default-soft);--vp-code-line-number-color: var(--vp-c-text-3);--vp-code-line-diff-add-color: var(--vp-c-success-soft);--vp-code-line-diff-add-symbol-color: var(--vp-c-success-1);--vp-code-line-diff-remove-color: var(--vp-c-danger-soft);--vp-code-line-diff-remove-symbol-color: var(--vp-c-danger-1);--vp-code-line-warning-color: var(--vp-c-warning-soft);--vp-code-line-error-color: var(--vp-c-danger-soft);--vp-code-copy-code-border-color: var(--vp-c-divider);--vp-code-copy-code-bg: var(--vp-c-bg-soft);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-c-bg);--vp-code-copy-code-active-text: var(--vp-c-text-2);--vp-code-copy-copied-text-content: "Copied";--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-1);--vp-code-tab-active-text-color: var(--vp-c-text-1);--vp-code-tab-active-bar-color: var(--vp-c-brand-1)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1);--vp-button-alt-border: transparent;--vp-button-alt-text: var(--vp-c-text-1);--vp-button-alt-bg: var(--vp-c-default-3);--vp-button-alt-hover-border: transparent;--vp-button-alt-hover-text: var(--vp-c-text-1);--vp-button-alt-hover-bg: var(--vp-c-default-2);--vp-button-alt-active-border: transparent;--vp-button-alt-active-text: var(--vp-c-text-1);--vp-button-alt-active-bg: var(--vp-c-default-1);--vp-button-sponsor-border: var(--vp-c-text-2);--vp-button-sponsor-text: var(--vp-c-text-2);--vp-button-sponsor-bg: transparent;--vp-button-sponsor-hover-border: var(--vp-c-sponsor);--vp-button-sponsor-hover-text: var(--vp-c-sponsor);--vp-button-sponsor-hover-bg: transparent;--vp-button-sponsor-active-border: var(--vp-c-sponsor);--vp-button-sponsor-active-text: var(--vp-c-sponsor);--vp-button-sponsor-active-bg: transparent}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: transparent;--vp-custom-block-info-text: var(--vp-c-text-1);--vp-custom-block-info-bg: var(--vp-c-default-soft);--vp-custom-block-info-code-bg: var(--vp-c-default-soft);--vp-custom-block-note-border: transparent;--vp-custom-block-note-text: var(--vp-c-text-1);--vp-custom-block-note-bg: var(--vp-c-default-soft);--vp-custom-block-note-code-bg: var(--vp-c-default-soft);--vp-custom-block-tip-border: transparent;--vp-custom-block-tip-text: var(--vp-c-text-1);--vp-custom-block-tip-bg: var(--vp-c-tip-soft);--vp-custom-block-tip-code-bg: var(--vp-c-tip-soft);--vp-custom-block-important-border: transparent;--vp-custom-block-important-text: var(--vp-c-text-1);--vp-custom-block-important-bg: var(--vp-c-important-soft);--vp-custom-block-important-code-bg: var(--vp-c-important-soft);--vp-custom-block-warning-border: transparent;--vp-custom-block-warning-text: var(--vp-c-text-1);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-soft);--vp-custom-block-danger-border: transparent;--vp-custom-block-danger-text: var(--vp-c-text-1);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);--vp-custom-block-caution-border: transparent;--vp-custom-block-caution-text: var(--vp-c-text-1);--vp-custom-block-caution-bg: var(--vp-c-caution-soft);--vp-custom-block-caution-code-bg: var(--vp-c-caution-soft);--vp-custom-block-details-border: var(--vp-custom-block-info-border);--vp-custom-block-details-text: var(--vp-custom-block-info-text);--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);--vp-custom-block-details-code-bg: var(--vp-custom-block-info-code-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-switch-bg-color: var(--vp-c-default-soft)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg);--vp-nav-logo-height: 24px}.hide-nav{--vp-nav-height: 0px}.hide-nav .VPSidebar{--vp-nav-height: 22px}:root{--vp-local-nav-bg-color: var(--vp-c-bg)}:root{--vp-sidebar-width: 272px;--vp-sidebar-bg-color: var(--vp-c-bg-alt)}:root{--vp-backdrop-bg-color: rgba(0, 0, 0, .6)}:root{--vp-home-hero-name-color: var(--vp-c-brand-1);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: transparent;--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-default-soft);--vp-badge-tip-border: transparent;--vp-badge-tip-text: var(--vp-c-tip-1);--vp-badge-tip-bg: var(--vp-c-tip-soft);--vp-badge-warning-border: transparent;--vp-badge-warning-text: var(--vp-c-warning-1);--vp-badge-warning-bg: var(--vp-c-warning-soft);--vp-badge-danger-border: transparent;--vp-badge-danger-text: var(--vp-c-danger-1);--vp-badge-danger-bg: var(--vp-c-danger-soft)}:root{--vp-carbon-ads-text-color: var(--vp-c-text-1);--vp-carbon-ads-poweredby-color: var(--vp-c-text-2);--vp-carbon-ads-bg-color: var(--vp-c-bg-soft);--vp-carbon-ads-hover-text-color: var(--vp-c-brand-1);--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)}:root{--vp-local-search-bg: var(--vp-c-bg);--vp-local-search-result-bg: var(--vp-c-bg);--vp-local-search-result-border: var(--vp-c-divider);--vp-local-search-result-selected-bg: var(--vp-c-bg);--vp-local-search-result-selected-border: var(--vp-c-brand-1);--vp-local-search-highlight-bg: var(--vp-c-brand-1);--vp-local-search-highlight-text: var(--vp-c-neutral-inverse)}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important}}*,:before,:after{box-sizing:border-box}html{line-height:1.4;font-size:16px;-webkit-text-size-adjust:100%}html.dark{color-scheme:dark}body{margin:0;width:100%;min-width:320px;min-height:100vh;line-height:24px;font-family:var(--vp-font-family-base);font-size:16px;font-weight:400;color:var(--vp-c-text-1);background-color:var(--vp-c-bg);font-synthesis:style;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}h1,h2,h3,h4,h5,h6{margin:0;line-height:24px;font-size:16px;font-weight:400}p{margin:0}strong,b{font-weight:600}a,area,button,[role=button],input,label,select,summary,textarea{touch-action:manipulation}a{color:inherit;text-decoration:inherit}ol,ul{list-style:none;margin:0;padding:0}blockquote{margin:0}pre,code,kbd,samp{font-family:var(--vp-font-family-mono)}img,svg,video,canvas,audio,iframe,embed,object{display:block}figure{margin:0}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{border:0;padding:0;line-height:inherit;color:inherit}button{padding:0;font-family:inherit;background-color:transparent;background-image:none}button:enabled,[role=button]:enabled{cursor:pointer}button:focus,button:focus-visible{outline:1px dotted;outline:4px auto -webkit-focus-ring-color}button:focus:not(:focus-visible){outline:none!important}input:focus,textarea:focus,select:focus{outline:none}table{border-collapse:collapse}input{background-color:transparent}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--vp-c-text-3)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--vp-c-text-3)}input::placeholder,textarea::placeholder{color:var(--vp-c-text-3)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}textarea{resize:vertical}select{-webkit-appearance:none}fieldset{margin:0;padding:0}h1,h2,h3,h4,h5,h6,li,p{overflow-wrap:break-word}vite-error-overlay{z-index:9999}mjx-container{overflow-x:auto}mjx-container>svg{display:inline-block;margin:auto}[class^=vpi-],[class*=" vpi-"],.vp-icon{width:1em;height:1em}[class^=vpi-].bg,[class*=" vpi-"].bg,.vp-icon.bg{background-size:100% 100%;background-color:transparent}[class^=vpi-]:not(.bg),[class*=" vpi-"]:not(.bg),.vp-icon:not(.bg){-webkit-mask:var(--icon) no-repeat;mask:var(--icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit}.vpi-align-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 6H3M15 12H3M17 18H3'/%3E%3C/svg%3E")}.vpi-arrow-right,.vpi-arrow-down,.vpi-arrow-left,.vpi-arrow-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E")}.vpi-chevron-right,.vpi-chevron-down,.vpi-chevron-left,.vpi-chevron-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E")}.vpi-chevron-down,.vpi-arrow-down{transform:rotate(90deg)}.vpi-chevron-left,.vpi-arrow-left{transform:rotate(180deg)}.vpi-chevron-up,.vpi-arrow-up{transform:rotate(-90deg)}.vpi-square-pen{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/%3E%3Cpath d='M18.375 2.625a2.121 2.121 0 1 1 3 3L12 15l-4 1 1-4Z'/%3E%3C/svg%3E")}.vpi-plus{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5v14'/%3E%3C/svg%3E")}.vpi-sun{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/svg%3E")}.vpi-moon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/%3E%3C/svg%3E")}.vpi-more-horizontal{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='19' cy='12' r='1'/%3E%3Ccircle cx='5' cy='12' r='1'/%3E%3C/svg%3E")}.vpi-languages{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m5 8 6 6M4 14l6-6 2-3M2 5h12M7 2h1M22 22l-5-10-5 10M14 18h6'/%3E%3C/svg%3E")}.vpi-heart{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E")}.vpi-search{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E")}.vpi-layout-list{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='7' height='7' x='3' y='3' rx='1'/%3E%3Crect width='7' height='7' x='3' y='14' rx='1'/%3E%3Cpath d='M14 4h7M14 9h7M14 15h7M14 20h7'/%3E%3C/svg%3E")}.vpi-delete{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 5H9l-7 7 7 7h11a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2ZM18 9l-6 6M12 9l6 6'/%3E%3C/svg%3E")}.vpi-corner-down-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 10-5 5 5 5'/%3E%3Cpath d='M20 4v7a4 4 0 0 1-4 4H4'/%3E%3C/svg%3E")}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='m9 14 2 2 4-4'/%3E%3C/svg%3E")}.vpi-social-discord{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418Z'/%3E%3C/svg%3E")}.vpi-social-facebook{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z'/%3E%3C/svg%3E")}.vpi-social-github{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")}.vpi-social-instagram{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.03.084c-1.277.06-2.149.264-2.91.563a5.874 5.874 0 0 0-2.124 1.388 5.878 5.878 0 0 0-1.38 2.127C.321 4.926.12 5.8.064 7.076.008 8.354-.005 8.764.001 12.023c.007 3.259.021 3.667.083 4.947.061 1.277.264 2.149.563 2.911.308.789.72 1.457 1.388 2.123a5.872 5.872 0 0 0 2.129 1.38c.763.295 1.636.496 2.913.552 1.278.056 1.689.069 4.947.063 3.257-.007 3.668-.021 4.947-.082 1.28-.06 2.147-.265 2.91-.563a5.881 5.881 0 0 0 2.123-1.388 5.881 5.881 0 0 0 1.38-2.129c.295-.763.496-1.636.551-2.912.056-1.28.07-1.69.063-4.948-.006-3.258-.02-3.667-.081-4.947-.06-1.28-.264-2.148-.564-2.911a5.892 5.892 0 0 0-1.387-2.123 5.857 5.857 0 0 0-2.128-1.38C19.074.322 18.202.12 16.924.066 15.647.009 15.236-.006 11.977 0 8.718.008 8.31.021 7.03.084m.14 21.693c-1.17-.05-1.805-.245-2.228-.408a3.736 3.736 0 0 1-1.382-.895 3.695 3.695 0 0 1-.9-1.378c-.165-.423-.363-1.058-.417-2.228-.06-1.264-.072-1.644-.08-4.848-.006-3.204.006-3.583.061-4.848.05-1.169.246-1.805.408-2.228.216-.561.477-.96.895-1.382a3.705 3.705 0 0 1 1.379-.9c.423-.165 1.057-.361 2.227-.417 1.265-.06 1.644-.072 4.848-.08 3.203-.006 3.583.006 4.85.062 1.168.05 1.804.244 2.227.408.56.216.96.475 1.382.895.421.42.681.817.9 1.378.165.422.362 1.056.417 2.227.06 1.265.074 1.645.08 4.848.005 3.203-.006 3.583-.061 4.848-.051 1.17-.245 1.805-.408 2.23-.216.56-.477.96-.896 1.38a3.705 3.705 0 0 1-1.378.9c-.422.165-1.058.362-2.226.418-1.266.06-1.645.072-4.85.079-3.204.007-3.582-.006-4.848-.06m9.783-16.192a1.44 1.44 0 1 0 1.437-1.442 1.44 1.44 0 0 0-1.437 1.442M5.839 12.012a6.161 6.161 0 1 0 12.323-.024 6.162 6.162 0 0 0-12.323.024M8 12.008A4 4 0 1 1 12.008 16 4 4 0 0 1 8 12.008'/%3E%3C/svg%3E")}.vpi-social-linkedin{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z'/%3E%3C/svg%3E")}.vpi-social-mastodon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z'/%3E%3C/svg%3E")}.vpi-social-npm{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z'/%3E%3C/svg%3E")}.vpi-social-slack{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zm1.271 0a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313zM8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zm0 1.271a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312zm10.122 2.521a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zm-1.268 0a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312zm-2.523 10.122a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zm0-1.268a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313z'/%3E%3C/svg%3E")}.vpi-social-twitter,.vpi-social-x{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z'/%3E%3C/svg%3E")}.vpi-social-youtube{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z'/%3E%3C/svg%3E")}.visually-hidden{position:absolute;width:1px;height:1px;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden}.custom-block{border:1px solid transparent;border-radius:8px;padding:16px 16px 8px;line-height:24px;font-size:var(--vp-custom-block-font-size);color:var(--vp-c-text-2)}.custom-block.info{border-color:var(--vp-custom-block-info-border);color:var(--vp-custom-block-info-text);background-color:var(--vp-custom-block-info-bg)}.custom-block.info a,.custom-block.info code{color:var(--vp-c-brand-1)}.custom-block.info a:hover,.custom-block.info a:hover>code{color:var(--vp-c-brand-2)}.custom-block.info code{background-color:var(--vp-custom-block-info-code-bg)}.custom-block.note{border-color:var(--vp-custom-block-note-border);color:var(--vp-custom-block-note-text);background-color:var(--vp-custom-block-note-bg)}.custom-block.note a,.custom-block.note code{color:var(--vp-c-brand-1)}.custom-block.note a:hover,.custom-block.note a:hover>code{color:var(--vp-c-brand-2)}.custom-block.note code{background-color:var(--vp-custom-block-note-code-bg)}.custom-block.tip{border-color:var(--vp-custom-block-tip-border);color:var(--vp-custom-block-tip-text);background-color:var(--vp-custom-block-tip-bg)}.custom-block.tip a,.custom-block.tip code{color:var(--vp-c-tip-1)}.custom-block.tip a:hover,.custom-block.tip a:hover>code{color:var(--vp-c-tip-2)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-code-bg)}.custom-block.important{border-color:var(--vp-custom-block-important-border);color:var(--vp-custom-block-important-text);background-color:var(--vp-custom-block-important-bg)}.custom-block.important a,.custom-block.important code{color:var(--vp-c-important-1)}.custom-block.important a:hover,.custom-block.important a:hover>code{color:var(--vp-c-important-2)}.custom-block.important code{background-color:var(--vp-custom-block-important-code-bg)}.custom-block.warning{border-color:var(--vp-custom-block-warning-border);color:var(--vp-custom-block-warning-text);background-color:var(--vp-custom-block-warning-bg)}.custom-block.warning a,.custom-block.warning code{color:var(--vp-c-warning-1)}.custom-block.warning a:hover,.custom-block.warning a:hover>code{color:var(--vp-c-warning-2)}.custom-block.warning code{background-color:var(--vp-custom-block-warning-code-bg)}.custom-block.danger{border-color:var(--vp-custom-block-danger-border);color:var(--vp-custom-block-danger-text);background-color:var(--vp-custom-block-danger-bg)}.custom-block.danger a,.custom-block.danger code{color:var(--vp-c-danger-1)}.custom-block.danger a:hover,.custom-block.danger a:hover>code{color:var(--vp-c-danger-2)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-code-bg)}.custom-block.caution{border-color:var(--vp-custom-block-caution-border);color:var(--vp-custom-block-caution-text);background-color:var(--vp-custom-block-caution-bg)}.custom-block.caution a,.custom-block.caution code{color:var(--vp-c-caution-1)}.custom-block.caution a:hover,.custom-block.caution a:hover>code{color:var(--vp-c-caution-2)}.custom-block.caution code{background-color:var(--vp-custom-block-caution-code-bg)}.custom-block.details{border-color:var(--vp-custom-block-details-border);color:var(--vp-custom-block-details-text);background-color:var(--vp-custom-block-details-bg)}.custom-block.details a{color:var(--vp-c-brand-1)}.custom-block.details a:hover,.custom-block.details a:hover>code{color:var(--vp-c-brand-2)}.custom-block.details code{background-color:var(--vp-custom-block-details-code-bg)}.custom-block-title{font-weight:600}.custom-block p+p{margin:8px 0}.custom-block.details summary{margin:0 0 8px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;transition:opacity .25s}.custom-block a:hover{opacity:.75}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.custom-block.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.dark .vp-code span{color:var(--shiki-dark, inherit)}html:not(.dark) .vp-code span{color:var(--shiki-light, inherit)}.vp-code-group{margin-top:16px}.vp-code-group .tabs{position:relative;display:flex;margin-right:-24px;margin-left:-24px;padding:0 12px;background-color:var(--vp-code-tab-bg);overflow-x:auto;overflow-y:hidden;box-shadow:inset 0 -1px var(--vp-code-tab-divider)}@media (min-width: 640px){.vp-code-group .tabs{margin-right:0;margin-left:0;border-radius:8px 8px 0 0}}.vp-code-group .tabs input{position:fixed;opacity:0;pointer-events:none}.vp-code-group .tabs label{position:relative;display:inline-block;border-bottom:1px solid transparent;padding:0 12px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-code-tab-text-color);white-space:nowrap;cursor:pointer;transition:color .25s}.vp-code-group .tabs label:after{position:absolute;right:8px;bottom:-1px;left:8px;z-index:1;height:2px;border-radius:2px;content:"";background-color:transparent;transition:background-color .25s}.vp-code-group label:hover{color:var(--vp-code-tab-hover-text-color)}.vp-code-group input:checked+label{color:var(--vp-code-tab-active-text-color)}.vp-code-group input:checked+label:after{background-color:var(--vp-code-tab-active-bar-color)}.vp-code-group div[class*=language-],.vp-block{display:none;margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.vp-code-group div[class*=language-].active,.vp-block.active{display:block}.vp-block{padding:20px 24px}.vp-doc h1,.vp-doc h2,.vp-doc h3,.vp-doc h4,.vp-doc h5,.vp-doc h6{position:relative;font-weight:600;outline:none}.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:28px}.vp-doc h2{margin:48px 0 16px;border-top:1px solid var(--vp-c-divider);padding-top:24px;letter-spacing:-.02em;line-height:32px;font-size:24px}.vp-doc h3{margin:32px 0 0;letter-spacing:-.01em;line-height:28px;font-size:20px}.vp-doc h4{margin:24px 0 0;letter-spacing:-.01em;line-height:24px;font-size:18px}.vp-doc .header-anchor{position:absolute;top:0;left:0;margin-left:-.87em;font-weight:500;-webkit-user-select:none;user-select:none;opacity:0;text-decoration:none;transition:color .25s,opacity .25s}.vp-doc .header-anchor:before{content:var(--vp-header-anchor-symbol)}.vp-doc h1:hover .header-anchor,.vp-doc h1 .header-anchor:focus,.vp-doc h2:hover .header-anchor,.vp-doc h2 .header-anchor:focus,.vp-doc h3:hover .header-anchor,.vp-doc h3 .header-anchor:focus,.vp-doc h4:hover .header-anchor,.vp-doc h4 .header-anchor:focus,.vp-doc h5:hover .header-anchor,.vp-doc h5 .header-anchor:focus,.vp-doc h6:hover .header-anchor,.vp-doc h6 .header-anchor:focus{opacity:1}@media (min-width: 768px){.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:32px}}.vp-doc h2 .header-anchor{top:24px}.vp-doc p,.vp-doc summary{margin:16px 0}.vp-doc p{line-height:28px}.vp-doc blockquote{margin:16px 0;border-left:2px solid var(--vp-c-divider);padding-left:16px;transition:border-color .5s;color:var(--vp-c-text-2)}.vp-doc blockquote>p{margin:0;font-size:16px;transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand-1);text-decoration:underline;text-underline-offset:2px;transition:color .25s,opacity .25s}.vp-doc a:hover{color:var(--vp-c-brand-2)}.vp-doc strong{font-weight:600}.vp-doc ul,.vp-doc ol{padding-left:1.25rem;margin:16px 0}.vp-doc ul{list-style:disc}.vp-doc ol{list-style:decimal}.vp-doc li+li{margin-top:8px}.vp-doc li>ol,.vp-doc li>ul{margin:8px 0 0}.vp-doc table{display:block;border-collapse:collapse;margin:20px 0;overflow-x:auto}.vp-doc tr{background-color:var(--vp-c-bg);border-top:1px solid var(--vp-c-divider);transition:background-color .5s}.vp-doc tr:nth-child(2n){background-color:var(--vp-c-bg-soft)}.vp-doc th,.vp-doc td{border:1px solid var(--vp-c-divider);padding:8px 16px}.vp-doc th{text-align:left;font-size:14px;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-doc td{font-size:14px}.vp-doc hr{margin:16px 0;border:none;border-top:1px solid var(--vp-c-divider)}.vp-doc .custom-block{margin:16px 0}.vp-doc .custom-block p{margin:8px 0;line-height:24px}.vp-doc .custom-block p:first-child{margin:0}.vp-doc .custom-block div[class*=language-]{margin:8px 0;border-radius:8px}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc .custom-block .vp-code-group .tabs{margin:0;border-radius:8px 8px 0 0}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size);color:var(--vp-code-color)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;background-color:var(--vp-code-bg);transition:color .25s,background-color .5s}.vp-doc a>code{color:var(--vp-code-link-color)}.vp-doc a:hover>code{color:var(--vp-code-link-hover-color)}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code,.vp-doc h4>code{font-size:.9em}.vp-doc div[class*=language-],.vp-block{position:relative;margin:16px -24px;background-color:var(--vp-code-block-bg);overflow-x:auto;transition:background-color .5s}@media (min-width: 640px){.vp-doc div[class*=language-],.vp-block{border-radius:8px;margin:16px 0}}@media (max-width: 639px){.vp-doc li div[class*=language-]{border-radius:8px 0 0 8px}}.vp-doc div[class*=language-]+div[class*=language-],.vp-doc div[class$=-api]+div[class*=language-],.vp-doc div[class*=language-]+div[class$=-api]>div[class*=language-]{margin-top:-8px}.vp-doc [class*=language-] pre,.vp-doc [class*=language-] code{direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}.vp-doc [class*=language-] pre{position:relative;z-index:1;margin:0;padding:20px 0;background:transparent;overflow-x:auto}.vp-doc [class*=language-] code{display:block;padding:0 24px;width:fit-content;min-width:100%;line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-block-color);transition:color .5s}.vp-doc [class*=language-] code .highlighted{background-color:var(--vp-code-line-highlight-color);transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .highlighted.error{background-color:var(--vp-code-line-error-color)}.vp-doc [class*=language-] code .highlighted.warning{background-color:var(--vp-code-line-warning-color)}.vp-doc [class*=language-] code .diff{transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .diff:before{position:absolute;left:10px}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){filter:blur(.095rem);opacity:.4;transition:filter .35s,opacity .35s}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){opacity:.7;transition:filter .35s,opacity .35s}.vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur(0);opacity:1}.vp-doc [class*=language-] code .diff.remove{background-color:var(--vp-code-line-diff-remove-color);opacity:.7}.vp-doc [class*=language-] code .diff.remove:before{content:"-";color:var(--vp-code-line-diff-remove-symbol-color)}.vp-doc [class*=language-] code .diff.add{background-color:var(--vp-code-line-diff-add-color)}.vp-doc [class*=language-] code .diff.add:before{content:"+";color:var(--vp-code-line-diff-add-symbol-color)}.vp-doc div[class*=language-].line-numbers-mode{padding-left:32px}.vp-doc .line-numbers-wrapper{position:absolute;top:0;bottom:0;left:0;z-index:3;border-right:1px solid var(--vp-code-block-divider-color);padding-top:20px;width:32px;text-align:center;font-family:var(--vp-font-family-mono);line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-line-number-color);transition:border-color .5s,color .5s}.vp-doc [class*=language-]>button.copy{direction:ltr;position:absolute;top:12px;right:12px;z-index:3;border:1px solid var(--vp-code-copy-code-border-color);border-radius:4px;width:40px;height:40px;background-color:var(--vp-code-copy-code-bg);opacity:0;cursor:pointer;background-image:var(--vp-icon-copy);background-position:50%;background-size:20px;background-repeat:no-repeat;transition:border-color .25s,background-color .25s,opacity .25s}.vp-doc [class*=language-]:hover>button.copy,.vp-doc [class*=language-]>button.copy:focus{opacity:1}.vp-doc [class*=language-]>button.copy:hover,.vp-doc [class*=language-]>button.copy.copied{border-color:var(--vp-code-copy-code-hover-border-color);background-color:var(--vp-code-copy-code-hover-bg)}.vp-doc [class*=language-]>button.copy.copied,.vp-doc [class*=language-]>button.copy:hover.copied{border-radius:0 4px 4px 0;background-color:var(--vp-code-copy-code-hover-bg);background-image:var(--vp-icon-copied)}.vp-doc [class*=language-]>button.copy.copied:before,.vp-doc [class*=language-]>button.copy:hover.copied:before{position:relative;top:-1px;transform:translate(calc(-100% - 1px));display:flex;justify-content:center;align-items:center;border:1px solid var(--vp-code-copy-code-hover-border-color);border-right:0;border-radius:4px 0 0 4px;padding:0 10px;width:fit-content;height:40px;text-align:center;font-size:12px;font-weight:500;color:var(--vp-code-copy-code-active-text);background-color:var(--vp-code-copy-code-hover-bg);white-space:nowrap;content:var(--vp-code-copy-copied-text-content)}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-code-lang-color);transition:color .4s,opacity .4s}.vp-doc [class*=language-]:hover>button.copy+span.lang,.vp-doc [class*=language-]>button.copy:focus+span.lang{opacity:0}.vp-doc .VPTeamMembers{margin-top:24px}.vp-doc .VPTeamMembers.small.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}.vp-doc .VPTeamMembers.small.count-2 .container,.vp-doc .VPTeamMembers.small.count-3 .container{max-width:100%!important}.vp-doc .VPTeamMembers.medium.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}:is(.vp-external-link-icon,.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(.no-icon):after{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:currentColor;color:var(--vp-c-text-3);flex-shrink:0;--icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");-webkit-mask-image:var(--icon);mask-image:var(--icon)}.vp-external-link-icon:after{content:""}.external-link-icon-enabled :is(.vp-doc a[href*="://"],.vp-doc a[target=_blank]):after{content:"";color:currentColor}.vp-sponsor{border-radius:16px;overflow:hidden}.vp-sponsor.aside{border-radius:12px}.vp-sponsor-section+.vp-sponsor-section{margin-top:4px}.vp-sponsor-tier{margin:0 0 4px!important;text-align:center;letter-spacing:1px!important;line-height:24px;width:100%;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-sponsor.normal .vp-sponsor-tier{padding:13px 0 11px;font-size:14px}.vp-sponsor.aside .vp-sponsor-tier{padding:9px 0 7px;font-size:12px}.vp-sponsor-grid+.vp-sponsor-tier{margin-top:4px}.vp-sponsor-grid{display:flex;flex-wrap:wrap;gap:4px}.vp-sponsor-grid.xmini .vp-sponsor-grid-link{height:64px}.vp-sponsor-grid.xmini .vp-sponsor-grid-image{max-width:64px;max-height:22px}.vp-sponsor-grid.mini .vp-sponsor-grid-link{height:72px}.vp-sponsor-grid.mini .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.small .vp-sponsor-grid-link{height:96px}.vp-sponsor-grid.small .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.medium .vp-sponsor-grid-link{height:112px}.vp-sponsor-grid.medium .vp-sponsor-grid-image{max-width:120px;max-height:36px}.vp-sponsor-grid.big .vp-sponsor-grid-link{height:184px}.vp-sponsor-grid.big .vp-sponsor-grid-image{max-width:192px;max-height:56px}.vp-sponsor-grid[data-vp-grid="2"] .vp-sponsor-grid-item{width:calc((100% - 4px)/2)}.vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item{width:calc((100% - 4px * 2) / 3)}.vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item{width:calc((100% - 12px)/4)}.vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item{width:calc((100% - 16px)/5)}.vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item{width:calc((100% - 4px * 5) / 6)}.vp-sponsor-grid-item{flex-shrink:0;width:100%;background-color:var(--vp-c-bg-soft);transition:background-color .25s}.vp-sponsor-grid-item:hover{background-color:var(--vp-c-default-soft)}.vp-sponsor-grid-item:hover .vp-sponsor-grid-image{filter:grayscale(0) invert(0)}.vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.dark .vp-sponsor-grid-item:hover{background-color:var(--vp-c-white)}.dark .vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.vp-sponsor-grid-link{display:flex}.vp-sponsor-grid-box{display:flex;justify-content:center;align-items:center;width:100%}.vp-sponsor-grid-image{max-width:100%;filter:grayscale(1);transition:filter .25s}.dark .vp-sponsor-grid-image{filter:grayscale(1) invert(1)}.VPBadge{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:12px;padding:0 10px;line-height:22px;font-size:12px;font-weight:500;transform:translateY(-2px)}.VPBadge.small{padding:0 6px;line-height:18px;font-size:10px;transform:translateY(-8px)}.VPDocFooter .VPBadge{display:none}.vp-doc h1>.VPBadge{margin-top:4px;vertical-align:top}.vp-doc h2>.VPBadge{margin-top:3px;padding:0 8px;vertical-align:top}.vp-doc h3>.VPBadge{vertical-align:middle}.vp-doc h4>.VPBadge,.vp-doc h5>.VPBadge,.vp-doc h6>.VPBadge{vertical-align:middle;line-height:18px}.VPBadge.info{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPBackdrop[data-v-b06cdb19]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vp-z-index-backdrop);background:var(--vp-backdrop-bg-color);transition:opacity .5s}.VPBackdrop.fade-enter-from[data-v-b06cdb19],.VPBackdrop.fade-leave-to[data-v-b06cdb19]{opacity:0}.VPBackdrop.fade-leave-active[data-v-b06cdb19]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-b06cdb19]{display:none}}.NotFound[data-v-951cab6c]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-951cab6c]{padding:96px 32px 168px}}.code[data-v-951cab6c]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-951cab6c]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-951cab6c]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-951cab6c]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-951cab6c]{padding-top:20px}.link[data-v-951cab6c]{display:inline-block;border:1px solid var(--vp-c-brand-1);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:border-color .25s,color .25s}.link[data-v-951cab6c]:hover{border-color:var(--vp-c-brand-2);color:var(--vp-c-brand-2)}.root[data-v-3f927ebe]{position:relative;z-index:1}.nested[data-v-3f927ebe]{padding-right:16px;padding-left:16px}.outline-link[data-v-3f927ebe]{display:block;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s}.outline-link[data-v-3f927ebe]:hover,.outline-link.active[data-v-3f927ebe]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-3f927ebe]{padding-left:13px}.VPDocAsideOutline[data-v-b38bf2ff]{display:none}.VPDocAsideOutline.has-outline[data-v-b38bf2ff]{display:block}.content[data-v-b38bf2ff]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-b38bf2ff]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:2px;border-radius:2px;height:18px;background-color:var(--vp-c-brand-1);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-b38bf2ff]{line-height:32px;font-size:14px;font-weight:600}.VPDocAside[data-v-6d7b3c46]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-6d7b3c46]{flex-grow:1}.VPDocAside[data-v-6d7b3c46] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-6d7b3c46] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-6d7b3c46] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-475f71b8]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-475f71b8]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-4f9813fa]{margin-top:64px}.edit-info[data-v-4f9813fa]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-4f9813fa]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-4f9813fa]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.edit-link-button[data-v-4f9813fa]:hover{color:var(--vp-c-brand-2)}.edit-link-icon[data-v-4f9813fa]{margin-right:8px}.prev-next[data-v-4f9813fa]{border-top:1px solid var(--vp-c-divider);padding-top:24px;display:grid;grid-row-gap:8px}@media (min-width: 640px){.prev-next[data-v-4f9813fa]{grid-template-columns:repeat(2,1fr);grid-column-gap:16px}}.pager-link[data-v-4f9813fa]{display:block;border:1px solid var(--vp-c-divider);border-radius:8px;padding:11px 16px 13px;width:100%;height:100%;transition:border-color .25s}.pager-link[data-v-4f9813fa]:hover{border-color:var(--vp-c-brand-1)}.pager-link.next[data-v-4f9813fa]{margin-left:auto;text-align:right}.desc[data-v-4f9813fa]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-4f9813fa]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.VPDoc[data-v-83890dd9]{padding:32px 24px 96px;width:100%}@media (min-width: 768px){.VPDoc[data-v-83890dd9]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-83890dd9]{padding:48px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-83890dd9]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-83890dd9]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-83890dd9]{display:flex;justify-content:center}.VPDoc .aside[data-v-83890dd9]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-83890dd9]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-83890dd9]{max-width:1104px}}.container[data-v-83890dd9]{margin:0 auto;width:100%}.aside[data-v-83890dd9]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-83890dd9]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-83890dd9]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 48px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-83890dd9]::-webkit-scrollbar{display:none}.aside-curtain[data-v-83890dd9]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-83890dd9]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px));padding-bottom:32px}.content[data-v-83890dd9]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-83890dd9]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-83890dd9]{order:1;margin:0;min-width:640px}}.content-container[data-v-83890dd9]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-83890dd9]{max-width:688px}.VPButton[data-v-14206e74]{display:inline-block;border:1px solid transparent;text-align:center;font-weight:600;white-space:nowrap;transition:color .25s,border-color .25s,background-color .25s}.VPButton[data-v-14206e74]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-14206e74]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-14206e74]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-14206e74]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-14206e74]:hover{border-color:var(--vp-button-brand-hover-border);color:var(--vp-button-brand-hover-text);background-color:var(--vp-button-brand-hover-bg)}.VPButton.brand[data-v-14206e74]:active{border-color:var(--vp-button-brand-active-border);color:var(--vp-button-brand-active-text);background-color:var(--vp-button-brand-active-bg)}.VPButton.alt[data-v-14206e74]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-14206e74]:hover{border-color:var(--vp-button-alt-hover-border);color:var(--vp-button-alt-hover-text);background-color:var(--vp-button-alt-hover-bg)}.VPButton.alt[data-v-14206e74]:active{border-color:var(--vp-button-alt-active-border);color:var(--vp-button-alt-active-text);background-color:var(--vp-button-alt-active-bg)}.VPButton.sponsor[data-v-14206e74]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-14206e74]:hover{border-color:var(--vp-button-sponsor-hover-border);color:var(--vp-button-sponsor-hover-text);background-color:var(--vp-button-sponsor-hover-bg)}.VPButton.sponsor[data-v-14206e74]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}html:not(.dark) .VPImage.dark[data-v-35a7d0b8]{display:none}.dark .VPImage.light[data-v-35a7d0b8]{display:none}.VPHero[data-v-955009fc]{margin-top:calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1);padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px) 24px 48px}@media (min-width: 640px){.VPHero[data-v-955009fc]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-955009fc]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-955009fc]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-955009fc]{flex-direction:row}}.main[data-v-955009fc]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-955009fc]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-955009fc]{text-align:left}}@media (min-width: 960px){.main[data-v-955009fc]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-955009fc]{max-width:592px}}.name[data-v-955009fc],.text[data-v-955009fc]{max-width:392px;letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;white-space:pre-wrap}.VPHero.has-image .name[data-v-955009fc],.VPHero.has-image .text[data-v-955009fc]{margin:0 auto}.name[data-v-955009fc]{color:var(--vp-home-hero-name-color)}.clip[data-v-955009fc]{background:var(--vp-home-hero-name-background);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:var(--vp-home-hero-name-color)}@media (min-width: 640px){.name[data-v-955009fc],.text[data-v-955009fc]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-955009fc],.text[data-v-955009fc]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-955009fc],.VPHero.has-image .text[data-v-955009fc]{margin:0}}.tagline[data-v-955009fc]{padding-top:8px;max-width:392px;line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--vp-c-text-2)}.VPHero.has-image .tagline[data-v-955009fc]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-955009fc]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-955009fc]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-955009fc]{margin:0}}.actions[data-v-955009fc]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-955009fc]{justify-content:center}@media (min-width: 640px){.actions[data-v-955009fc]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-955009fc]{justify-content:flex-start}}.action[data-v-955009fc]{flex-shrink:0;padding:6px}.image[data-v-955009fc]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-955009fc]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-955009fc]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-955009fc]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-955009fc]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-955009fc]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-955009fc]{position:absolute;top:50%;left:50%;border-radius:50%;width:192px;height:192px;background-image:var(--vp-home-hero-image-background-image);filter:var(--vp-home-hero-image-filter);transform:translate(-50%,-50%)}@media (min-width: 640px){.image-bg[data-v-955009fc]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-955009fc]{width:320px;height:320px}}[data-v-955009fc] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-955009fc] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-955009fc] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-f5e9645b]{display:block;border:1px solid var(--vp-c-bg-soft);border-radius:12px;height:100%;background-color:var(--vp-c-bg-soft);transition:border-color .25s,background-color .25s}.VPFeature.link[data-v-f5e9645b]:hover{border-color:var(--vp-c-brand-1)}.box[data-v-f5e9645b]{display:flex;flex-direction:column;padding:24px;height:100%}.box[data-v-f5e9645b]>.VPImage{margin-bottom:20px}.icon[data-v-f5e9645b]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-default-soft);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-f5e9645b]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-f5e9645b]{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.link-text[data-v-f5e9645b]{padding-top:8px}.link-text-value[data-v-f5e9645b]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.link-text-icon[data-v-f5e9645b]{margin-left:6px}.VPFeatures[data-v-d0a190d7]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-d0a190d7]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-d0a190d7]{padding:0 64px}}.container[data-v-d0a190d7]{margin:0 auto;max-width:1152px}.items[data-v-d0a190d7]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-d0a190d7]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-d0a190d7],.item.grid-4[data-v-d0a190d7],.item.grid-6[data-v-d0a190d7]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-d0a190d7],.item.grid-4[data-v-d0a190d7]{width:50%}.item.grid-3[data-v-d0a190d7],.item.grid-6[data-v-d0a190d7]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-d0a190d7]{width:25%}}.container[data-v-7a48a447]{margin:auto;width:100%;max-width:1280px;padding:0 24px}@media (min-width: 640px){.container[data-v-7a48a447]{padding:0 48px}}@media (min-width: 960px){.container[data-v-7a48a447]{width:100%;padding:0 64px}}.vp-doc[data-v-7a48a447] .VPHomeSponsors,.vp-doc[data-v-7a48a447] .VPTeamPage{margin-left:var(--vp-offset, calc(50% - 50vw) );margin-right:var(--vp-offset, calc(50% - 50vw) )}.vp-doc[data-v-7a48a447] .VPHomeSponsors h2{border-top:none;letter-spacing:normal}.vp-doc[data-v-7a48a447] .VPHomeSponsors a,.vp-doc[data-v-7a48a447] .VPTeamPage a{text-decoration:none}.VPHome[data-v-cbb6ec48]{margin-bottom:96px}@media (min-width: 768px){.VPHome[data-v-cbb6ec48]{margin-bottom:128px}}.VPContent[data-v-91765379]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-91765379]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-91765379]{margin:0}@media (min-width: 960px){.VPContent[data-v-91765379]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-91765379]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-91765379]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.VPFooter[data-v-c970a860]{position:relative;z-index:var(--vp-z-index-footer);border-top:1px solid var(--vp-c-gutter);padding:32px 24px;background-color:var(--vp-c-bg)}.VPFooter.has-sidebar[data-v-c970a860]{display:none}.VPFooter[data-v-c970a860] a{text-decoration-line:underline;text-underline-offset:2px;transition:color .25s}.VPFooter[data-v-c970a860] a:hover{color:var(--vp-c-text-1)}@media (min-width: 768px){.VPFooter[data-v-c970a860]{padding:32px}}.container[data-v-c970a860]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-c970a860],.copyright[data-v-c970a860]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.VPLocalNavOutlineDropdown[data-v-bc9dc845]{padding:12px 20px 11px}@media (min-width: 960px){.VPLocalNavOutlineDropdown[data-v-bc9dc845]{padding:12px 36px 11px}}.VPLocalNavOutlineDropdown button[data-v-bc9dc845]{display:block;font-size:12px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;position:relative}.VPLocalNavOutlineDropdown button[data-v-bc9dc845]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-bc9dc845]{color:var(--vp-c-text-1)}.icon[data-v-bc9dc845]{display:inline-block;vertical-align:middle;margin-left:2px;font-size:14px;transform:rotate(0);transition:transform .25s}@media (min-width: 960px){.VPLocalNavOutlineDropdown button[data-v-bc9dc845]{font-size:14px}.icon[data-v-bc9dc845]{font-size:16px}}.open>.icon[data-v-bc9dc845]{transform:rotate(90deg)}.items[data-v-bc9dc845]{position:absolute;top:40px;right:16px;left:16px;display:grid;gap:1px;border:1px solid var(--vp-c-border);border-radius:8px;background-color:var(--vp-c-gutter);max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}@media (min-width: 960px){.items[data-v-bc9dc845]{right:auto;left:calc(var(--vp-sidebar-width) + 32px);width:320px}}.header[data-v-bc9dc845]{background-color:var(--vp-c-bg-soft)}.top-link[data-v-bc9dc845]{display:block;padding:0 16px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.outline[data-v-bc9dc845]{padding:8px 0;background-color:var(--vp-c-bg-soft)}.flyout-enter-active[data-v-bc9dc845]{transition:all .2s ease-out}.flyout-leave-active[data-v-bc9dc845]{transition:all .15s ease-in}.flyout-enter-from[data-v-bc9dc845],.flyout-leave-to[data-v-bc9dc845]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-070ab83d]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);border-bottom:1px solid var(--vp-c-gutter);padding-top:var(--vp-layout-top-height, 0px);width:100%;background-color:var(--vp-local-nav-bg-color)}.VPLocalNav.fixed[data-v-070ab83d]{position:fixed}@media (min-width: 960px){.VPLocalNav[data-v-070ab83d]{top:var(--vp-nav-height)}.VPLocalNav.has-sidebar[data-v-070ab83d]{padding-left:var(--vp-sidebar-width)}.VPLocalNav.empty[data-v-070ab83d]{display:none}}@media (min-width: 1280px){.VPLocalNav[data-v-070ab83d]{display:none}}@media (min-width: 1440px){.VPLocalNav.has-sidebar[data-v-070ab83d]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.container[data-v-070ab83d]{display:flex;justify-content:space-between;align-items:center}.menu[data-v-070ab83d]{display:flex;align-items:center;padding:12px 24px 11px;line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.menu[data-v-070ab83d]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-070ab83d]{padding:0 32px}}@media (min-width: 960px){.menu[data-v-070ab83d]{display:none}}.menu-icon[data-v-070ab83d]{margin-right:8px;font-size:14px}.VPOutlineDropdown[data-v-070ab83d]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-070ab83d]{padding:12px 32px 11px}}.VPSwitch[data-v-4a1c76db]{position:relative;border-radius:11px;display:block;width:40px;height:22px;flex-shrink:0;border:1px solid var(--vp-input-border-color);background-color:var(--vp-input-switch-bg-color);transition:border-color .25s!important}.VPSwitch[data-v-4a1c76db]:hover{border-color:var(--vp-c-brand-1)}.check[data-v-4a1c76db]{position:absolute;top:1px;left:1px;width:18px;height:18px;border-radius:50%;background-color:var(--vp-c-neutral-inverse);box-shadow:var(--vp-shadow-1);transition:transform .25s!important}.icon[data-v-4a1c76db]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-4a1c76db] [class^=vpi-]{position:absolute;top:3px;left:3px;width:12px;height:12px;color:var(--vp-c-text-2)}.dark .icon[data-v-4a1c76db] [class^=vpi-]{color:var(--vp-c-text-1);transition:opacity .25s!important}.sun[data-v-e40a8bb6]{opacity:1}.moon[data-v-e40a8bb6],.dark .sun[data-v-e40a8bb6]{opacity:0}.dark .moon[data-v-e40a8bb6]{opacity:1}.dark .VPSwitchAppearance[data-v-e40a8bb6] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-af096f4a]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-af096f4a]{display:flex;align-items:center}}.VPMenuGroup+.VPMenuLink[data-v-8b74d055]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-8b74d055]{display:block;border-radius:6px;padding:0 12px;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);white-space:nowrap;transition:background-color .25s,color .25s}.link[data-v-8b74d055]:hover{color:var(--vp-c-brand-1);background-color:var(--vp-c-default-soft)}.link.active[data-v-8b74d055]{color:var(--vp-c-brand-1)}.VPMenuGroup[data-v-48c802d0]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-48c802d0]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-48c802d0]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-48c802d0]{padding:0 12px;line-height:32px;font-size:14px;font-weight:600;color:var(--vp-c-text-2);white-space:nowrap;transition:color .25s}.VPMenu[data-v-7dd3104a]{border-radius:12px;padding:12px;min-width:128px;border:1px solid var(--vp-c-divider);background-color:var(--vp-c-bg-elv);box-shadow:var(--vp-shadow-3);transition:background-color .5s;max-height:calc(100vh - var(--vp-nav-height));overflow-y:auto}.VPMenu[data-v-7dd3104a] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-7dd3104a] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-7dd3104a] .group:last-child{padding-bottom:0}.VPMenu[data-v-7dd3104a] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-7dd3104a] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-7dd3104a] .label{flex-grow:1;line-height:28px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.VPMenu[data-v-7dd3104a] .action{padding-left:24px}.VPFlyout[data-v-e5380155]{position:relative}.VPFlyout[data-v-e5380155]:hover{color:var(--vp-c-brand-1);transition:color .25s}.VPFlyout:hover .text[data-v-e5380155]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-e5380155]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-e5380155]{color:var(--vp-c-brand-1)}.VPFlyout.active:hover .text[data-v-e5380155]{color:var(--vp-c-brand-2)}.VPFlyout:hover .menu[data-v-e5380155],.button[aria-expanded=true]+.menu[data-v-e5380155]{opacity:1;visibility:visible;transform:translateY(0)}.button[aria-expanded=false]+.menu[data-v-e5380155]{opacity:0;visibility:hidden;transform:translateY(0)}.button[data-v-e5380155]{display:flex;align-items:center;padding:0 12px;height:var(--vp-nav-height);color:var(--vp-c-text-1);transition:color .5s}.text[data-v-e5380155]{display:flex;align-items:center;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.option-icon[data-v-e5380155]{margin-right:0;font-size:16px}.text-icon[data-v-e5380155]{margin-left:4px;font-size:14px}.icon[data-v-e5380155]{font-size:20px;transition:fill .25s}.menu[data-v-e5380155]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPSocialLink[data-v-717b8b75]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-717b8b75]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-717b8b75]>svg,.VPSocialLink[data-v-717b8b75]>[class^=vpi-social-]{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-ee7a9424]{display:flex;justify-content:center}.VPNavBarExtra[data-v-925effce]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-925effce]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-925effce]{display:none}}.trans-title[data-v-925effce]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-925effce],.item.social-links[data-v-925effce]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-925effce]{min-width:176px}.appearance-action[data-v-925effce]{margin-right:-2px}.social-links-list[data-v-925effce]{margin:-4px -8px}.VPNavBarHamburger[data-v-5dea55bf]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-5dea55bf]{display:none}}.container[data-v-5dea55bf]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-5dea55bf]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-5dea55bf]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-5dea55bf]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-5dea55bf]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-5dea55bf]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-5dea55bf]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-5dea55bf],.VPNavBarHamburger.active:hover .middle[data-v-5dea55bf],.VPNavBarHamburger.active:hover .bottom[data-v-5dea55bf]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-5dea55bf],.middle[data-v-5dea55bf],.bottom[data-v-5dea55bf]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-5dea55bf]{top:0;left:0;transform:translate(0)}.middle[data-v-5dea55bf]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-5dea55bf]{top:12px;left:0;transform:translate(4px)}.VPNavBarMenuLink[data-v-ed5ac1f6]{display:flex;align-items:center;padding:0 12px;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.VPNavBarMenuLink.active[data-v-ed5ac1f6],.VPNavBarMenuLink[data-v-ed5ac1f6]:hover{color:var(--vp-c-brand-1)}.VPNavBarMenu[data-v-e6d46098]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-e6d46098]{display:flex}}/*! @docsearch/css 3.6.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */:root{--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:rgba(101,108,133,.8);--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 hsla(0,0%,100%,.5),0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px rgba(30,35,90,.4);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 1px 0 rgba(30,35,90,.4);--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12)}html[data-theme=dark]{--docsearch-text-color:#f5f6f7;--docsearch-container-background:rgba(9,10,17,.8);--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 1px 1px 0 rgba(3,4,9,.30196078431372547);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}.DocSearch-Button{align-items:center;background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;display:flex;font-weight:500;height:36px;justify-content:space-between;margin:0 0 0 16px;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:none}.DocSearch-Button-Container{align-items:center;display:flex}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;position:relative;padding:0 0 2px;border:0;top:-1px;width:20px}.DocSearch-Button-Key--pressed{transform:translate3d(0,1px,0);box-shadow:var(--docsearch-key-pressed-shadow)}@media (max-width:768px){.DocSearch-Button-Keys,.DocSearch-Button-Placeholder{display:none}}.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:none;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator{display:none}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Reset{animation:fade-in .1s ease-in forwards;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Cancel{display:none}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--deleting{transition:none}}.DocSearch-Hit--deleting{opacity:0;transition:all .25s linear}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--favoriting{transition:none}}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:all .25s linear;transition-delay:.25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit[aria-selected=true] mark{text-decoration:underline}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color);stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{transition:none}}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li{align-items:center;display:flex}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:2px;box-shadow:var(--docsearch-key-shadow);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;color:var(--docsearch-muted-color);border:0;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:calc(var(--docsearch-vh, 1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}[class*=DocSearch]{--docsearch-primary-color: var(--vp-c-brand-1);--docsearch-highlight-color: var(--docsearch-primary-color);--docsearch-text-color: var(--vp-c-text-1);--docsearch-muted-color: var(--vp-c-text-2);--docsearch-searchbox-shadow: none;--docsearch-searchbox-background: transparent;--docsearch-searchbox-focus-background: transparent;--docsearch-key-gradient: transparent;--docsearch-key-shadow: none;--docsearch-modal-background: var(--vp-c-bg-soft);--docsearch-footer-background: var(--vp-c-bg)}.dark [class*=DocSearch]{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-default-soft);--docsearch-hit-color: var(--vp-c-text-2);--docsearch-hit-shadow: none}.DocSearch-Button{display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:48px;height:55px;background:transparent;transition:border-color .25s}.DocSearch-Button:hover{background:transparent}.DocSearch-Button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.DocSearch-Button-Key--pressed{transform:none;box-shadow:none}.DocSearch-Button:focus:not(:focus-visible){outline:none!important}@media (min-width: 768px){.DocSearch-Button{justify-content:flex-start;border:1px solid transparent;border-radius:8px;padding:0 10px 0 12px;width:100%;height:40px;background-color:var(--vp-c-bg-alt)}.DocSearch-Button:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-bg-alt)}}.DocSearch-Button .DocSearch-Button-Container{display:flex;align-items:center}.DocSearch-Button .DocSearch-Search-Icon{position:relative;width:16px;height:16px;color:var(--vp-c-text-1);fill:currentColor;transition:color .5s}.DocSearch-Button:hover .DocSearch-Search-Icon{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Search-Icon{top:1px;margin-right:8px;width:14px;height:14px;color:var(--vp-c-text-2)}}.DocSearch-Button .DocSearch-Button-Placeholder{display:none;margin-top:2px;padding:0 16px 0 0;font-size:13px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.DocSearch-Button:hover .DocSearch-Button-Placeholder{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Placeholder{display:inline-block}}.DocSearch-Button .DocSearch-Button-Keys{direction:ltr;display:none;min-width:auto}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Keys{display:flex;align-items:center}}.DocSearch-Button .DocSearch-Button-Key{display:block;margin:2px 0 0;border:1px solid var(--vp-c-divider);border-right:none;border-radius:4px 0 0 4px;padding-left:6px;min-width:0;width:auto;height:22px;line-height:22px;font-family:var(--vp-font-family-base);font-size:12px;font-weight:500;transition:color .5s,border-color .5s}.DocSearch-Button .DocSearch-Button-Key+.DocSearch-Button-Key{border-right:1px solid var(--vp-c-divider);border-left:none;border-radius:0 4px 4px 0;padding-left:2px;padding-right:6px}.DocSearch-Button .DocSearch-Button-Key:first-child{font-size:0!important}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"Ctrl";font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.mac .DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"⌘"}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.DocSearch-Search-Icon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' stroke-width='1.6' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='m14.386 14.386 4.088 4.088-4.088-4.088A7.533 7.533 0 1 1 3.733 3.733a7.533 7.533 0 0 1 10.653 10.653z'/%3E%3C/svg%3E")}.VPNavBarSearch{display:flex;align-items:center}@media (min-width: 768px){.VPNavBarSearch{flex-grow:1;padding-left:24px}}@media (min-width: 960px){.VPNavBarSearch{padding-left:32px}}.dark .DocSearch-Footer{border-top:1px solid var(--vp-c-divider)}.DocSearch-Form{border:1px solid var(--vp-c-brand-1);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-default-soft)}.DocSearch-Screen-Icon>svg{margin:auto}.VPNavBarSocialLinks[data-v-164c457f]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-164c457f]{display:flex;align-items:center}}.title[data-v-28a961f9]{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;height:var(--vp-nav-height);font-size:16px;font-weight:600;color:var(--vp-c-text-1);transition:opacity .25s}@media (min-width: 960px){.title[data-v-28a961f9]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-28a961f9]{border-bottom-color:var(--vp-c-divider)}}[data-v-28a961f9] .logo{margin-right:8px;height:var(--vp-nav-logo-height)}.VPNavBarTranslations[data-v-c80d9ad0]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-c80d9ad0]{display:flex;align-items:center}}.title[data-v-c80d9ad0]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPNavBar[data-v-822684d1]{position:relative;height:var(--vp-nav-height);pointer-events:none;white-space:nowrap;transition:background-color .25s}.VPNavBar.screen-open[data-v-822684d1]{transition:none;background-color:var(--vp-nav-bg-color);border-bottom:1px solid var(--vp-c-divider)}.VPNavBar[data-v-822684d1]:not(.home){background-color:var(--vp-nav-bg-color)}@media (min-width: 960px){.VPNavBar[data-v-822684d1]:not(.home){background-color:transparent}.VPNavBar[data-v-822684d1]:not(.has-sidebar):not(.home.top){background-color:var(--vp-nav-bg-color)}}.wrapper[data-v-822684d1]{padding:0 8px 0 24px}@media (min-width: 768px){.wrapper[data-v-822684d1]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar .wrapper[data-v-822684d1]{padding:0}}.container[data-v-822684d1]{display:flex;justify-content:space-between;margin:0 auto;max-width:calc(var(--vp-layout-max-width) - 64px);height:var(--vp-nav-height);pointer-events:none}.container>.title[data-v-822684d1],.container>.content[data-v-822684d1]{pointer-events:none}.container[data-v-822684d1] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-822684d1]{max-width:100%}}.title[data-v-822684d1]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-822684d1]{position:absolute;top:0;left:0;z-index:2;padding:0 32px;width:var(--vp-sidebar-width);height:var(--vp-nav-height);background-color:transparent}}@media (min-width: 1440px){.VPNavBar.has-sidebar .title[data-v-822684d1]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}.content[data-v-822684d1]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-822684d1]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-822684d1]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2 + 32px);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.content-body[data-v-822684d1]{display:flex;justify-content:flex-end;align-items:center;height:var(--vp-nav-height);transition:background-color .5s}@media (min-width: 960px){.VPNavBar:not(.home.top) .content-body[data-v-822684d1]{position:relative;background-color:var(--vp-nav-bg-color)}.VPNavBar:not(.has-sidebar):not(.home.top) .content-body[data-v-822684d1]{background-color:transparent}}@media (max-width: 767px){.content-body[data-v-822684d1]{column-gap:.5rem}}.menu+.translations[data-v-822684d1]:before,.menu+.appearance[data-v-822684d1]:before,.menu+.social-links[data-v-822684d1]:before,.translations+.appearance[data-v-822684d1]:before,.appearance+.social-links[data-v-822684d1]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-822684d1]:before,.translations+.appearance[data-v-822684d1]:before{margin-right:16px}.appearance+.social-links[data-v-822684d1]:before{margin-left:16px}.social-links[data-v-822684d1]{margin-right:-8px}.divider[data-v-822684d1]{width:100%;height:1px}@media (min-width: 960px){.VPNavBar.has-sidebar .divider[data-v-822684d1]{padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .divider[data-v-822684d1]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.divider-line[data-v-822684d1]{width:100%;height:1px;transition:background-color .5s}.VPNavBar:not(.home) .divider-line[data-v-822684d1]{background-color:var(--vp-c-gutter)}@media (min-width: 960px){.VPNavBar:not(.home.top) .divider-line[data-v-822684d1]{background-color:var(--vp-c-gutter)}.VPNavBar:not(.has-sidebar):not(.home.top) .divider[data-v-822684d1]{background-color:var(--vp-c-gutter)}}.VPNavScreenAppearance[data-v-ffb44008]{display:flex;justify-content:space-between;align-items:center;border-radius:8px;padding:12px 14px 12px 16px;background-color:var(--vp-c-bg-soft)}.text[data-v-ffb44008]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenMenuLink[data-v-27d04aeb]{display:block;border-bottom:1px solid var(--vp-c-divider);padding:12px 0 11px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:border-color .25s,color .25s}.VPNavScreenMenuLink[data-v-27d04aeb]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupLink[data-v-7179dbb7]{display:block;margin-left:12px;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-1);transition:color .25s}.VPNavScreenMenuGroupLink[data-v-7179dbb7]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupSection[data-v-4b8941ac]{display:block}.title[data-v-4b8941ac]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-875057a5]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-875057a5]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-875057a5]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-875057a5]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-875057a5]{padding-bottom:6px;color:var(--vp-c-brand-1)}.VPNavScreenMenuGroup.open .button-icon[data-v-875057a5]{transform:rotate(45deg)}.button[data-v-875057a5]{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 11px 0;width:100%;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.button[data-v-875057a5]:hover{color:var(--vp-c-brand-1)}.button-icon[data-v-875057a5]{transition:transform .25s}.group[data-v-875057a5]:first-child{padding-top:0}.group+.group[data-v-875057a5],.group+.item[data-v-875057a5]{padding-top:4px}.VPNavScreenTranslations[data-v-362991c2]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-362991c2]{height:auto}.title[data-v-362991c2]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-362991c2]{font-size:16px}.icon.lang[data-v-362991c2]{margin-right:8px}.icon.chevron[data-v-362991c2]{margin-left:4px}.list[data-v-362991c2]{padding:4px 0 0 24px}.link[data-v-362991c2]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-833aabba]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px));right:0;bottom:0;left:0;padding:0 32px;width:100%;background-color:var(--vp-nav-screen-bg-color);overflow-y:auto;transition:background-color .25s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-833aabba],.VPNavScreen.fade-leave-active[data-v-833aabba]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-833aabba],.VPNavScreen.fade-leave-active .container[data-v-833aabba]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-833aabba],.VPNavScreen.fade-leave-to[data-v-833aabba]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-833aabba],.VPNavScreen.fade-leave-to .container[data-v-833aabba]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-833aabba]{display:none}}.container[data-v-833aabba]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-833aabba],.menu+.appearance[data-v-833aabba],.translations+.appearance[data-v-833aabba]{margin-top:24px}.menu+.social-links[data-v-833aabba]{margin-top:16px}.appearance+.social-links[data-v-833aabba]{margin-top:16px}.VPNav[data-v-f1e365da]{position:relative;top:var(--vp-layout-top-height, 0px);left:0;z-index:var(--vp-z-index-nav);width:100%;pointer-events:none;transition:background-color .5s}@media (min-width: 960px){.VPNav[data-v-f1e365da]{position:fixed}}.VPSidebarItem.level-0[data-v-196b2e5f]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-196b2e5f]{padding-bottom:10px}.item[data-v-196b2e5f]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-196b2e5f]{cursor:pointer}.indicator[data-v-196b2e5f]{position:absolute;top:6px;bottom:6px;left:-17px;width:2px;border-radius:2px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-196b2e5f]{background-color:var(--vp-c-brand-1)}.link[data-v-196b2e5f]{display:flex;align-items:center;flex-grow:1}.text[data-v-196b2e5f]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-196b2e5f]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-196b2e5f],.VPSidebarItem.level-2 .text[data-v-196b2e5f],.VPSidebarItem.level-3 .text[data-v-196b2e5f],.VPSidebarItem.level-4 .text[data-v-196b2e5f],.VPSidebarItem.level-5 .text[data-v-196b2e5f]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-196b2e5f]{color:var(--vp-c-brand-1)}.VPSidebarItem.level-0.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-1.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-2.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-3.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-4.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-5.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-196b2e5f]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-196b2e5f]{color:var(--vp-c-brand-1)}.caret[data-v-196b2e5f]{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--vp-c-text-3);cursor:pointer;transition:color .25s;flex-shrink:0}.item:hover .caret[data-v-196b2e5f]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-196b2e5f]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-196b2e5f]{font-size:18px;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-196b2e5f]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-196b2e5f],.VPSidebarItem.level-2 .items[data-v-196b2e5f],.VPSidebarItem.level-3 .items[data-v-196b2e5f],.VPSidebarItem.level-4 .items[data-v-196b2e5f],.VPSidebarItem.level-5 .items[data-v-196b2e5f]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-196b2e5f]{display:none}.no-transition[data-v-9e426adc] .caret-icon{transition:none}.group+.group[data-v-9e426adc]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-9e426adc]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPSidebar[data-v-18756405]{position:fixed;top:var(--vp-layout-top-height, 0px);bottom:0;left:0;z-index:var(--vp-z-index-sidebar);padding:32px 32px 96px;width:calc(100vw - 64px);max-width:320px;background-color:var(--vp-sidebar-bg-color);opacity:0;box-shadow:var(--vp-c-shadow-3);overflow-x:hidden;overflow-y:auto;transform:translate(-100%);transition:opacity .5s,transform .25s ease;overscroll-behavior:contain}.VPSidebar.open[data-v-18756405]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-18756405]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-18756405]{padding-top:var(--vp-nav-height);width:var(--vp-sidebar-width);max-width:100%;background-color:var(--vp-sidebar-bg-color);opacity:1;visibility:visible;box-shadow:none;transform:translate(0)}}@media (min-width: 1440px){.VPSidebar[data-v-18756405]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}@media (min-width: 960px){.curtain[data-v-18756405]{position:sticky;top:-64px;left:0;z-index:1;margin-top:calc(var(--vp-nav-height) * -1);margin-right:-32px;margin-left:-32px;height:var(--vp-nav-height);background-color:var(--vp-sidebar-bg-color)}}.nav[data-v-18756405]{outline:0}.VPSkipLink[data-v-c3508ec8]{top:8px;left:8px;padding:8px 16px;z-index:999;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;color:var(--vp-c-brand-1);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-c3508ec8]:focus{height:auto;width:auto;clip:auto;clip-path:none}@media (min-width: 1280px){.VPSkipLink[data-v-c3508ec8]{top:14px;left:16px}}.Layout[data-v-a9a9e638]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-db81191c]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPHomeSponsors[data-v-db81191c]{margin:96px 0}@media (min-width: 768px){.VPHomeSponsors[data-v-db81191c]{margin:128px 0}}.VPHomeSponsors[data-v-db81191c]{padding:0 24px}@media (min-width: 768px){.VPHomeSponsors[data-v-db81191c]{padding:0 48px}}@media (min-width: 960px){.VPHomeSponsors[data-v-db81191c]{padding:0 64px}}.container[data-v-db81191c]{margin:0 auto;max-width:1152px}.love[data-v-db81191c]{margin:0 auto;width:fit-content;font-size:28px;color:var(--vp-c-text-3)}.icon[data-v-db81191c]{display:inline-block}.message[data-v-db81191c]{margin:0 auto;padding-top:10px;max-width:320px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.sponsors[data-v-db81191c]{padding-top:32px}.action[data-v-db81191c]{padding-top:40px;text-align:center}.VPTeamPage[data-v-c2f8e101]{margin:96px 0}@media (min-width: 768px){.VPTeamPage[data-v-c2f8e101]{margin:128px 0}}.VPHome .VPTeamPageTitle[data-v-c2f8e101-s]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPTeamPageSection+.VPTeamPageSection[data-v-c2f8e101-s],.VPTeamMembers+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-c2f8e101-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-c2f8e101-s],.VPTeamMembers+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:96px}}.VPTeamMembers[data-v-c2f8e101-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-c2f8e101-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-c2f8e101-s]{padding:0 64px}}.VPTeamPageTitle[data-v-e277e15c]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-e277e15c]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-e277e15c]{padding:80px 64px 48px}}.title[data-v-e277e15c]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-e277e15c]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-e277e15c]{margin:0 auto;max-width:512px;padding-top:12px;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 768px){.lead[data-v-e277e15c]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-d43bc49d]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-d43bc49d]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-d43bc49d]{padding:0 64px}}.title[data-v-d43bc49d]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-d43bc49d]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-d43bc49d]{position:relative;display:inline-block;padding:0 24px;letter-spacing:0;line-height:32px;font-size:20px;font-weight:500;background-color:var(--vp-c-bg)}.lead[data-v-d43bc49d]{margin:0 auto;max-width:480px;padding-top:12px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.members[data-v-d43bc49d]{padding-top:40px}.VPTeamMembersItem[data-v-f9987cb6]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-f9987cb6]{padding:32px}.VPTeamMembersItem.small .data[data-v-f9987cb6]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-f9987cb6]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-f9987cb6]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-f9987cb6]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-f9987cb6]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-f9987cb6]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-f9987cb6]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-f9987cb6]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-f9987cb6]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-f9987cb6]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-f9987cb6]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-f9987cb6]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-f9987cb6]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-f9987cb6]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-f9987cb6]{text-align:center}.avatar[data-v-f9987cb6]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-f9987cb6]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-f9987cb6]{margin:0;font-weight:600}.affiliation[data-v-f9987cb6]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-f9987cb6]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-f9987cb6]:hover{color:var(--vp-c-brand-1)}.desc[data-v-f9987cb6]{margin:0 auto}.desc[data-v-f9987cb6] a{font-weight:500;color:var(--vp-c-brand-1);text-decoration-style:dotted;transition:color .25s}.links[data-v-f9987cb6]{display:flex;justify-content:center;height:56px}.sp-link[data-v-f9987cb6]{display:flex;justify-content:center;align-items:center;text-align:center;padding:16px;font-size:14px;font-weight:500;color:var(--vp-c-sponsor);background-color:var(--vp-c-bg-soft);transition:color .25s,background-color .25s}.sp .sp-link.link[data-v-f9987cb6]:hover,.sp .sp-link.link[data-v-f9987cb6]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-f9987cb6]{margin-right:8px;font-size:16px}.VPTeamMembers.small .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-fba19bad]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-fba19bad]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-fba19bad]{max-width:876px}.VPTeamMembers.medium .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-fba19bad]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-fba19bad]{max-width:760px}.container[data-v-fba19bad]{display:grid;gap:24px;margin:0 auto;max-width:1152px}:root{--vp-plugin-tabs-tab-text-color: var(--vp-c-text-2);--vp-plugin-tabs-tab-active-text-color: var(--vp-c-text-1);--vp-plugin-tabs-tab-hover-text-color: var(--vp-c-text-1);--vp-plugin-tabs-tab-bg: var(--vp-c-bg-soft);--vp-plugin-tabs-tab-divider: var(--vp-c-divider);--vp-plugin-tabs-tab-active-bar-color: var(--vp-c-brand-1)}.plugin-tabs{margin:16px 0;background-color:var(--vp-plugin-tabs-tab-bg);border-radius:8px}.plugin-tabs--tab-list{position:relative;padding:0 12px;overflow-x:auto;overflow-y:hidden}.plugin-tabs--tab-list:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:var(--vp-plugin-tabs-tab-divider)}.plugin-tabs--tab{position:relative;padding:0 12px;line-height:48px;border-bottom:2px solid transparent;color:var(--vp-plugin-tabs-tab-text-color);font-size:14px;font-weight:500;white-space:nowrap;transition:color .25s}.plugin-tabs--tab[aria-selected=true]{color:var(--vp-plugin-tabs-tab-active-text-color)}.plugin-tabs--tab:hover{color:var(--vp-plugin-tabs-tab-hover-text-color)}.plugin-tabs--tab:after{content:"";position:absolute;bottom:-2px;left:8px;right:8px;height:2px;background-color:transparent;transition:background-color .25s;z-index:1}.plugin-tabs--tab[aria-selected=true]:after{background-color:var(--vp-plugin-tabs-tab-active-bar-color)}.plugin-tabs--content[data-v-9b0d03d2]{padding:16px}.plugin-tabs--content[data-v-9b0d03d2]>:first-child:first-child{margin-top:0}.plugin-tabs--content[data-v-9b0d03d2]>:last-child:last-child{margin-bottom:0}.plugin-tabs--content[data-v-9b0d03d2]>div[class*=language-]{border-radius:8px;margin:16px 0}:root:not(.dark) .plugin-tabs--content[data-v-9b0d03d2] div[class*=language-]{background-color:var(--vp-c-bg)}.VPVersionPicker[data-v-f465cb49] button .text{color:var(--vp-c-text-1)!important}.VPVersionPicker[data-v-f465cb49]:hover button .text{color:var(--vp-c-text-2)!important}.VPHero .clip{white-space:pre;max-width:500px}:root{--vp-font-family-base: "Barlow", "Inter var experimental", "Inter var", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--vp-font-family-mono: "Fira Code", Menlo, Monaco, Consolas, "Courier New", monospace}:root{--julia-blue: #5fd7ff ;--julia-purple: #5fd7ff;--julia-red: #CB3C33;--julia-green: #0087d7;--vp-c-brand: #0087d7;--vp-c-brand-light: #0087d7;--vp-c-brand-lighter: #5fd7ff ;--vp-c-brand-lightest: #5fd7ff ;--vp-c-brand-dark: #5fd7ff;--vp-c-brand-darker: #5fd7ff ;--vp-c-brand-dimm: #212425}:root{--vp-button-brand-border: var(--vp-c-brand-light);--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand);--vp-button-brand-hover-border: var(--vp-c-brand-light);--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-light);--vp-button-brand-active-border: var(--vp-c-brand-light);--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-button-brand-bg)}:root{--vp-home-hero-name-color: transparent;--vp-home-hero-name-background: -webkit-linear-gradient( 120deg, #ff875f 30%, #0087d7 );--vp-home-hero-image-background-image: linear-gradient( -45deg, #0087d7 35%, #0087d7 35%, #ff875f );--vp-home-hero-image-filter: blur(40px)}@media (min-width: 640px){:root{--vp-home-hero-image-filter: blur(56px)}}@media (min-width: 960px){:root{--vp-home-hero-image-filter: blur(72px)}}:root.dark{--vp-custom-block-tip-border: var(--vp-c-brand);--vp-custom-block-tip-text: var(--vp-c-brand-lightest);--vp-custom-block-tip-bg: var(--vp-c-brand-dimm);--vp-c-black: hsl(220 20% 9%);--vp-c-black-pure: hsl(220, 24%, 4%);--vp-c-black-soft: hsl(220 16% 13%);--vp-c-black-mute: hsl(220 14% 17%);--vp-c-gray: hsl(220 8% 56%);--vp-c-gray-dark-1: hsl(220 10% 39%);--vp-c-gray-dark-2: hsl(220 12% 28%);--vp-c-gray-dark-3: hsl(220 12% 23%);--vp-c-gray-dark-4: hsl(220 14% 17%);--vp-c-gray-dark-5: hsl(220 16% 13%);--vp-c-bg: hsl(240, 2%, 11%);--vp-custom-block-info-bg: hsl(220 14% 17%);--vp-c-gutter: hsl(220 20% 9%);--vp-c-bg-alt: hsl(220 20% 9%);--vp-c-bg-soft: hsl(220 14% 17%);--vp-c-bg-mute: hsl(220 12% 23%)}.DocSearch{--docsearch-primary-color: var(--vp-c-brand) !important}mjx-container>svg{display:block;margin:auto}mjx-container{padding:.5rem 0}mjx-container{display:inline-block;margin:auto 2px -2px}mjx-container>svg{margin:auto;display:inline-block}:root{--vp-c-brand-1: #ff875f;--vp-c-brand-2: #ff875f;--vp-c-brand-3: #ff875f;--vp-c-sponsor: #ca2971;--vitest-c-sponsor-hover: #c13071}.dark{--vp-c-brand-1: #0087d7;--vp-c-brand-2: #0087d7;--vp-c-brand-3: #0087d7;--vp-c-sponsor: #ee4e95;--vitest-c-sponsor-hover: #e51370}.VPDoc.has-aside .content-container{max-width:100%!important}.aside{max-width:200px!important;padding-left:0!important}.VPDoc{padding-top:15px!important;padding-left:5px!important}.VPDocOutlineItem li{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:200px}.VPNavBar .title{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}@media (max-width: 960px){.VPDoc{padding-left:25px!important}}.VPLocalSearchBox[data-v-5b749456]{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:flex}.backdrop[data-v-5b749456]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--vp-backdrop-bg-color);transition:opacity .5s}.shell[data-v-5b749456]{position:relative;padding:12px;margin:64px auto;display:flex;flex-direction:column;gap:16px;background:var(--vp-local-search-bg);width:min(100vw - 60px,900px);height:min-content;max-height:min(100vh - 128px,900px);border-radius:6px}@media (max-width: 767px){.shell[data-v-5b749456]{margin:0;width:100vw;height:100vh;max-height:none;border-radius:0}}.search-bar[data-v-5b749456]{border:1px solid var(--vp-c-divider);border-radius:4px;display:flex;align-items:center;padding:0 12px;cursor:text}@media (max-width: 767px){.search-bar[data-v-5b749456]{padding:0 8px}}.search-bar[data-v-5b749456]:focus-within{border-color:var(--vp-c-brand-1)}.local-search-icon[data-v-5b749456]{display:block;font-size:18px}.navigate-icon[data-v-5b749456]{display:block;font-size:14px}.search-icon[data-v-5b749456]{margin:8px}@media (max-width: 767px){.search-icon[data-v-5b749456]{display:none}}.search-input[data-v-5b749456]{padding:6px 12px;font-size:inherit;width:100%}@media (max-width: 767px){.search-input[data-v-5b749456]{padding:6px 4px}}.search-actions[data-v-5b749456]{display:flex;gap:4px}@media (any-pointer: coarse){.search-actions[data-v-5b749456]{gap:8px}}@media (min-width: 769px){.search-actions.before[data-v-5b749456]{display:none}}.search-actions button[data-v-5b749456]{padding:8px}.search-actions button[data-v-5b749456]:not([disabled]):hover,.toggle-layout-button.detailed-list[data-v-5b749456]{color:var(--vp-c-brand-1)}.search-actions button.clear-button[data-v-5b749456]:disabled{opacity:.37}.search-keyboard-shortcuts[data-v-5b749456]{font-size:.8rem;opacity:75%;display:flex;flex-wrap:wrap;gap:16px;line-height:14px}.search-keyboard-shortcuts span[data-v-5b749456]{display:flex;align-items:center;gap:4px}@media (max-width: 767px){.search-keyboard-shortcuts[data-v-5b749456]{display:none}}.search-keyboard-shortcuts kbd[data-v-5b749456]{background:#8080801a;border-radius:4px;padding:3px 6px;min-width:24px;display:inline-block;text-align:center;vertical-align:middle;border:1px solid rgba(128,128,128,.15);box-shadow:0 2px 2px #0000001a}.results[data-v-5b749456]{display:flex;flex-direction:column;gap:6px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.result[data-v-5b749456]{display:flex;align-items:center;gap:8px;border-radius:4px;transition:none;line-height:1rem;border:solid 2px var(--vp-local-search-result-border);outline:none}.result>div[data-v-5b749456]{margin:12px;width:100%;overflow:hidden}@media (max-width: 767px){.result>div[data-v-5b749456]{margin:8px}}.titles[data-v-5b749456]{display:flex;flex-wrap:wrap;gap:4px;position:relative;z-index:1001;padding:2px 0}.title[data-v-5b749456]{display:flex;align-items:center;gap:4px}.title.main[data-v-5b749456]{font-weight:500}.title-icon[data-v-5b749456]{opacity:.5;font-weight:500;color:var(--vp-c-brand-1)}.title svg[data-v-5b749456]{opacity:.5}.result.selected[data-v-5b749456]{--vp-local-search-result-bg: var(--vp-local-search-result-selected-bg);border-color:var(--vp-local-search-result-selected-border)}.excerpt-wrapper[data-v-5b749456]{position:relative}.excerpt[data-v-5b749456]{opacity:50%;pointer-events:none;max-height:140px;overflow:hidden;position:relative;margin-top:4px}.result.selected .excerpt[data-v-5b749456]{opacity:1}.excerpt[data-v-5b749456] *{font-size:.8rem!important;line-height:130%!important}.titles[data-v-5b749456] mark,.excerpt[data-v-5b749456] mark{background-color:var(--vp-local-search-highlight-bg);color:var(--vp-local-search-highlight-text);border-radius:2px;padding:0 2px}.excerpt[data-v-5b749456] .vp-code-group .tabs{display:none}.excerpt[data-v-5b749456] .vp-code-group div[class*=language-]{border-radius:8px!important}.excerpt-gradient-bottom[data-v-5b749456]{position:absolute;bottom:-1px;left:0;width:100%;height:8px;background:linear-gradient(transparent,var(--vp-local-search-result-bg));z-index:1000}.excerpt-gradient-top[data-v-5b749456]{position:absolute;top:-1px;left:0;width:100%;height:8px;background:linear-gradient(var(--vp-local-search-result-bg),transparent);z-index:1000}.result.selected .titles[data-v-5b749456],.result.selected .title-icon[data-v-5b749456]{color:var(--vp-c-brand-1)!important}.no-results[data-v-5b749456]{font-size:.9rem;text-align:center;padding:12px}svg[data-v-5b749456]{flex:none} +@import"https://fonts.googleapis.com/css?family=Space+Mono:regular,italic,700,700italic";@import"https://fonts.googleapis.com/css?family=Space+Grotesk:regular,italic,700,700italic";@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-cyrillic.C5lxZ8CY.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-greek-ext.CqjqNYQ-.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-greek.BBVDIX6e.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-vietnamese.BjW4sHH5.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-latin-ext.4ZJIpNVo.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-cyrillic-ext.r48I6akx.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-cyrillic.By2_1cv3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-greek-ext.1u6EdAuj.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-greek.DJ8dCoTZ.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-vietnamese.BSbpV94h.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-latin-ext.CN1xVJS-.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/DimensionalData.jl/dev/assets/inter-italic-latin.C2AdPX0b.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Punctuation SC;font-weight:400;src:local("PingFang SC Regular"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:500;src:local("PingFang SC Medium"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:600;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:700;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white)}.dark{--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black)}:root{--vp-c-gray-1: #dddde3;--vp-c-gray-2: #e4e4e9;--vp-c-gray-3: #ebebef;--vp-c-gray-soft: rgba(142, 150, 170, .14);--vp-c-indigo-1: #3451b2;--vp-c-indigo-2: #3a5ccc;--vp-c-indigo-3: #5672cd;--vp-c-indigo-soft: rgba(100, 108, 255, .14);--vp-c-purple-1: #6f42c1;--vp-c-purple-2: #7e4cc9;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .14);--vp-c-green-1: #18794e;--vp-c-green-2: #299764;--vp-c-green-3: #30a46c;--vp-c-green-soft: rgba(16, 185, 129, .14);--vp-c-yellow-1: #915930;--vp-c-yellow-2: #946300;--vp-c-yellow-3: #9f6a00;--vp-c-yellow-soft: rgba(234, 179, 8, .14);--vp-c-red-1: #b8272c;--vp-c-red-2: #d5393e;--vp-c-red-3: #e0575b;--vp-c-red-soft: rgba(244, 63, 94, .14);--vp-c-sponsor: #db2777}.dark{--vp-c-gray-1: #515c67;--vp-c-gray-2: #414853;--vp-c-gray-3: #32363f;--vp-c-gray-soft: rgba(101, 117, 133, .16);--vp-c-indigo-1: #a8b1ff;--vp-c-indigo-2: #5c73e7;--vp-c-indigo-3: #3e63dd;--vp-c-indigo-soft: rgba(100, 108, 255, .16);--vp-c-purple-1: #c8abfa;--vp-c-purple-2: #a879e6;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .16);--vp-c-green-1: #3dd68c;--vp-c-green-2: #30a46c;--vp-c-green-3: #298459;--vp-c-green-soft: rgba(16, 185, 129, .16);--vp-c-yellow-1: #f9b44e;--vp-c-yellow-2: #da8b17;--vp-c-yellow-3: #a46a0a;--vp-c-yellow-soft: rgba(234, 179, 8, .16);--vp-c-red-1: #f66f81;--vp-c-red-2: #f14158;--vp-c-red-3: #b62a3c;--vp-c-red-soft: rgba(244, 63, 94, .16)}:root{--vp-c-bg: #ffffff;--vp-c-bg-alt: #f6f6f7;--vp-c-bg-elv: #ffffff;--vp-c-bg-soft: #f6f6f7}.dark{--vp-c-bg: #1b1b1f;--vp-c-bg-alt: #161618;--vp-c-bg-elv: #202127;--vp-c-bg-soft: #202127}:root{--vp-c-border: #c2c2c4;--vp-c-divider: #e2e2e3;--vp-c-gutter: #e2e2e3}.dark{--vp-c-border: #3c3f44;--vp-c-divider: #2e2e32;--vp-c-gutter: #000000}:root{--vp-c-text-1: rgba(60, 60, 67);--vp-c-text-2: rgba(60, 60, 67, .78);--vp-c-text-3: rgba(60, 60, 67, .56)}.dark{--vp-c-text-1: rgba(255, 255, 245, .86);--vp-c-text-2: rgba(235, 235, 245, .6);--vp-c-text-3: rgba(235, 235, 245, .38)}:root{--vp-c-default-1: var(--vp-c-gray-1);--vp-c-default-2: var(--vp-c-gray-2);--vp-c-default-3: var(--vp-c-gray-3);--vp-c-default-soft: var(--vp-c-gray-soft);--vp-c-brand-1: var(--vp-c-indigo-1);--vp-c-brand-2: var(--vp-c-indigo-2);--vp-c-brand-3: var(--vp-c-indigo-3);--vp-c-brand-soft: var(--vp-c-indigo-soft);--vp-c-brand: var(--vp-c-brand-1);--vp-c-tip-1: var(--vp-c-brand-1);--vp-c-tip-2: var(--vp-c-brand-2);--vp-c-tip-3: var(--vp-c-brand-3);--vp-c-tip-soft: var(--vp-c-brand-soft);--vp-c-note-1: var(--vp-c-brand-1);--vp-c-note-2: var(--vp-c-brand-2);--vp-c-note-3: var(--vp-c-brand-3);--vp-c-note-soft: var(--vp-c-brand-soft);--vp-c-success-1: var(--vp-c-green-1);--vp-c-success-2: var(--vp-c-green-2);--vp-c-success-3: var(--vp-c-green-3);--vp-c-success-soft: var(--vp-c-green-soft);--vp-c-important-1: var(--vp-c-purple-1);--vp-c-important-2: var(--vp-c-purple-2);--vp-c-important-3: var(--vp-c-purple-3);--vp-c-important-soft: var(--vp-c-purple-soft);--vp-c-warning-1: var(--vp-c-yellow-1);--vp-c-warning-2: var(--vp-c-yellow-2);--vp-c-warning-3: var(--vp-c-yellow-3);--vp-c-warning-soft: var(--vp-c-yellow-soft);--vp-c-danger-1: var(--vp-c-red-1);--vp-c-danger-2: var(--vp-c-red-2);--vp-c-danger-3: var(--vp-c-red-3);--vp-c-danger-soft: var(--vp-c-red-soft);--vp-c-caution-1: var(--vp-c-red-1);--vp-c-caution-2: var(--vp-c-red-2);--vp-c-caution-3: var(--vp-c-red-3);--vp-c-caution-soft: var(--vp-c-red-soft)}:root{--vp-font-family-base: "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;font-optical-sizing:auto}:root:where(:lang(zh)){--vp-font-family-base: "Punctuation SC", "Inter", ui-sans-serif, system-ui, "PingFang SC", "Noto Sans CJK SC", "Noto Sans SC", "Heiti SC", "Microsoft YaHei", "DengXian", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}:root{--vp-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--vp-shadow-2: 0 3px 12px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .07);--vp-shadow-3: 0 12px 32px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .08);--vp-shadow-4: 0 14px 44px rgba(0, 0, 0, .12), 0 3px 9px rgba(0, 0, 0, .12);--vp-shadow-5: 0 18px 56px rgba(0, 0, 0, .16), 0 4px 12px rgba(0, 0, 0, .16)}:root{--vp-z-index-footer: 10;--vp-z-index-local-nav: 20;--vp-z-index-nav: 30;--vp-z-index-layout-top: 40;--vp-z-index-backdrop: 50;--vp-z-index-sidebar: 60}@media (min-width: 960px){:root{--vp-z-index-sidebar: 25}}:root{--vp-layout-max-width: 1440px}:root{--vp-header-anchor-symbol: "#"}:root{--vp-code-line-height: 1.7;--vp-code-font-size: .875em;--vp-code-color: var(--vp-c-brand-1);--vp-code-link-color: var(--vp-c-brand-1);--vp-code-link-hover-color: var(--vp-c-brand-2);--vp-code-bg: var(--vp-c-default-soft);--vp-code-block-color: var(--vp-c-text-2);--vp-code-block-bg: var(--vp-c-bg-alt);--vp-code-block-divider-color: var(--vp-c-gutter);--vp-code-lang-color: var(--vp-c-text-3);--vp-code-line-highlight-color: var(--vp-c-default-soft);--vp-code-line-number-color: var(--vp-c-text-3);--vp-code-line-diff-add-color: var(--vp-c-success-soft);--vp-code-line-diff-add-symbol-color: var(--vp-c-success-1);--vp-code-line-diff-remove-color: var(--vp-c-danger-soft);--vp-code-line-diff-remove-symbol-color: var(--vp-c-danger-1);--vp-code-line-warning-color: var(--vp-c-warning-soft);--vp-code-line-error-color: var(--vp-c-danger-soft);--vp-code-copy-code-border-color: var(--vp-c-divider);--vp-code-copy-code-bg: var(--vp-c-bg-soft);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-c-bg);--vp-code-copy-code-active-text: var(--vp-c-text-2);--vp-code-copy-copied-text-content: "Copied";--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-1);--vp-code-tab-active-text-color: var(--vp-c-text-1);--vp-code-tab-active-bar-color: var(--vp-c-brand-1)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1);--vp-button-alt-border: transparent;--vp-button-alt-text: var(--vp-c-text-1);--vp-button-alt-bg: var(--vp-c-default-3);--vp-button-alt-hover-border: transparent;--vp-button-alt-hover-text: var(--vp-c-text-1);--vp-button-alt-hover-bg: var(--vp-c-default-2);--vp-button-alt-active-border: transparent;--vp-button-alt-active-text: var(--vp-c-text-1);--vp-button-alt-active-bg: var(--vp-c-default-1);--vp-button-sponsor-border: var(--vp-c-text-2);--vp-button-sponsor-text: var(--vp-c-text-2);--vp-button-sponsor-bg: transparent;--vp-button-sponsor-hover-border: var(--vp-c-sponsor);--vp-button-sponsor-hover-text: var(--vp-c-sponsor);--vp-button-sponsor-hover-bg: transparent;--vp-button-sponsor-active-border: var(--vp-c-sponsor);--vp-button-sponsor-active-text: var(--vp-c-sponsor);--vp-button-sponsor-active-bg: transparent}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: transparent;--vp-custom-block-info-text: var(--vp-c-text-1);--vp-custom-block-info-bg: var(--vp-c-default-soft);--vp-custom-block-info-code-bg: var(--vp-c-default-soft);--vp-custom-block-note-border: transparent;--vp-custom-block-note-text: var(--vp-c-text-1);--vp-custom-block-note-bg: var(--vp-c-default-soft);--vp-custom-block-note-code-bg: var(--vp-c-default-soft);--vp-custom-block-tip-border: transparent;--vp-custom-block-tip-text: var(--vp-c-text-1);--vp-custom-block-tip-bg: var(--vp-c-tip-soft);--vp-custom-block-tip-code-bg: var(--vp-c-tip-soft);--vp-custom-block-important-border: transparent;--vp-custom-block-important-text: var(--vp-c-text-1);--vp-custom-block-important-bg: var(--vp-c-important-soft);--vp-custom-block-important-code-bg: var(--vp-c-important-soft);--vp-custom-block-warning-border: transparent;--vp-custom-block-warning-text: var(--vp-c-text-1);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-soft);--vp-custom-block-danger-border: transparent;--vp-custom-block-danger-text: var(--vp-c-text-1);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);--vp-custom-block-caution-border: transparent;--vp-custom-block-caution-text: var(--vp-c-text-1);--vp-custom-block-caution-bg: var(--vp-c-caution-soft);--vp-custom-block-caution-code-bg: var(--vp-c-caution-soft);--vp-custom-block-details-border: var(--vp-custom-block-info-border);--vp-custom-block-details-text: var(--vp-custom-block-info-text);--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);--vp-custom-block-details-code-bg: var(--vp-custom-block-info-code-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-switch-bg-color: var(--vp-c-default-soft)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg);--vp-nav-logo-height: 24px}.hide-nav{--vp-nav-height: 0px}.hide-nav .VPSidebar{--vp-nav-height: 22px}:root{--vp-local-nav-bg-color: var(--vp-c-bg)}:root{--vp-sidebar-width: 272px;--vp-sidebar-bg-color: var(--vp-c-bg-alt)}:root{--vp-backdrop-bg-color: rgba(0, 0, 0, .6)}:root{--vp-home-hero-name-color: var(--vp-c-brand-1);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: transparent;--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-default-soft);--vp-badge-tip-border: transparent;--vp-badge-tip-text: var(--vp-c-tip-1);--vp-badge-tip-bg: var(--vp-c-tip-soft);--vp-badge-warning-border: transparent;--vp-badge-warning-text: var(--vp-c-warning-1);--vp-badge-warning-bg: var(--vp-c-warning-soft);--vp-badge-danger-border: transparent;--vp-badge-danger-text: var(--vp-c-danger-1);--vp-badge-danger-bg: var(--vp-c-danger-soft)}:root{--vp-carbon-ads-text-color: var(--vp-c-text-1);--vp-carbon-ads-poweredby-color: var(--vp-c-text-2);--vp-carbon-ads-bg-color: var(--vp-c-bg-soft);--vp-carbon-ads-hover-text-color: var(--vp-c-brand-1);--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)}:root{--vp-local-search-bg: var(--vp-c-bg);--vp-local-search-result-bg: var(--vp-c-bg);--vp-local-search-result-border: var(--vp-c-divider);--vp-local-search-result-selected-bg: var(--vp-c-bg);--vp-local-search-result-selected-border: var(--vp-c-brand-1);--vp-local-search-highlight-bg: var(--vp-c-brand-1);--vp-local-search-highlight-text: var(--vp-c-neutral-inverse)}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important}}*,:before,:after{box-sizing:border-box}html{line-height:1.4;font-size:16px;-webkit-text-size-adjust:100%}html.dark{color-scheme:dark}body{margin:0;width:100%;min-width:320px;min-height:100vh;line-height:24px;font-family:var(--vp-font-family-base);font-size:16px;font-weight:400;color:var(--vp-c-text-1);background-color:var(--vp-c-bg);font-synthesis:style;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}h1,h2,h3,h4,h5,h6{margin:0;line-height:24px;font-size:16px;font-weight:400}p{margin:0}strong,b{font-weight:600}a,area,button,[role=button],input,label,select,summary,textarea{touch-action:manipulation}a{color:inherit;text-decoration:inherit}ol,ul{list-style:none;margin:0;padding:0}blockquote{margin:0}pre,code,kbd,samp{font-family:var(--vp-font-family-mono)}img,svg,video,canvas,audio,iframe,embed,object{display:block}figure{margin:0}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{border:0;padding:0;line-height:inherit;color:inherit}button{padding:0;font-family:inherit;background-color:transparent;background-image:none}button:enabled,[role=button]:enabled{cursor:pointer}button:focus,button:focus-visible{outline:1px dotted;outline:4px auto -webkit-focus-ring-color}button:focus:not(:focus-visible){outline:none!important}input:focus,textarea:focus,select:focus{outline:none}table{border-collapse:collapse}input{background-color:transparent}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--vp-c-text-3)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--vp-c-text-3)}input::placeholder,textarea::placeholder{color:var(--vp-c-text-3)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}textarea{resize:vertical}select{-webkit-appearance:none}fieldset{margin:0;padding:0}h1,h2,h3,h4,h5,h6,li,p{overflow-wrap:break-word}vite-error-overlay{z-index:9999}mjx-container{overflow-x:auto}mjx-container>svg{display:inline-block;margin:auto}[class^=vpi-],[class*=" vpi-"],.vp-icon{width:1em;height:1em}[class^=vpi-].bg,[class*=" vpi-"].bg,.vp-icon.bg{background-size:100% 100%;background-color:transparent}[class^=vpi-]:not(.bg),[class*=" vpi-"]:not(.bg),.vp-icon:not(.bg){-webkit-mask:var(--icon) no-repeat;mask:var(--icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit}.vpi-align-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 6H3M15 12H3M17 18H3'/%3E%3C/svg%3E")}.vpi-arrow-right,.vpi-arrow-down,.vpi-arrow-left,.vpi-arrow-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E")}.vpi-chevron-right,.vpi-chevron-down,.vpi-chevron-left,.vpi-chevron-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E")}.vpi-chevron-down,.vpi-arrow-down{transform:rotate(90deg)}.vpi-chevron-left,.vpi-arrow-left{transform:rotate(180deg)}.vpi-chevron-up,.vpi-arrow-up{transform:rotate(-90deg)}.vpi-square-pen{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/%3E%3Cpath d='M18.375 2.625a2.121 2.121 0 1 1 3 3L12 15l-4 1 1-4Z'/%3E%3C/svg%3E")}.vpi-plus{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5v14'/%3E%3C/svg%3E")}.vpi-sun{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/svg%3E")}.vpi-moon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/%3E%3C/svg%3E")}.vpi-more-horizontal{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='19' cy='12' r='1'/%3E%3Ccircle cx='5' cy='12' r='1'/%3E%3C/svg%3E")}.vpi-languages{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m5 8 6 6M4 14l6-6 2-3M2 5h12M7 2h1M22 22l-5-10-5 10M14 18h6'/%3E%3C/svg%3E")}.vpi-heart{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E")}.vpi-search{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E")}.vpi-layout-list{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='7' height='7' x='3' y='3' rx='1'/%3E%3Crect width='7' height='7' x='3' y='14' rx='1'/%3E%3Cpath d='M14 4h7M14 9h7M14 15h7M14 20h7'/%3E%3C/svg%3E")}.vpi-delete{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 5H9l-7 7 7 7h11a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2ZM18 9l-6 6M12 9l6 6'/%3E%3C/svg%3E")}.vpi-corner-down-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 10-5 5 5 5'/%3E%3Cpath d='M20 4v7a4 4 0 0 1-4 4H4'/%3E%3C/svg%3E")}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='m9 14 2 2 4-4'/%3E%3C/svg%3E")}.vpi-social-discord{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418Z'/%3E%3C/svg%3E")}.vpi-social-facebook{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z'/%3E%3C/svg%3E")}.vpi-social-github{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")}.vpi-social-instagram{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.03.084c-1.277.06-2.149.264-2.91.563a5.874 5.874 0 0 0-2.124 1.388 5.878 5.878 0 0 0-1.38 2.127C.321 4.926.12 5.8.064 7.076.008 8.354-.005 8.764.001 12.023c.007 3.259.021 3.667.083 4.947.061 1.277.264 2.149.563 2.911.308.789.72 1.457 1.388 2.123a5.872 5.872 0 0 0 2.129 1.38c.763.295 1.636.496 2.913.552 1.278.056 1.689.069 4.947.063 3.257-.007 3.668-.021 4.947-.082 1.28-.06 2.147-.265 2.91-.563a5.881 5.881 0 0 0 2.123-1.388 5.881 5.881 0 0 0 1.38-2.129c.295-.763.496-1.636.551-2.912.056-1.28.07-1.69.063-4.948-.006-3.258-.02-3.667-.081-4.947-.06-1.28-.264-2.148-.564-2.911a5.892 5.892 0 0 0-1.387-2.123 5.857 5.857 0 0 0-2.128-1.38C19.074.322 18.202.12 16.924.066 15.647.009 15.236-.006 11.977 0 8.718.008 8.31.021 7.03.084m.14 21.693c-1.17-.05-1.805-.245-2.228-.408a3.736 3.736 0 0 1-1.382-.895 3.695 3.695 0 0 1-.9-1.378c-.165-.423-.363-1.058-.417-2.228-.06-1.264-.072-1.644-.08-4.848-.006-3.204.006-3.583.061-4.848.05-1.169.246-1.805.408-2.228.216-.561.477-.96.895-1.382a3.705 3.705 0 0 1 1.379-.9c.423-.165 1.057-.361 2.227-.417 1.265-.06 1.644-.072 4.848-.08 3.203-.006 3.583.006 4.85.062 1.168.05 1.804.244 2.227.408.56.216.96.475 1.382.895.421.42.681.817.9 1.378.165.422.362 1.056.417 2.227.06 1.265.074 1.645.08 4.848.005 3.203-.006 3.583-.061 4.848-.051 1.17-.245 1.805-.408 2.23-.216.56-.477.96-.896 1.38a3.705 3.705 0 0 1-1.378.9c-.422.165-1.058.362-2.226.418-1.266.06-1.645.072-4.85.079-3.204.007-3.582-.006-4.848-.06m9.783-16.192a1.44 1.44 0 1 0 1.437-1.442 1.44 1.44 0 0 0-1.437 1.442M5.839 12.012a6.161 6.161 0 1 0 12.323-.024 6.162 6.162 0 0 0-12.323.024M8 12.008A4 4 0 1 1 12.008 16 4 4 0 0 1 8 12.008'/%3E%3C/svg%3E")}.vpi-social-linkedin{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z'/%3E%3C/svg%3E")}.vpi-social-mastodon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z'/%3E%3C/svg%3E")}.vpi-social-npm{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z'/%3E%3C/svg%3E")}.vpi-social-slack{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zm1.271 0a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313zM8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zm0 1.271a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312zm10.122 2.521a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zm-1.268 0a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312zm-2.523 10.122a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zm0-1.268a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313z'/%3E%3C/svg%3E")}.vpi-social-twitter,.vpi-social-x{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z'/%3E%3C/svg%3E")}.vpi-social-youtube{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z'/%3E%3C/svg%3E")}.visually-hidden{position:absolute;width:1px;height:1px;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden}.custom-block{border:1px solid transparent;border-radius:8px;padding:16px 16px 8px;line-height:24px;font-size:var(--vp-custom-block-font-size);color:var(--vp-c-text-2)}.custom-block.info{border-color:var(--vp-custom-block-info-border);color:var(--vp-custom-block-info-text);background-color:var(--vp-custom-block-info-bg)}.custom-block.info a,.custom-block.info code{color:var(--vp-c-brand-1)}.custom-block.info a:hover,.custom-block.info a:hover>code{color:var(--vp-c-brand-2)}.custom-block.info code{background-color:var(--vp-custom-block-info-code-bg)}.custom-block.note{border-color:var(--vp-custom-block-note-border);color:var(--vp-custom-block-note-text);background-color:var(--vp-custom-block-note-bg)}.custom-block.note a,.custom-block.note code{color:var(--vp-c-brand-1)}.custom-block.note a:hover,.custom-block.note a:hover>code{color:var(--vp-c-brand-2)}.custom-block.note code{background-color:var(--vp-custom-block-note-code-bg)}.custom-block.tip{border-color:var(--vp-custom-block-tip-border);color:var(--vp-custom-block-tip-text);background-color:var(--vp-custom-block-tip-bg)}.custom-block.tip a,.custom-block.tip code{color:var(--vp-c-tip-1)}.custom-block.tip a:hover,.custom-block.tip a:hover>code{color:var(--vp-c-tip-2)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-code-bg)}.custom-block.important{border-color:var(--vp-custom-block-important-border);color:var(--vp-custom-block-important-text);background-color:var(--vp-custom-block-important-bg)}.custom-block.important a,.custom-block.important code{color:var(--vp-c-important-1)}.custom-block.important a:hover,.custom-block.important a:hover>code{color:var(--vp-c-important-2)}.custom-block.important code{background-color:var(--vp-custom-block-important-code-bg)}.custom-block.warning{border-color:var(--vp-custom-block-warning-border);color:var(--vp-custom-block-warning-text);background-color:var(--vp-custom-block-warning-bg)}.custom-block.warning a,.custom-block.warning code{color:var(--vp-c-warning-1)}.custom-block.warning a:hover,.custom-block.warning a:hover>code{color:var(--vp-c-warning-2)}.custom-block.warning code{background-color:var(--vp-custom-block-warning-code-bg)}.custom-block.danger{border-color:var(--vp-custom-block-danger-border);color:var(--vp-custom-block-danger-text);background-color:var(--vp-custom-block-danger-bg)}.custom-block.danger a,.custom-block.danger code{color:var(--vp-c-danger-1)}.custom-block.danger a:hover,.custom-block.danger a:hover>code{color:var(--vp-c-danger-2)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-code-bg)}.custom-block.caution{border-color:var(--vp-custom-block-caution-border);color:var(--vp-custom-block-caution-text);background-color:var(--vp-custom-block-caution-bg)}.custom-block.caution a,.custom-block.caution code{color:var(--vp-c-caution-1)}.custom-block.caution a:hover,.custom-block.caution a:hover>code{color:var(--vp-c-caution-2)}.custom-block.caution code{background-color:var(--vp-custom-block-caution-code-bg)}.custom-block.details{border-color:var(--vp-custom-block-details-border);color:var(--vp-custom-block-details-text);background-color:var(--vp-custom-block-details-bg)}.custom-block.details a{color:var(--vp-c-brand-1)}.custom-block.details a:hover,.custom-block.details a:hover>code{color:var(--vp-c-brand-2)}.custom-block.details code{background-color:var(--vp-custom-block-details-code-bg)}.custom-block-title{font-weight:600}.custom-block p+p{margin:8px 0}.custom-block.details summary{margin:0 0 8px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;transition:opacity .25s}.custom-block a:hover{opacity:.75}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.custom-block.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.dark .vp-code span{color:var(--shiki-dark, inherit)}html:not(.dark) .vp-code span{color:var(--shiki-light, inherit)}.vp-code-group{margin-top:16px}.vp-code-group .tabs{position:relative;display:flex;margin-right:-24px;margin-left:-24px;padding:0 12px;background-color:var(--vp-code-tab-bg);overflow-x:auto;overflow-y:hidden;box-shadow:inset 0 -1px var(--vp-code-tab-divider)}@media (min-width: 640px){.vp-code-group .tabs{margin-right:0;margin-left:0;border-radius:8px 8px 0 0}}.vp-code-group .tabs input{position:fixed;opacity:0;pointer-events:none}.vp-code-group .tabs label{position:relative;display:inline-block;border-bottom:1px solid transparent;padding:0 12px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-code-tab-text-color);white-space:nowrap;cursor:pointer;transition:color .25s}.vp-code-group .tabs label:after{position:absolute;right:8px;bottom:-1px;left:8px;z-index:1;height:2px;border-radius:2px;content:"";background-color:transparent;transition:background-color .25s}.vp-code-group label:hover{color:var(--vp-code-tab-hover-text-color)}.vp-code-group input:checked+label{color:var(--vp-code-tab-active-text-color)}.vp-code-group input:checked+label:after{background-color:var(--vp-code-tab-active-bar-color)}.vp-code-group div[class*=language-],.vp-block{display:none;margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.vp-code-group div[class*=language-].active,.vp-block.active{display:block}.vp-block{padding:20px 24px}.vp-doc h1,.vp-doc h2,.vp-doc h3,.vp-doc h4,.vp-doc h5,.vp-doc h6{position:relative;font-weight:600;outline:none}.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:28px}.vp-doc h2{margin:48px 0 16px;border-top:1px solid var(--vp-c-divider);padding-top:24px;letter-spacing:-.02em;line-height:32px;font-size:24px}.vp-doc h3{margin:32px 0 0;letter-spacing:-.01em;line-height:28px;font-size:20px}.vp-doc h4{margin:24px 0 0;letter-spacing:-.01em;line-height:24px;font-size:18px}.vp-doc .header-anchor{position:absolute;top:0;left:0;margin-left:-.87em;font-weight:500;-webkit-user-select:none;user-select:none;opacity:0;text-decoration:none;transition:color .25s,opacity .25s}.vp-doc .header-anchor:before{content:var(--vp-header-anchor-symbol)}.vp-doc h1:hover .header-anchor,.vp-doc h1 .header-anchor:focus,.vp-doc h2:hover .header-anchor,.vp-doc h2 .header-anchor:focus,.vp-doc h3:hover .header-anchor,.vp-doc h3 .header-anchor:focus,.vp-doc h4:hover .header-anchor,.vp-doc h4 .header-anchor:focus,.vp-doc h5:hover .header-anchor,.vp-doc h5 .header-anchor:focus,.vp-doc h6:hover .header-anchor,.vp-doc h6 .header-anchor:focus{opacity:1}@media (min-width: 768px){.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:32px}}.vp-doc h2 .header-anchor{top:24px}.vp-doc p,.vp-doc summary{margin:16px 0}.vp-doc p{line-height:28px}.vp-doc blockquote{margin:16px 0;border-left:2px solid var(--vp-c-divider);padding-left:16px;transition:border-color .5s;color:var(--vp-c-text-2)}.vp-doc blockquote>p{margin:0;font-size:16px;transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand-1);text-decoration:underline;text-underline-offset:2px;transition:color .25s,opacity .25s}.vp-doc a:hover{color:var(--vp-c-brand-2)}.vp-doc strong{font-weight:600}.vp-doc ul,.vp-doc ol{padding-left:1.25rem;margin:16px 0}.vp-doc ul{list-style:disc}.vp-doc ol{list-style:decimal}.vp-doc li+li{margin-top:8px}.vp-doc li>ol,.vp-doc li>ul{margin:8px 0 0}.vp-doc table{display:block;border-collapse:collapse;margin:20px 0;overflow-x:auto}.vp-doc tr{background-color:var(--vp-c-bg);border-top:1px solid var(--vp-c-divider);transition:background-color .5s}.vp-doc tr:nth-child(2n){background-color:var(--vp-c-bg-soft)}.vp-doc th,.vp-doc td{border:1px solid var(--vp-c-divider);padding:8px 16px}.vp-doc th{text-align:left;font-size:14px;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-doc td{font-size:14px}.vp-doc hr{margin:16px 0;border:none;border-top:1px solid var(--vp-c-divider)}.vp-doc .custom-block{margin:16px 0}.vp-doc .custom-block p{margin:8px 0;line-height:24px}.vp-doc .custom-block p:first-child{margin:0}.vp-doc .custom-block div[class*=language-]{margin:8px 0;border-radius:8px}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc .custom-block .vp-code-group .tabs{margin:0;border-radius:8px 8px 0 0}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size);color:var(--vp-code-color)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;background-color:var(--vp-code-bg);transition:color .25s,background-color .5s}.vp-doc a>code{color:var(--vp-code-link-color)}.vp-doc a:hover>code{color:var(--vp-code-link-hover-color)}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code,.vp-doc h4>code{font-size:.9em}.vp-doc div[class*=language-],.vp-block{position:relative;margin:16px -24px;background-color:var(--vp-code-block-bg);overflow-x:auto;transition:background-color .5s}@media (min-width: 640px){.vp-doc div[class*=language-],.vp-block{border-radius:8px;margin:16px 0}}@media (max-width: 639px){.vp-doc li div[class*=language-]{border-radius:8px 0 0 8px}}.vp-doc div[class*=language-]+div[class*=language-],.vp-doc div[class$=-api]+div[class*=language-],.vp-doc div[class*=language-]+div[class$=-api]>div[class*=language-]{margin-top:-8px}.vp-doc [class*=language-] pre,.vp-doc [class*=language-] code{direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}.vp-doc [class*=language-] pre{position:relative;z-index:1;margin:0;padding:20px 0;background:transparent;overflow-x:auto}.vp-doc [class*=language-] code{display:block;padding:0 24px;width:fit-content;min-width:100%;line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-block-color);transition:color .5s}.vp-doc [class*=language-] code .highlighted{background-color:var(--vp-code-line-highlight-color);transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .highlighted.error{background-color:var(--vp-code-line-error-color)}.vp-doc [class*=language-] code .highlighted.warning{background-color:var(--vp-code-line-warning-color)}.vp-doc [class*=language-] code .diff{transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .diff:before{position:absolute;left:10px}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){filter:blur(.095rem);opacity:.4;transition:filter .35s,opacity .35s}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){opacity:.7;transition:filter .35s,opacity .35s}.vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur(0);opacity:1}.vp-doc [class*=language-] code .diff.remove{background-color:var(--vp-code-line-diff-remove-color);opacity:.7}.vp-doc [class*=language-] code .diff.remove:before{content:"-";color:var(--vp-code-line-diff-remove-symbol-color)}.vp-doc [class*=language-] code .diff.add{background-color:var(--vp-code-line-diff-add-color)}.vp-doc [class*=language-] code .diff.add:before{content:"+";color:var(--vp-code-line-diff-add-symbol-color)}.vp-doc div[class*=language-].line-numbers-mode{padding-left:32px}.vp-doc .line-numbers-wrapper{position:absolute;top:0;bottom:0;left:0;z-index:3;border-right:1px solid var(--vp-code-block-divider-color);padding-top:20px;width:32px;text-align:center;font-family:var(--vp-font-family-mono);line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-line-number-color);transition:border-color .5s,color .5s}.vp-doc [class*=language-]>button.copy{direction:ltr;position:absolute;top:12px;right:12px;z-index:3;border:1px solid var(--vp-code-copy-code-border-color);border-radius:4px;width:40px;height:40px;background-color:var(--vp-code-copy-code-bg);opacity:0;cursor:pointer;background-image:var(--vp-icon-copy);background-position:50%;background-size:20px;background-repeat:no-repeat;transition:border-color .25s,background-color .25s,opacity .25s}.vp-doc [class*=language-]:hover>button.copy,.vp-doc [class*=language-]>button.copy:focus{opacity:1}.vp-doc [class*=language-]>button.copy:hover,.vp-doc [class*=language-]>button.copy.copied{border-color:var(--vp-code-copy-code-hover-border-color);background-color:var(--vp-code-copy-code-hover-bg)}.vp-doc [class*=language-]>button.copy.copied,.vp-doc [class*=language-]>button.copy:hover.copied{border-radius:0 4px 4px 0;background-color:var(--vp-code-copy-code-hover-bg);background-image:var(--vp-icon-copied)}.vp-doc [class*=language-]>button.copy.copied:before,.vp-doc [class*=language-]>button.copy:hover.copied:before{position:relative;top:-1px;transform:translate(calc(-100% - 1px));display:flex;justify-content:center;align-items:center;border:1px solid var(--vp-code-copy-code-hover-border-color);border-right:0;border-radius:4px 0 0 4px;padding:0 10px;width:fit-content;height:40px;text-align:center;font-size:12px;font-weight:500;color:var(--vp-code-copy-code-active-text);background-color:var(--vp-code-copy-code-hover-bg);white-space:nowrap;content:var(--vp-code-copy-copied-text-content)}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-code-lang-color);transition:color .4s,opacity .4s}.vp-doc [class*=language-]:hover>button.copy+span.lang,.vp-doc [class*=language-]>button.copy:focus+span.lang{opacity:0}.vp-doc .VPTeamMembers{margin-top:24px}.vp-doc .VPTeamMembers.small.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}.vp-doc .VPTeamMembers.small.count-2 .container,.vp-doc .VPTeamMembers.small.count-3 .container{max-width:100%!important}.vp-doc .VPTeamMembers.medium.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}:is(.vp-external-link-icon,.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(.no-icon):after{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:currentColor;color:var(--vp-c-text-3);flex-shrink:0;--icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");-webkit-mask-image:var(--icon);mask-image:var(--icon)}.vp-external-link-icon:after{content:""}.external-link-icon-enabled :is(.vp-doc a[href*="://"],.vp-doc a[target=_blank]):after{content:"";color:currentColor}.vp-sponsor{border-radius:16px;overflow:hidden}.vp-sponsor.aside{border-radius:12px}.vp-sponsor-section+.vp-sponsor-section{margin-top:4px}.vp-sponsor-tier{margin:0 0 4px!important;text-align:center;letter-spacing:1px!important;line-height:24px;width:100%;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-sponsor.normal .vp-sponsor-tier{padding:13px 0 11px;font-size:14px}.vp-sponsor.aside .vp-sponsor-tier{padding:9px 0 7px;font-size:12px}.vp-sponsor-grid+.vp-sponsor-tier{margin-top:4px}.vp-sponsor-grid{display:flex;flex-wrap:wrap;gap:4px}.vp-sponsor-grid.xmini .vp-sponsor-grid-link{height:64px}.vp-sponsor-grid.xmini .vp-sponsor-grid-image{max-width:64px;max-height:22px}.vp-sponsor-grid.mini .vp-sponsor-grid-link{height:72px}.vp-sponsor-grid.mini .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.small .vp-sponsor-grid-link{height:96px}.vp-sponsor-grid.small .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.medium .vp-sponsor-grid-link{height:112px}.vp-sponsor-grid.medium .vp-sponsor-grid-image{max-width:120px;max-height:36px}.vp-sponsor-grid.big .vp-sponsor-grid-link{height:184px}.vp-sponsor-grid.big .vp-sponsor-grid-image{max-width:192px;max-height:56px}.vp-sponsor-grid[data-vp-grid="2"] .vp-sponsor-grid-item{width:calc((100% - 4px)/2)}.vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item{width:calc((100% - 4px * 2) / 3)}.vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item{width:calc((100% - 12px)/4)}.vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item{width:calc((100% - 16px)/5)}.vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item{width:calc((100% - 4px * 5) / 6)}.vp-sponsor-grid-item{flex-shrink:0;width:100%;background-color:var(--vp-c-bg-soft);transition:background-color .25s}.vp-sponsor-grid-item:hover{background-color:var(--vp-c-default-soft)}.vp-sponsor-grid-item:hover .vp-sponsor-grid-image{filter:grayscale(0) invert(0)}.vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.dark .vp-sponsor-grid-item:hover{background-color:var(--vp-c-white)}.dark .vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.vp-sponsor-grid-link{display:flex}.vp-sponsor-grid-box{display:flex;justify-content:center;align-items:center;width:100%}.vp-sponsor-grid-image{max-width:100%;filter:grayscale(1);transition:filter .25s}.dark .vp-sponsor-grid-image{filter:grayscale(1) invert(1)}.VPBadge{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:12px;padding:0 10px;line-height:22px;font-size:12px;font-weight:500;transform:translateY(-2px)}.VPBadge.small{padding:0 6px;line-height:18px;font-size:10px;transform:translateY(-8px)}.VPDocFooter .VPBadge{display:none}.vp-doc h1>.VPBadge{margin-top:4px;vertical-align:top}.vp-doc h2>.VPBadge{margin-top:3px;padding:0 8px;vertical-align:top}.vp-doc h3>.VPBadge{vertical-align:middle}.vp-doc h4>.VPBadge,.vp-doc h5>.VPBadge,.vp-doc h6>.VPBadge{vertical-align:middle;line-height:18px}.VPBadge.info{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPBackdrop[data-v-b06cdb19]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vp-z-index-backdrop);background:var(--vp-backdrop-bg-color);transition:opacity .5s}.VPBackdrop.fade-enter-from[data-v-b06cdb19],.VPBackdrop.fade-leave-to[data-v-b06cdb19]{opacity:0}.VPBackdrop.fade-leave-active[data-v-b06cdb19]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-b06cdb19]{display:none}}.NotFound[data-v-951cab6c]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-951cab6c]{padding:96px 32px 168px}}.code[data-v-951cab6c]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-951cab6c]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-951cab6c]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-951cab6c]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-951cab6c]{padding-top:20px}.link[data-v-951cab6c]{display:inline-block;border:1px solid var(--vp-c-brand-1);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:border-color .25s,color .25s}.link[data-v-951cab6c]:hover{border-color:var(--vp-c-brand-2);color:var(--vp-c-brand-2)}.root[data-v-3f927ebe]{position:relative;z-index:1}.nested[data-v-3f927ebe]{padding-right:16px;padding-left:16px}.outline-link[data-v-3f927ebe]{display:block;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s}.outline-link[data-v-3f927ebe]:hover,.outline-link.active[data-v-3f927ebe]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-3f927ebe]{padding-left:13px}.VPDocAsideOutline[data-v-b38bf2ff]{display:none}.VPDocAsideOutline.has-outline[data-v-b38bf2ff]{display:block}.content[data-v-b38bf2ff]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-b38bf2ff]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:2px;border-radius:2px;height:18px;background-color:var(--vp-c-brand-1);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-b38bf2ff]{line-height:32px;font-size:14px;font-weight:600}.VPDocAside[data-v-6d7b3c46]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-6d7b3c46]{flex-grow:1}.VPDocAside[data-v-6d7b3c46] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-6d7b3c46] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-6d7b3c46] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-475f71b8]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-475f71b8]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-4f9813fa]{margin-top:64px}.edit-info[data-v-4f9813fa]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-4f9813fa]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-4f9813fa]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.edit-link-button[data-v-4f9813fa]:hover{color:var(--vp-c-brand-2)}.edit-link-icon[data-v-4f9813fa]{margin-right:8px}.prev-next[data-v-4f9813fa]{border-top:1px solid var(--vp-c-divider);padding-top:24px;display:grid;grid-row-gap:8px}@media (min-width: 640px){.prev-next[data-v-4f9813fa]{grid-template-columns:repeat(2,1fr);grid-column-gap:16px}}.pager-link[data-v-4f9813fa]{display:block;border:1px solid var(--vp-c-divider);border-radius:8px;padding:11px 16px 13px;width:100%;height:100%;transition:border-color .25s}.pager-link[data-v-4f9813fa]:hover{border-color:var(--vp-c-brand-1)}.pager-link.next[data-v-4f9813fa]{margin-left:auto;text-align:right}.desc[data-v-4f9813fa]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-4f9813fa]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.VPDoc[data-v-83890dd9]{padding:32px 24px 96px;width:100%}@media (min-width: 768px){.VPDoc[data-v-83890dd9]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-83890dd9]{padding:48px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-83890dd9]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-83890dd9]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-83890dd9]{display:flex;justify-content:center}.VPDoc .aside[data-v-83890dd9]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-83890dd9]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-83890dd9]{max-width:1104px}}.container[data-v-83890dd9]{margin:0 auto;width:100%}.aside[data-v-83890dd9]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-83890dd9]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-83890dd9]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 48px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-83890dd9]::-webkit-scrollbar{display:none}.aside-curtain[data-v-83890dd9]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-83890dd9]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px));padding-bottom:32px}.content[data-v-83890dd9]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-83890dd9]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-83890dd9]{order:1;margin:0;min-width:640px}}.content-container[data-v-83890dd9]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-83890dd9]{max-width:688px}.VPButton[data-v-906d7fb4]{display:inline-block;border:1px solid transparent;text-align:center;font-weight:600;white-space:nowrap;transition:color .25s,border-color .25s,background-color .25s}.VPButton[data-v-906d7fb4]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-906d7fb4]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-906d7fb4]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-906d7fb4]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-906d7fb4]:hover{border-color:var(--vp-button-brand-hover-border);color:var(--vp-button-brand-hover-text);background-color:var(--vp-button-brand-hover-bg)}.VPButton.brand[data-v-906d7fb4]:active{border-color:var(--vp-button-brand-active-border);color:var(--vp-button-brand-active-text);background-color:var(--vp-button-brand-active-bg)}.VPButton.alt[data-v-906d7fb4]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-906d7fb4]:hover{border-color:var(--vp-button-alt-hover-border);color:var(--vp-button-alt-hover-text);background-color:var(--vp-button-alt-hover-bg)}.VPButton.alt[data-v-906d7fb4]:active{border-color:var(--vp-button-alt-active-border);color:var(--vp-button-alt-active-text);background-color:var(--vp-button-alt-active-bg)}.VPButton.sponsor[data-v-906d7fb4]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-906d7fb4]:hover{border-color:var(--vp-button-sponsor-hover-border);color:var(--vp-button-sponsor-hover-text);background-color:var(--vp-button-sponsor-hover-bg)}.VPButton.sponsor[data-v-906d7fb4]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}html:not(.dark) .VPImage.dark[data-v-35a7d0b8]{display:none}.dark .VPImage.light[data-v-35a7d0b8]{display:none}.VPHero[data-v-955009fc]{margin-top:calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1);padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px) 24px 48px}@media (min-width: 640px){.VPHero[data-v-955009fc]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-955009fc]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-955009fc]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-955009fc]{flex-direction:row}}.main[data-v-955009fc]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-955009fc]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-955009fc]{text-align:left}}@media (min-width: 960px){.main[data-v-955009fc]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-955009fc]{max-width:592px}}.name[data-v-955009fc],.text[data-v-955009fc]{max-width:392px;letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;white-space:pre-wrap}.VPHero.has-image .name[data-v-955009fc],.VPHero.has-image .text[data-v-955009fc]{margin:0 auto}.name[data-v-955009fc]{color:var(--vp-home-hero-name-color)}.clip[data-v-955009fc]{background:var(--vp-home-hero-name-background);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:var(--vp-home-hero-name-color)}@media (min-width: 640px){.name[data-v-955009fc],.text[data-v-955009fc]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-955009fc],.text[data-v-955009fc]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-955009fc],.VPHero.has-image .text[data-v-955009fc]{margin:0}}.tagline[data-v-955009fc]{padding-top:8px;max-width:392px;line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--vp-c-text-2)}.VPHero.has-image .tagline[data-v-955009fc]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-955009fc]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-955009fc]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-955009fc]{margin:0}}.actions[data-v-955009fc]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-955009fc]{justify-content:center}@media (min-width: 640px){.actions[data-v-955009fc]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-955009fc]{justify-content:flex-start}}.action[data-v-955009fc]{flex-shrink:0;padding:6px}.image[data-v-955009fc]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-955009fc]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-955009fc]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-955009fc]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-955009fc]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-955009fc]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-955009fc]{position:absolute;top:50%;left:50%;border-radius:50%;width:192px;height:192px;background-image:var(--vp-home-hero-image-background-image);filter:var(--vp-home-hero-image-filter);transform:translate(-50%,-50%)}@media (min-width: 640px){.image-bg[data-v-955009fc]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-955009fc]{width:320px;height:320px}}[data-v-955009fc] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-955009fc] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-955009fc] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-f5e9645b]{display:block;border:1px solid var(--vp-c-bg-soft);border-radius:12px;height:100%;background-color:var(--vp-c-bg-soft);transition:border-color .25s,background-color .25s}.VPFeature.link[data-v-f5e9645b]:hover{border-color:var(--vp-c-brand-1)}.box[data-v-f5e9645b]{display:flex;flex-direction:column;padding:24px;height:100%}.box[data-v-f5e9645b]>.VPImage{margin-bottom:20px}.icon[data-v-f5e9645b]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-default-soft);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-f5e9645b]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-f5e9645b]{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.link-text[data-v-f5e9645b]{padding-top:8px}.link-text-value[data-v-f5e9645b]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.link-text-icon[data-v-f5e9645b]{margin-left:6px}.VPFeatures[data-v-d0a190d7]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-d0a190d7]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-d0a190d7]{padding:0 64px}}.container[data-v-d0a190d7]{margin:0 auto;max-width:1152px}.items[data-v-d0a190d7]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-d0a190d7]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-d0a190d7],.item.grid-4[data-v-d0a190d7],.item.grid-6[data-v-d0a190d7]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-d0a190d7],.item.grid-4[data-v-d0a190d7]{width:50%}.item.grid-3[data-v-d0a190d7],.item.grid-6[data-v-d0a190d7]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-d0a190d7]{width:25%}}.container[data-v-7a48a447]{margin:auto;width:100%;max-width:1280px;padding:0 24px}@media (min-width: 640px){.container[data-v-7a48a447]{padding:0 48px}}@media (min-width: 960px){.container[data-v-7a48a447]{width:100%;padding:0 64px}}.vp-doc[data-v-7a48a447] .VPHomeSponsors,.vp-doc[data-v-7a48a447] .VPTeamPage{margin-left:var(--vp-offset, calc(50% - 50vw) );margin-right:var(--vp-offset, calc(50% - 50vw) )}.vp-doc[data-v-7a48a447] .VPHomeSponsors h2{border-top:none;letter-spacing:normal}.vp-doc[data-v-7a48a447] .VPHomeSponsors a,.vp-doc[data-v-7a48a447] .VPTeamPage a{text-decoration:none}.VPHome[data-v-cbb6ec48]{margin-bottom:96px}@media (min-width: 768px){.VPHome[data-v-cbb6ec48]{margin-bottom:128px}}.VPContent[data-v-91765379]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-91765379]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-91765379]{margin:0}@media (min-width: 960px){.VPContent[data-v-91765379]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-91765379]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-91765379]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.VPFooter[data-v-c970a860]{position:relative;z-index:var(--vp-z-index-footer);border-top:1px solid var(--vp-c-gutter);padding:32px 24px;background-color:var(--vp-c-bg)}.VPFooter.has-sidebar[data-v-c970a860]{display:none}.VPFooter[data-v-c970a860] a{text-decoration-line:underline;text-underline-offset:2px;transition:color .25s}.VPFooter[data-v-c970a860] a:hover{color:var(--vp-c-text-1)}@media (min-width: 768px){.VPFooter[data-v-c970a860]{padding:32px}}.container[data-v-c970a860]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-c970a860],.copyright[data-v-c970a860]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.VPLocalNavOutlineDropdown[data-v-bc9dc845]{padding:12px 20px 11px}@media (min-width: 960px){.VPLocalNavOutlineDropdown[data-v-bc9dc845]{padding:12px 36px 11px}}.VPLocalNavOutlineDropdown button[data-v-bc9dc845]{display:block;font-size:12px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;position:relative}.VPLocalNavOutlineDropdown button[data-v-bc9dc845]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-bc9dc845]{color:var(--vp-c-text-1)}.icon[data-v-bc9dc845]{display:inline-block;vertical-align:middle;margin-left:2px;font-size:14px;transform:rotate(0);transition:transform .25s}@media (min-width: 960px){.VPLocalNavOutlineDropdown button[data-v-bc9dc845]{font-size:14px}.icon[data-v-bc9dc845]{font-size:16px}}.open>.icon[data-v-bc9dc845]{transform:rotate(90deg)}.items[data-v-bc9dc845]{position:absolute;top:40px;right:16px;left:16px;display:grid;gap:1px;border:1px solid var(--vp-c-border);border-radius:8px;background-color:var(--vp-c-gutter);max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}@media (min-width: 960px){.items[data-v-bc9dc845]{right:auto;left:calc(var(--vp-sidebar-width) + 32px);width:320px}}.header[data-v-bc9dc845]{background-color:var(--vp-c-bg-soft)}.top-link[data-v-bc9dc845]{display:block;padding:0 16px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.outline[data-v-bc9dc845]{padding:8px 0;background-color:var(--vp-c-bg-soft)}.flyout-enter-active[data-v-bc9dc845]{transition:all .2s ease-out}.flyout-leave-active[data-v-bc9dc845]{transition:all .15s ease-in}.flyout-enter-from[data-v-bc9dc845],.flyout-leave-to[data-v-bc9dc845]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-070ab83d]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);border-bottom:1px solid var(--vp-c-gutter);padding-top:var(--vp-layout-top-height, 0px);width:100%;background-color:var(--vp-local-nav-bg-color)}.VPLocalNav.fixed[data-v-070ab83d]{position:fixed}@media (min-width: 960px){.VPLocalNav[data-v-070ab83d]{top:var(--vp-nav-height)}.VPLocalNav.has-sidebar[data-v-070ab83d]{padding-left:var(--vp-sidebar-width)}.VPLocalNav.empty[data-v-070ab83d]{display:none}}@media (min-width: 1280px){.VPLocalNav[data-v-070ab83d]{display:none}}@media (min-width: 1440px){.VPLocalNav.has-sidebar[data-v-070ab83d]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.container[data-v-070ab83d]{display:flex;justify-content:space-between;align-items:center}.menu[data-v-070ab83d]{display:flex;align-items:center;padding:12px 24px 11px;line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.menu[data-v-070ab83d]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-070ab83d]{padding:0 32px}}@media (min-width: 960px){.menu[data-v-070ab83d]{display:none}}.menu-icon[data-v-070ab83d]{margin-right:8px;font-size:14px}.VPOutlineDropdown[data-v-070ab83d]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-070ab83d]{padding:12px 32px 11px}}.VPSwitch[data-v-4a1c76db]{position:relative;border-radius:11px;display:block;width:40px;height:22px;flex-shrink:0;border:1px solid var(--vp-input-border-color);background-color:var(--vp-input-switch-bg-color);transition:border-color .25s!important}.VPSwitch[data-v-4a1c76db]:hover{border-color:var(--vp-c-brand-1)}.check[data-v-4a1c76db]{position:absolute;top:1px;left:1px;width:18px;height:18px;border-radius:50%;background-color:var(--vp-c-neutral-inverse);box-shadow:var(--vp-shadow-1);transition:transform .25s!important}.icon[data-v-4a1c76db]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-4a1c76db] [class^=vpi-]{position:absolute;top:3px;left:3px;width:12px;height:12px;color:var(--vp-c-text-2)}.dark .icon[data-v-4a1c76db] [class^=vpi-]{color:var(--vp-c-text-1);transition:opacity .25s!important}.sun[data-v-e40a8bb6]{opacity:1}.moon[data-v-e40a8bb6],.dark .sun[data-v-e40a8bb6]{opacity:0}.dark .moon[data-v-e40a8bb6]{opacity:1}.dark .VPSwitchAppearance[data-v-e40a8bb6] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-af096f4a]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-af096f4a]{display:flex;align-items:center}}.VPMenuGroup+.VPMenuLink[data-v-8b74d055]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-8b74d055]{display:block;border-radius:6px;padding:0 12px;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);white-space:nowrap;transition:background-color .25s,color .25s}.link[data-v-8b74d055]:hover{color:var(--vp-c-brand-1);background-color:var(--vp-c-default-soft)}.link.active[data-v-8b74d055]{color:var(--vp-c-brand-1)}.VPMenuGroup[data-v-48c802d0]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-48c802d0]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-48c802d0]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-48c802d0]{padding:0 12px;line-height:32px;font-size:14px;font-weight:600;color:var(--vp-c-text-2);white-space:nowrap;transition:color .25s}.VPMenu[data-v-7dd3104a]{border-radius:12px;padding:12px;min-width:128px;border:1px solid var(--vp-c-divider);background-color:var(--vp-c-bg-elv);box-shadow:var(--vp-shadow-3);transition:background-color .5s;max-height:calc(100vh - var(--vp-nav-height));overflow-y:auto}.VPMenu[data-v-7dd3104a] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-7dd3104a] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-7dd3104a] .group:last-child{padding-bottom:0}.VPMenu[data-v-7dd3104a] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-7dd3104a] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-7dd3104a] .label{flex-grow:1;line-height:28px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.VPMenu[data-v-7dd3104a] .action{padding-left:24px}.VPFlyout[data-v-04f5c5e9]{position:relative}.VPFlyout[data-v-04f5c5e9]:hover{color:var(--vp-c-brand-1);transition:color .25s}.VPFlyout:hover .text[data-v-04f5c5e9]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-04f5c5e9]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-04f5c5e9]{color:var(--vp-c-brand-1)}.VPFlyout.active:hover .text[data-v-04f5c5e9]{color:var(--vp-c-brand-2)}.button[aria-expanded=false]+.menu[data-v-04f5c5e9]{opacity:0;visibility:hidden;transform:translateY(0)}.VPFlyout:hover .menu[data-v-04f5c5e9],.button[aria-expanded=true]+.menu[data-v-04f5c5e9]{opacity:1;visibility:visible;transform:translateY(0)}.button[data-v-04f5c5e9]{display:flex;align-items:center;padding:0 12px;height:var(--vp-nav-height);color:var(--vp-c-text-1);transition:color .5s}.text[data-v-04f5c5e9]{display:flex;align-items:center;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.option-icon[data-v-04f5c5e9]{margin-right:0;font-size:16px}.text-icon[data-v-04f5c5e9]{margin-left:4px;font-size:14px}.icon[data-v-04f5c5e9]{font-size:20px;transition:fill .25s}.menu[data-v-04f5c5e9]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPSocialLink[data-v-717b8b75]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-717b8b75]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-717b8b75]>svg,.VPSocialLink[data-v-717b8b75]>[class^=vpi-social-]{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-ee7a9424]{display:flex;justify-content:center}.VPNavBarExtra[data-v-925effce]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-925effce]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-925effce]{display:none}}.trans-title[data-v-925effce]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-925effce],.item.social-links[data-v-925effce]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-925effce]{min-width:176px}.appearance-action[data-v-925effce]{margin-right:-2px}.social-links-list[data-v-925effce]{margin:-4px -8px}.VPNavBarHamburger[data-v-5dea55bf]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-5dea55bf]{display:none}}.container[data-v-5dea55bf]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-5dea55bf]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-5dea55bf]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-5dea55bf]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-5dea55bf]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-5dea55bf]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-5dea55bf]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-5dea55bf],.VPNavBarHamburger.active:hover .middle[data-v-5dea55bf],.VPNavBarHamburger.active:hover .bottom[data-v-5dea55bf]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-5dea55bf],.middle[data-v-5dea55bf],.bottom[data-v-5dea55bf]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-5dea55bf]{top:0;left:0;transform:translate(0)}.middle[data-v-5dea55bf]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-5dea55bf]{top:12px;left:0;transform:translate(4px)}.VPNavBarMenuLink[data-v-ed5ac1f6]{display:flex;align-items:center;padding:0 12px;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.VPNavBarMenuLink.active[data-v-ed5ac1f6],.VPNavBarMenuLink[data-v-ed5ac1f6]:hover{color:var(--vp-c-brand-1)}.VPNavBarMenu[data-v-e6d46098]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-e6d46098]{display:flex}}/*! @docsearch/css 3.6.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */:root{--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:rgba(101,108,133,.8);--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 hsla(0,0%,100%,.5),0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px rgba(30,35,90,.4);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 1px 0 rgba(30,35,90,.4);--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12)}html[data-theme=dark]{--docsearch-text-color:#f5f6f7;--docsearch-container-background:rgba(9,10,17,.8);--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 1px 1px 0 rgba(3,4,9,.30196078431372547);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}.DocSearch-Button{align-items:center;background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;display:flex;font-weight:500;height:36px;justify-content:space-between;margin:0 0 0 16px;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:none}.DocSearch-Button-Container{align-items:center;display:flex}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;position:relative;padding:0 0 2px;border:0;top:-1px;width:20px}.DocSearch-Button-Key--pressed{transform:translate3d(0,1px,0);box-shadow:var(--docsearch-key-pressed-shadow)}@media (max-width:768px){.DocSearch-Button-Keys,.DocSearch-Button-Placeholder{display:none}}.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:none;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator{display:none}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Reset{animation:fade-in .1s ease-in forwards;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Cancel{display:none}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--deleting{transition:none}}.DocSearch-Hit--deleting{opacity:0;transition:all .25s linear}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--favoriting{transition:none}}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:all .25s linear;transition-delay:.25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit[aria-selected=true] mark{text-decoration:underline}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color);stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{transition:none}}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li{align-items:center;display:flex}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:2px;box-shadow:var(--docsearch-key-shadow);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;color:var(--docsearch-muted-color);border:0;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:calc(var(--docsearch-vh, 1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}[class*=DocSearch]{--docsearch-primary-color: var(--vp-c-brand-1);--docsearch-highlight-color: var(--docsearch-primary-color);--docsearch-text-color: var(--vp-c-text-1);--docsearch-muted-color: var(--vp-c-text-2);--docsearch-searchbox-shadow: none;--docsearch-searchbox-background: transparent;--docsearch-searchbox-focus-background: transparent;--docsearch-key-gradient: transparent;--docsearch-key-shadow: none;--docsearch-modal-background: var(--vp-c-bg-soft);--docsearch-footer-background: var(--vp-c-bg)}.dark [class*=DocSearch]{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-default-soft);--docsearch-hit-color: var(--vp-c-text-2);--docsearch-hit-shadow: none}.DocSearch-Button{display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:48px;height:55px;background:transparent;transition:border-color .25s}.DocSearch-Button:hover{background:transparent}.DocSearch-Button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.DocSearch-Button-Key--pressed{transform:none;box-shadow:none}.DocSearch-Button:focus:not(:focus-visible){outline:none!important}@media (min-width: 768px){.DocSearch-Button{justify-content:flex-start;border:1px solid transparent;border-radius:8px;padding:0 10px 0 12px;width:100%;height:40px;background-color:var(--vp-c-bg-alt)}.DocSearch-Button:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-bg-alt)}}.DocSearch-Button .DocSearch-Button-Container{display:flex;align-items:center}.DocSearch-Button .DocSearch-Search-Icon{position:relative;width:16px;height:16px;color:var(--vp-c-text-1);fill:currentColor;transition:color .5s}.DocSearch-Button:hover .DocSearch-Search-Icon{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Search-Icon{top:1px;margin-right:8px;width:14px;height:14px;color:var(--vp-c-text-2)}}.DocSearch-Button .DocSearch-Button-Placeholder{display:none;margin-top:2px;padding:0 16px 0 0;font-size:13px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.DocSearch-Button:hover .DocSearch-Button-Placeholder{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Placeholder{display:inline-block}}.DocSearch-Button .DocSearch-Button-Keys{direction:ltr;display:none;min-width:auto}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Keys{display:flex;align-items:center}}.DocSearch-Button .DocSearch-Button-Key{display:block;margin:2px 0 0;border:1px solid var(--vp-c-divider);border-right:none;border-radius:4px 0 0 4px;padding-left:6px;min-width:0;width:auto;height:22px;line-height:22px;font-family:var(--vp-font-family-base);font-size:12px;font-weight:500;transition:color .5s,border-color .5s}.DocSearch-Button .DocSearch-Button-Key+.DocSearch-Button-Key{border-right:1px solid var(--vp-c-divider);border-left:none;border-radius:0 4px 4px 0;padding-left:2px;padding-right:6px}.DocSearch-Button .DocSearch-Button-Key:first-child{font-size:0!important}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"Ctrl";font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.mac .DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"⌘"}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.DocSearch-Search-Icon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' stroke-width='1.6' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='m14.386 14.386 4.088 4.088-4.088-4.088A7.533 7.533 0 1 1 3.733 3.733a7.533 7.533 0 0 1 10.653 10.653z'/%3E%3C/svg%3E")}.VPNavBarSearch{display:flex;align-items:center}@media (min-width: 768px){.VPNavBarSearch{flex-grow:1;padding-left:24px}}@media (min-width: 960px){.VPNavBarSearch{padding-left:32px}}.dark .DocSearch-Footer{border-top:1px solid var(--vp-c-divider)}.DocSearch-Form{border:1px solid var(--vp-c-brand-1);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-default-soft)}.DocSearch-Screen-Icon>svg{margin:auto}.VPNavBarSocialLinks[data-v-164c457f]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-164c457f]{display:flex;align-items:center}}.title[data-v-28a961f9]{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;height:var(--vp-nav-height);font-size:16px;font-weight:600;color:var(--vp-c-text-1);transition:opacity .25s}@media (min-width: 960px){.title[data-v-28a961f9]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-28a961f9]{border-bottom-color:var(--vp-c-divider)}}[data-v-28a961f9] .logo{margin-right:8px;height:var(--vp-nav-logo-height)}.VPNavBarTranslations[data-v-c80d9ad0]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-c80d9ad0]{display:flex;align-items:center}}.title[data-v-c80d9ad0]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPNavBar[data-v-822684d1]{position:relative;height:var(--vp-nav-height);pointer-events:none;white-space:nowrap;transition:background-color .25s}.VPNavBar.screen-open[data-v-822684d1]{transition:none;background-color:var(--vp-nav-bg-color);border-bottom:1px solid var(--vp-c-divider)}.VPNavBar[data-v-822684d1]:not(.home){background-color:var(--vp-nav-bg-color)}@media (min-width: 960px){.VPNavBar[data-v-822684d1]:not(.home){background-color:transparent}.VPNavBar[data-v-822684d1]:not(.has-sidebar):not(.home.top){background-color:var(--vp-nav-bg-color)}}.wrapper[data-v-822684d1]{padding:0 8px 0 24px}@media (min-width: 768px){.wrapper[data-v-822684d1]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar .wrapper[data-v-822684d1]{padding:0}}.container[data-v-822684d1]{display:flex;justify-content:space-between;margin:0 auto;max-width:calc(var(--vp-layout-max-width) - 64px);height:var(--vp-nav-height);pointer-events:none}.container>.title[data-v-822684d1],.container>.content[data-v-822684d1]{pointer-events:none}.container[data-v-822684d1] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-822684d1]{max-width:100%}}.title[data-v-822684d1]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-822684d1]{position:absolute;top:0;left:0;z-index:2;padding:0 32px;width:var(--vp-sidebar-width);height:var(--vp-nav-height);background-color:transparent}}@media (min-width: 1440px){.VPNavBar.has-sidebar .title[data-v-822684d1]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}.content[data-v-822684d1]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-822684d1]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-822684d1]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2 + 32px);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.content-body[data-v-822684d1]{display:flex;justify-content:flex-end;align-items:center;height:var(--vp-nav-height);transition:background-color .5s}@media (min-width: 960px){.VPNavBar:not(.home.top) .content-body[data-v-822684d1]{position:relative;background-color:var(--vp-nav-bg-color)}.VPNavBar:not(.has-sidebar):not(.home.top) .content-body[data-v-822684d1]{background-color:transparent}}@media (max-width: 767px){.content-body[data-v-822684d1]{column-gap:.5rem}}.menu+.translations[data-v-822684d1]:before,.menu+.appearance[data-v-822684d1]:before,.menu+.social-links[data-v-822684d1]:before,.translations+.appearance[data-v-822684d1]:before,.appearance+.social-links[data-v-822684d1]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-822684d1]:before,.translations+.appearance[data-v-822684d1]:before{margin-right:16px}.appearance+.social-links[data-v-822684d1]:before{margin-left:16px}.social-links[data-v-822684d1]{margin-right:-8px}.divider[data-v-822684d1]{width:100%;height:1px}@media (min-width: 960px){.VPNavBar.has-sidebar .divider[data-v-822684d1]{padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .divider[data-v-822684d1]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.divider-line[data-v-822684d1]{width:100%;height:1px;transition:background-color .5s}.VPNavBar:not(.home) .divider-line[data-v-822684d1]{background-color:var(--vp-c-gutter)}@media (min-width: 960px){.VPNavBar:not(.home.top) .divider-line[data-v-822684d1]{background-color:var(--vp-c-gutter)}.VPNavBar:not(.has-sidebar):not(.home.top) .divider[data-v-822684d1]{background-color:var(--vp-c-gutter)}}.VPNavScreenAppearance[data-v-ffb44008]{display:flex;justify-content:space-between;align-items:center;border-radius:8px;padding:12px 14px 12px 16px;background-color:var(--vp-c-bg-soft)}.text[data-v-ffb44008]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenMenuLink[data-v-27d04aeb]{display:block;border-bottom:1px solid var(--vp-c-divider);padding:12px 0 11px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:border-color .25s,color .25s}.VPNavScreenMenuLink[data-v-27d04aeb]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupLink[data-v-7179dbb7]{display:block;margin-left:12px;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-1);transition:color .25s}.VPNavScreenMenuGroupLink[data-v-7179dbb7]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupSection[data-v-4b8941ac]{display:block}.title[data-v-4b8941ac]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-875057a5]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-875057a5]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-875057a5]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-875057a5]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-875057a5]{padding-bottom:6px;color:var(--vp-c-brand-1)}.VPNavScreenMenuGroup.open .button-icon[data-v-875057a5]{transform:rotate(45deg)}.button[data-v-875057a5]{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 11px 0;width:100%;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.button[data-v-875057a5]:hover{color:var(--vp-c-brand-1)}.button-icon[data-v-875057a5]{transition:transform .25s}.group[data-v-875057a5]:first-child{padding-top:0}.group+.group[data-v-875057a5],.group+.item[data-v-875057a5]{padding-top:4px}.VPNavScreenTranslations[data-v-362991c2]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-362991c2]{height:auto}.title[data-v-362991c2]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-362991c2]{font-size:16px}.icon.lang[data-v-362991c2]{margin-right:8px}.icon.chevron[data-v-362991c2]{margin-left:4px}.list[data-v-362991c2]{padding:4px 0 0 24px}.link[data-v-362991c2]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-833aabba]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px));right:0;bottom:0;left:0;padding:0 32px;width:100%;background-color:var(--vp-nav-screen-bg-color);overflow-y:auto;transition:background-color .25s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-833aabba],.VPNavScreen.fade-leave-active[data-v-833aabba]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-833aabba],.VPNavScreen.fade-leave-active .container[data-v-833aabba]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-833aabba],.VPNavScreen.fade-leave-to[data-v-833aabba]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-833aabba],.VPNavScreen.fade-leave-to .container[data-v-833aabba]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-833aabba]{display:none}}.container[data-v-833aabba]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-833aabba],.menu+.appearance[data-v-833aabba],.translations+.appearance[data-v-833aabba]{margin-top:24px}.menu+.social-links[data-v-833aabba]{margin-top:16px}.appearance+.social-links[data-v-833aabba]{margin-top:16px}.VPNav[data-v-f1e365da]{position:relative;top:var(--vp-layout-top-height, 0px);left:0;z-index:var(--vp-z-index-nav);width:100%;pointer-events:none;transition:background-color .5s}@media (min-width: 960px){.VPNav[data-v-f1e365da]{position:fixed}}.VPSidebarItem.level-0[data-v-196b2e5f]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-196b2e5f]{padding-bottom:10px}.item[data-v-196b2e5f]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-196b2e5f]{cursor:pointer}.indicator[data-v-196b2e5f]{position:absolute;top:6px;bottom:6px;left:-17px;width:2px;border-radius:2px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-196b2e5f],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-196b2e5f]{background-color:var(--vp-c-brand-1)}.link[data-v-196b2e5f]{display:flex;align-items:center;flex-grow:1}.text[data-v-196b2e5f]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-196b2e5f]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-196b2e5f],.VPSidebarItem.level-2 .text[data-v-196b2e5f],.VPSidebarItem.level-3 .text[data-v-196b2e5f],.VPSidebarItem.level-4 .text[data-v-196b2e5f],.VPSidebarItem.level-5 .text[data-v-196b2e5f]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-196b2e5f],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-196b2e5f]{color:var(--vp-c-brand-1)}.VPSidebarItem.level-0.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-1.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-2.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-3.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-4.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-5.has-active>.item>.text[data-v-196b2e5f],.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-196b2e5f],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-196b2e5f]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-196b2e5f],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-196b2e5f]{color:var(--vp-c-brand-1)}.caret[data-v-196b2e5f]{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--vp-c-text-3);cursor:pointer;transition:color .25s;flex-shrink:0}.item:hover .caret[data-v-196b2e5f]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-196b2e5f]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-196b2e5f]{font-size:18px;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-196b2e5f]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-196b2e5f],.VPSidebarItem.level-2 .items[data-v-196b2e5f],.VPSidebarItem.level-3 .items[data-v-196b2e5f],.VPSidebarItem.level-4 .items[data-v-196b2e5f],.VPSidebarItem.level-5 .items[data-v-196b2e5f]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-196b2e5f]{display:none}.no-transition[data-v-9e426adc] .caret-icon{transition:none}.group+.group[data-v-9e426adc]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-9e426adc]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPSidebar[data-v-18756405]{position:fixed;top:var(--vp-layout-top-height, 0px);bottom:0;left:0;z-index:var(--vp-z-index-sidebar);padding:32px 32px 96px;width:calc(100vw - 64px);max-width:320px;background-color:var(--vp-sidebar-bg-color);opacity:0;box-shadow:var(--vp-c-shadow-3);overflow-x:hidden;overflow-y:auto;transform:translate(-100%);transition:opacity .5s,transform .25s ease;overscroll-behavior:contain}.VPSidebar.open[data-v-18756405]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-18756405]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-18756405]{padding-top:var(--vp-nav-height);width:var(--vp-sidebar-width);max-width:100%;background-color:var(--vp-sidebar-bg-color);opacity:1;visibility:visible;box-shadow:none;transform:translate(0)}}@media (min-width: 1440px){.VPSidebar[data-v-18756405]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}@media (min-width: 960px){.curtain[data-v-18756405]{position:sticky;top:-64px;left:0;z-index:1;margin-top:calc(var(--vp-nav-height) * -1);margin-right:-32px;margin-left:-32px;height:var(--vp-nav-height);background-color:var(--vp-sidebar-bg-color)}}.nav[data-v-18756405]{outline:0}.VPSkipLink[data-v-c3508ec8]{top:8px;left:8px;padding:8px 16px;z-index:999;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;color:var(--vp-c-brand-1);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-c3508ec8]:focus{height:auto;width:auto;clip:auto;clip-path:none}@media (min-width: 1280px){.VPSkipLink[data-v-c3508ec8]{top:14px;left:16px}}.Layout[data-v-a9a9e638]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-db81191c]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPHomeSponsors[data-v-db81191c]{margin:96px 0}@media (min-width: 768px){.VPHomeSponsors[data-v-db81191c]{margin:128px 0}}.VPHomeSponsors[data-v-db81191c]{padding:0 24px}@media (min-width: 768px){.VPHomeSponsors[data-v-db81191c]{padding:0 48px}}@media (min-width: 960px){.VPHomeSponsors[data-v-db81191c]{padding:0 64px}}.container[data-v-db81191c]{margin:0 auto;max-width:1152px}.love[data-v-db81191c]{margin:0 auto;width:fit-content;font-size:28px;color:var(--vp-c-text-3)}.icon[data-v-db81191c]{display:inline-block}.message[data-v-db81191c]{margin:0 auto;padding-top:10px;max-width:320px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.sponsors[data-v-db81191c]{padding-top:32px}.action[data-v-db81191c]{padding-top:40px;text-align:center}.VPTeamPage[data-v-c2f8e101]{margin:96px 0}@media (min-width: 768px){.VPTeamPage[data-v-c2f8e101]{margin:128px 0}}.VPHome .VPTeamPageTitle[data-v-c2f8e101-s]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPTeamPageSection+.VPTeamPageSection[data-v-c2f8e101-s],.VPTeamMembers+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-c2f8e101-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-c2f8e101-s],.VPTeamMembers+.VPTeamPageSection[data-v-c2f8e101-s]{margin-top:96px}}.VPTeamMembers[data-v-c2f8e101-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-c2f8e101-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-c2f8e101-s]{padding:0 64px}}.VPTeamPageTitle[data-v-e277e15c]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-e277e15c]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-e277e15c]{padding:80px 64px 48px}}.title[data-v-e277e15c]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-e277e15c]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-e277e15c]{margin:0 auto;max-width:512px;padding-top:12px;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 768px){.lead[data-v-e277e15c]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-d43bc49d]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-d43bc49d]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-d43bc49d]{padding:0 64px}}.title[data-v-d43bc49d]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-d43bc49d]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-d43bc49d]{position:relative;display:inline-block;padding:0 24px;letter-spacing:0;line-height:32px;font-size:20px;font-weight:500;background-color:var(--vp-c-bg)}.lead[data-v-d43bc49d]{margin:0 auto;max-width:480px;padding-top:12px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.members[data-v-d43bc49d]{padding-top:40px}.VPTeamMembersItem[data-v-f9987cb6]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-f9987cb6]{padding:32px}.VPTeamMembersItem.small .data[data-v-f9987cb6]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-f9987cb6]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-f9987cb6]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-f9987cb6]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-f9987cb6]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-f9987cb6]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-f9987cb6]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-f9987cb6]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-f9987cb6]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-f9987cb6]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-f9987cb6]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-f9987cb6]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-f9987cb6]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-f9987cb6]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-f9987cb6]{text-align:center}.avatar[data-v-f9987cb6]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-f9987cb6]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-f9987cb6]{margin:0;font-weight:600}.affiliation[data-v-f9987cb6]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-f9987cb6]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-f9987cb6]:hover{color:var(--vp-c-brand-1)}.desc[data-v-f9987cb6]{margin:0 auto}.desc[data-v-f9987cb6] a{font-weight:500;color:var(--vp-c-brand-1);text-decoration-style:dotted;transition:color .25s}.links[data-v-f9987cb6]{display:flex;justify-content:center;height:56px}.sp-link[data-v-f9987cb6]{display:flex;justify-content:center;align-items:center;text-align:center;padding:16px;font-size:14px;font-weight:500;color:var(--vp-c-sponsor);background-color:var(--vp-c-bg-soft);transition:color .25s,background-color .25s}.sp .sp-link.link[data-v-f9987cb6]:hover,.sp .sp-link.link[data-v-f9987cb6]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-f9987cb6]{margin-right:8px;font-size:16px}.VPTeamMembers.small .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-fba19bad]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-fba19bad]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-fba19bad]{max-width:876px}.VPTeamMembers.medium .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-fba19bad]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-fba19bad]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-fba19bad]{max-width:760px}.container[data-v-fba19bad]{display:grid;gap:24px;margin:0 auto;max-width:1152px}:root{--vp-plugin-tabs-tab-text-color: var(--vp-c-text-2);--vp-plugin-tabs-tab-active-text-color: var(--vp-c-text-1);--vp-plugin-tabs-tab-hover-text-color: var(--vp-c-text-1);--vp-plugin-tabs-tab-bg: var(--vp-c-bg-soft);--vp-plugin-tabs-tab-divider: var(--vp-c-divider);--vp-plugin-tabs-tab-active-bar-color: var(--vp-c-brand-1)}.plugin-tabs{margin:16px 0;background-color:var(--vp-plugin-tabs-tab-bg);border-radius:8px}.plugin-tabs--tab-list{position:relative;padding:0 12px;overflow-x:auto;overflow-y:hidden}.plugin-tabs--tab-list:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:var(--vp-plugin-tabs-tab-divider)}.plugin-tabs--tab{position:relative;padding:0 12px;line-height:48px;border-bottom:2px solid transparent;color:var(--vp-plugin-tabs-tab-text-color);font-size:14px;font-weight:500;white-space:nowrap;transition:color .25s}.plugin-tabs--tab[aria-selected=true]{color:var(--vp-plugin-tabs-tab-active-text-color)}.plugin-tabs--tab:hover{color:var(--vp-plugin-tabs-tab-hover-text-color)}.plugin-tabs--tab:after{content:"";position:absolute;bottom:-2px;left:8px;right:8px;height:2px;background-color:transparent;transition:background-color .25s;z-index:1}.plugin-tabs--tab[aria-selected=true]:after{background-color:var(--vp-plugin-tabs-tab-active-bar-color)}.plugin-tabs--content[data-v-9b0d03d2]{padding:16px}.plugin-tabs--content[data-v-9b0d03d2]>:first-child:first-child{margin-top:0}.plugin-tabs--content[data-v-9b0d03d2]>:last-child:last-child{margin-bottom:0}.plugin-tabs--content[data-v-9b0d03d2]>div[class*=language-]{border-radius:8px;margin:16px 0}:root:not(.dark) .plugin-tabs--content[data-v-9b0d03d2] div[class*=language-]{background-color:var(--vp-c-bg)}.VPVersionPicker[data-v-f465cb49] button .text{color:var(--vp-c-text-1)!important}.VPVersionPicker[data-v-f465cb49]:hover button .text{color:var(--vp-c-text-2)!important}.VPHero .clip{white-space:pre;max-width:500px}:root{--vp-font-family-base: "Barlow", "Inter var experimental", "Inter var", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--vp-font-family-mono: "Fira Code", Menlo, Monaco, Consolas, "Courier New", monospace}:root{--julia-blue: #5fd7ff ;--julia-purple: #5fd7ff;--julia-red: #CB3C33;--julia-green: #0087d7;--vp-c-brand: #0087d7;--vp-c-brand-light: #0087d7;--vp-c-brand-lighter: #5fd7ff ;--vp-c-brand-lightest: #5fd7ff ;--vp-c-brand-dark: #5fd7ff;--vp-c-brand-darker: #5fd7ff ;--vp-c-brand-dimm: #212425}:root{--vp-button-brand-border: var(--vp-c-brand-light);--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand);--vp-button-brand-hover-border: var(--vp-c-brand-light);--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-light);--vp-button-brand-active-border: var(--vp-c-brand-light);--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-button-brand-bg)}:root{--vp-home-hero-name-color: transparent;--vp-home-hero-name-background: -webkit-linear-gradient( 120deg, #ff875f 30%, #0087d7 );--vp-home-hero-image-background-image: linear-gradient( -45deg, #0087d7 35%, #0087d7 35%, #ff875f );--vp-home-hero-image-filter: blur(40px)}@media (min-width: 640px){:root{--vp-home-hero-image-filter: blur(56px)}}@media (min-width: 960px){:root{--vp-home-hero-image-filter: blur(72px)}}:root.dark{--vp-custom-block-tip-border: var(--vp-c-brand);--vp-custom-block-tip-text: var(--vp-c-brand-lightest);--vp-custom-block-tip-bg: var(--vp-c-brand-dimm);--vp-c-black: hsl(220 20% 9%);--vp-c-black-pure: hsl(220, 24%, 4%);--vp-c-black-soft: hsl(220 16% 13%);--vp-c-black-mute: hsl(220 14% 17%);--vp-c-gray: hsl(220 8% 56%);--vp-c-gray-dark-1: hsl(220 10% 39%);--vp-c-gray-dark-2: hsl(220 12% 28%);--vp-c-gray-dark-3: hsl(220 12% 23%);--vp-c-gray-dark-4: hsl(220 14% 17%);--vp-c-gray-dark-5: hsl(220 16% 13%);--vp-c-bg: hsl(240, 2%, 11%);--vp-custom-block-info-bg: hsl(220 14% 17%);--vp-c-gutter: hsl(220 20% 9%);--vp-c-bg-alt: hsl(220 20% 9%);--vp-c-bg-soft: hsl(220 14% 17%);--vp-c-bg-mute: hsl(220 12% 23%)}.DocSearch{--docsearch-primary-color: var(--vp-c-brand) !important}mjx-container>svg{display:block;margin:auto}mjx-container{padding:.5rem 0}mjx-container{display:inline-block;margin:auto 2px -2px}mjx-container>svg{margin:auto;display:inline-block}:root{--vp-c-brand-1: #ff875f;--vp-c-brand-2: #ff875f;--vp-c-brand-3: #ff875f;--vp-c-sponsor: #ca2971;--vitest-c-sponsor-hover: #c13071}.dark{--vp-c-brand-1: #0087d7;--vp-c-brand-2: #0087d7;--vp-c-brand-3: #0087d7;--vp-c-sponsor: #ee4e95;--vitest-c-sponsor-hover: #e51370}.VPDoc.has-aside .content-container{max-width:100%!important}.aside{max-width:200px!important;padding-left:0!important}.VPDoc{padding-top:15px!important;padding-left:5px!important}.VPDocOutlineItem li{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:200px}.VPNavBar .title{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}@media (max-width: 960px){.VPDoc{padding-left:25px!important}}.VPLocalSearchBox[data-v-5b749456]{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:flex}.backdrop[data-v-5b749456]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--vp-backdrop-bg-color);transition:opacity .5s}.shell[data-v-5b749456]{position:relative;padding:12px;margin:64px auto;display:flex;flex-direction:column;gap:16px;background:var(--vp-local-search-bg);width:min(100vw - 60px,900px);height:min-content;max-height:min(100vh - 128px,900px);border-radius:6px}@media (max-width: 767px){.shell[data-v-5b749456]{margin:0;width:100vw;height:100vh;max-height:none;border-radius:0}}.search-bar[data-v-5b749456]{border:1px solid var(--vp-c-divider);border-radius:4px;display:flex;align-items:center;padding:0 12px;cursor:text}@media (max-width: 767px){.search-bar[data-v-5b749456]{padding:0 8px}}.search-bar[data-v-5b749456]:focus-within{border-color:var(--vp-c-brand-1)}.local-search-icon[data-v-5b749456]{display:block;font-size:18px}.navigate-icon[data-v-5b749456]{display:block;font-size:14px}.search-icon[data-v-5b749456]{margin:8px}@media (max-width: 767px){.search-icon[data-v-5b749456]{display:none}}.search-input[data-v-5b749456]{padding:6px 12px;font-size:inherit;width:100%}@media (max-width: 767px){.search-input[data-v-5b749456]{padding:6px 4px}}.search-actions[data-v-5b749456]{display:flex;gap:4px}@media (any-pointer: coarse){.search-actions[data-v-5b749456]{gap:8px}}@media (min-width: 769px){.search-actions.before[data-v-5b749456]{display:none}}.search-actions button[data-v-5b749456]{padding:8px}.search-actions button[data-v-5b749456]:not([disabled]):hover,.toggle-layout-button.detailed-list[data-v-5b749456]{color:var(--vp-c-brand-1)}.search-actions button.clear-button[data-v-5b749456]:disabled{opacity:.37}.search-keyboard-shortcuts[data-v-5b749456]{font-size:.8rem;opacity:75%;display:flex;flex-wrap:wrap;gap:16px;line-height:14px}.search-keyboard-shortcuts span[data-v-5b749456]{display:flex;align-items:center;gap:4px}@media (max-width: 767px){.search-keyboard-shortcuts[data-v-5b749456]{display:none}}.search-keyboard-shortcuts kbd[data-v-5b749456]{background:#8080801a;border-radius:4px;padding:3px 6px;min-width:24px;display:inline-block;text-align:center;vertical-align:middle;border:1px solid rgba(128,128,128,.15);box-shadow:0 2px 2px #0000001a}.results[data-v-5b749456]{display:flex;flex-direction:column;gap:6px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.result[data-v-5b749456]{display:flex;align-items:center;gap:8px;border-radius:4px;transition:none;line-height:1rem;border:solid 2px var(--vp-local-search-result-border);outline:none}.result>div[data-v-5b749456]{margin:12px;width:100%;overflow:hidden}@media (max-width: 767px){.result>div[data-v-5b749456]{margin:8px}}.titles[data-v-5b749456]{display:flex;flex-wrap:wrap;gap:4px;position:relative;z-index:1001;padding:2px 0}.title[data-v-5b749456]{display:flex;align-items:center;gap:4px}.title.main[data-v-5b749456]{font-weight:500}.title-icon[data-v-5b749456]{opacity:.5;font-weight:500;color:var(--vp-c-brand-1)}.title svg[data-v-5b749456]{opacity:.5}.result.selected[data-v-5b749456]{--vp-local-search-result-bg: var(--vp-local-search-result-selected-bg);border-color:var(--vp-local-search-result-selected-border)}.excerpt-wrapper[data-v-5b749456]{position:relative}.excerpt[data-v-5b749456]{opacity:50%;pointer-events:none;max-height:140px;overflow:hidden;position:relative;margin-top:4px}.result.selected .excerpt[data-v-5b749456]{opacity:1}.excerpt[data-v-5b749456] *{font-size:.8rem!important;line-height:130%!important}.titles[data-v-5b749456] mark,.excerpt[data-v-5b749456] mark{background-color:var(--vp-local-search-highlight-bg);color:var(--vp-local-search-highlight-text);border-radius:2px;padding:0 2px}.excerpt[data-v-5b749456] .vp-code-group .tabs{display:none}.excerpt[data-v-5b749456] .vp-code-group div[class*=language-]{border-radius:8px!important}.excerpt-gradient-bottom[data-v-5b749456]{position:absolute;bottom:-1px;left:0;width:100%;height:8px;background:linear-gradient(transparent,var(--vp-local-search-result-bg));z-index:1000}.excerpt-gradient-top[data-v-5b749456]{position:absolute;top:-1px;left:0;width:100%;height:8px;background:linear-gradient(var(--vp-local-search-result-bg),transparent);z-index:1000}.result.selected .titles[data-v-5b749456],.result.selected .title-icon[data-v-5b749456]{color:var(--vp-c-brand-1)!important}.no-results[data-v-5b749456]{font-size:.9rem;text-align:center;padding:12px}svg[data-v-5b749456]{flex:none} diff --git a/dev/assets/tables.md.BW-IP7L1.js b/dev/assets/tables.md.t8vBJGld.js similarity index 99% rename from dev/assets/tables.md.BW-IP7L1.js rename to dev/assets/tables.md.t8vBJGld.js index 502bbe2e3..295501fa3 100644 --- a/dev/assets/tables.md.BW-IP7L1.js +++ b/dev/assets/tables.md.t8vBJGld.js @@ -1,4 +1,4 @@ -import{_ as n,c as g,a4 as e,G as h,w as t,j as i,a as s,B as d,o as p}from"./chunks/framework.C6EFuEL4.js";const m=JSON.parse('{"title":"Tables and DataFrames","description":"","frontmatter":{},"headers":[],"relativePath":"tables.md","filePath":"tables.md","lastUpdated":null}'),r={name:"tables.md"};function f(o,a,y,c,b,w){const l=d("PluginTabsTab"),k=d("PluginTabs");return p(),g("div",null,[a[6]||(a[6]=e(`<h1 id="Tables-and-DataFrames" tabindex="-1">Tables and DataFrames <a class="header-anchor" href="#Tables-and-DataFrames" aria-label="Permalink to "Tables and DataFrames {#Tables-and-DataFrames}""></a></h1><p><a href="https://github.com/JuliaData/Tables.jl" target="_blank" rel="noreferrer">Tables.jl</a> provides an ecosystem-wide interface to tabular data in Julia, giving interoperability with <a href="https://dataframes.juliadata.org/stable/" target="_blank" rel="noreferrer">DataFrames.jl</a>, <a href="https://csv.juliadata.org/stable/" target="_blank" rel="noreferrer">CSV.jl</a> and hundreds of other packages that implement the standard.</p><p>DimensionalData.jl implements the Tables.jl interface for <code>AbstractDimArray</code> and <code>AbstractDimStack</code>. <code>DimStack</code> layers are unrolled so they are all the same size, and dimensions loop to match the length of the largest layer.</p><p>Columns are given the <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> or the array or the stack layer key. <code>Dimension</code> columns use the <code>Symbol</code> version (the result of <code>DD.name(dimension)</code>).</p><p>Looping of dimensions and stack layers is done <em>lazily</em>, and does not allocate unless collected.</p><h2 id="example" tabindex="-1">Example <a class="header-anchor" href="#example" aria-label="Permalink to "Example""></a></h2><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as n,c as g,a4 as e,G as h,w as t,j as i,a as s,B as d,o as p}from"./chunks/framework.B8l2DGq3.js";const m=JSON.parse('{"title":"Tables and DataFrames","description":"","frontmatter":{},"headers":[],"relativePath":"tables.md","filePath":"tables.md","lastUpdated":null}'),r={name:"tables.md"};function f(o,a,y,c,b,w){const l=d("PluginTabsTab"),k=d("PluginTabs");return p(),g("div",null,[a[6]||(a[6]=e(`<h1 id="Tables-and-DataFrames" tabindex="-1">Tables and DataFrames <a class="header-anchor" href="#Tables-and-DataFrames" aria-label="Permalink to "Tables and DataFrames {#Tables-and-DataFrames}""></a></h1><p><a href="https://github.com/JuliaData/Tables.jl" target="_blank" rel="noreferrer">Tables.jl</a> provides an ecosystem-wide interface to tabular data in Julia, giving interoperability with <a href="https://dataframes.juliadata.org/stable/" target="_blank" rel="noreferrer">DataFrames.jl</a>, <a href="https://csv.juliadata.org/stable/" target="_blank" rel="noreferrer">CSV.jl</a> and hundreds of other packages that implement the standard.</p><p>DimensionalData.jl implements the Tables.jl interface for <code>AbstractDimArray</code> and <code>AbstractDimStack</code>. <code>DimStack</code> layers are unrolled so they are all the same size, and dimensions loop to match the length of the largest layer.</p><p>Columns are given the <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> or the array or the stack layer key. <code>Dimension</code> columns use the <code>Symbol</code> version (the result of <code>DD.name(dimension)</code>).</p><p>Looping of dimensions and stack layers is done <em>lazily</em>, and does not allocate unless collected.</p><h2 id="example" tabindex="-1">Example <a class="header-anchor" href="#example" aria-label="Permalink to "Example""></a></h2><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DataFrames</span></span></code></pre></div><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y, c </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{:category}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'z'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1:10</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1:10</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> diff --git a/dev/assets/tables.md.BW-IP7L1.lean.js b/dev/assets/tables.md.t8vBJGld.lean.js similarity index 99% rename from dev/assets/tables.md.BW-IP7L1.lean.js rename to dev/assets/tables.md.t8vBJGld.lean.js index 502bbe2e3..295501fa3 100644 --- a/dev/assets/tables.md.BW-IP7L1.lean.js +++ b/dev/assets/tables.md.t8vBJGld.lean.js @@ -1,4 +1,4 @@ -import{_ as n,c as g,a4 as e,G as h,w as t,j as i,a as s,B as d,o as p}from"./chunks/framework.C6EFuEL4.js";const m=JSON.parse('{"title":"Tables and DataFrames","description":"","frontmatter":{},"headers":[],"relativePath":"tables.md","filePath":"tables.md","lastUpdated":null}'),r={name:"tables.md"};function f(o,a,y,c,b,w){const l=d("PluginTabsTab"),k=d("PluginTabs");return p(),g("div",null,[a[6]||(a[6]=e(`<h1 id="Tables-and-DataFrames" tabindex="-1">Tables and DataFrames <a class="header-anchor" href="#Tables-and-DataFrames" aria-label="Permalink to "Tables and DataFrames {#Tables-and-DataFrames}""></a></h1><p><a href="https://github.com/JuliaData/Tables.jl" target="_blank" rel="noreferrer">Tables.jl</a> provides an ecosystem-wide interface to tabular data in Julia, giving interoperability with <a href="https://dataframes.juliadata.org/stable/" target="_blank" rel="noreferrer">DataFrames.jl</a>, <a href="https://csv.juliadata.org/stable/" target="_blank" rel="noreferrer">CSV.jl</a> and hundreds of other packages that implement the standard.</p><p>DimensionalData.jl implements the Tables.jl interface for <code>AbstractDimArray</code> and <code>AbstractDimStack</code>. <code>DimStack</code> layers are unrolled so they are all the same size, and dimensions loop to match the length of the largest layer.</p><p>Columns are given the <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> or the array or the stack layer key. <code>Dimension</code> columns use the <code>Symbol</code> version (the result of <code>DD.name(dimension)</code>).</p><p>Looping of dimensions and stack layers is done <em>lazily</em>, and does not allocate unless collected.</p><h2 id="example" tabindex="-1">Example <a class="header-anchor" href="#example" aria-label="Permalink to "Example""></a></h2><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> +import{_ as n,c as g,a4 as e,G as h,w as t,j as i,a as s,B as d,o as p}from"./chunks/framework.B8l2DGq3.js";const m=JSON.parse('{"title":"Tables and DataFrames","description":"","frontmatter":{},"headers":[],"relativePath":"tables.md","filePath":"tables.md","lastUpdated":null}'),r={name:"tables.md"};function f(o,a,y,c,b,w){const l=d("PluginTabsTab"),k=d("PluginTabs");return p(),g("div",null,[a[6]||(a[6]=e(`<h1 id="Tables-and-DataFrames" tabindex="-1">Tables and DataFrames <a class="header-anchor" href="#Tables-and-DataFrames" aria-label="Permalink to "Tables and DataFrames {#Tables-and-DataFrames}""></a></h1><p><a href="https://github.com/JuliaData/Tables.jl" target="_blank" rel="noreferrer">Tables.jl</a> provides an ecosystem-wide interface to tabular data in Julia, giving interoperability with <a href="https://dataframes.juliadata.org/stable/" target="_blank" rel="noreferrer">DataFrames.jl</a>, <a href="https://csv.juliadata.org/stable/" target="_blank" rel="noreferrer">CSV.jl</a> and hundreds of other packages that implement the standard.</p><p>DimensionalData.jl implements the Tables.jl interface for <code>AbstractDimArray</code> and <code>AbstractDimStack</code>. <code>DimStack</code> layers are unrolled so they are all the same size, and dimensions loop to match the length of the largest layer.</p><p>Columns are given the <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> or the array or the stack layer key. <code>Dimension</code> columns use the <code>Symbol</code> version (the result of <code>DD.name(dimension)</code>).</p><p>Looping of dimensions and stack layers is done <em>lazily</em>, and does not allocate unless collected.</p><h2 id="example" tabindex="-1">Example <a class="header-anchor" href="#example" aria-label="Permalink to "Example""></a></h2><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DataFrames</span></span></code></pre></div><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y, c </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{:category}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'z'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1:10</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1:10</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> diff --git a/dev/basics.html b/dev/basics.html index ff2bf0779..52f103983 100644 --- a/dev/basics.html +++ b/dev/basics.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/basics.md.D2qsW-mh.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/basics.md.1otrM5SC.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_basics" data-v-83890dd9><div><h2 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-label="Permalink to "Installation""></a></h2><p>If you want to use this package you need to install it first. You can do it using the following commands:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># ']' should be pressed</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_basics" data-v-83890dd9><div><h2 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-label="Permalink to "Installation""></a></h2><p>If you want to use this package you need to install it first. You can do it using the following commands:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># ']' should be pressed</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> add DimensionalData</span></span></code></pre></div><p>or</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pkg</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">add</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"DimensionalData"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p>Additionally, it is recommended to check the version that you have installed with the status command.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ]</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">pkg</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> status DimensionalData</span></span></code></pre></div><h2 id="basics" tabindex="-1">Basics <a class="header-anchor" href="#basics" aria-label="Permalink to "Basics""></a></h2><p>Start using the package:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><p>and create your first DimArray</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimArray</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), (a</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, b</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> @@ -69,7 +69,7 @@ <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> ↓</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> →</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 2</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 3</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 4</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 5</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 6</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 7</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 8</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 9</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 10</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> :left</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 65 110 71 108 76 15 120 65 121 126</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> :right</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 125 78 118 101 11 32 87 108 49 115</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/basics.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><!----></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/dimensions" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Dimensions</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/broadcasts.html b/dev/broadcasts.html index 78ba67762..ca4b50aa2 100644 --- a/dev/broadcasts.html +++ b/dev/broadcasts.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Dimensional broadcasts with @d and broadcast_dims | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/broadcasts.md.BtCwjWW3.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/broadcasts.md.CVzEqDHf.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_broadcasts" data-v-83890dd9><div><h1 id="Dimensional-broadcasts-with-@d-and-broadcast_dims" tabindex="-1">Dimensional broadcasts with <code>@d</code> and <code>broadcast_dims</code> <a class="header-anchor" href="#Dimensional-broadcasts-with-@d-and-broadcast_dims" aria-label="Permalink to "Dimensional broadcasts with `@d` and `broadcast_dims` {#Dimensional-broadcasts-with-@d-and-broadcast_dims}""></a></h1><p>Broadcasting over AbstractDimArray works as usual with Base Julia broadcasts, except that dimensions are checked for compatibility with eachother, and that values match. Strict checks can be turned of globally with <code>strict_broadcast!(false)</code>. To avoid even dimension name checks, broadcast over <code>parent(dimarray)</code>.</p><p>The <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.@d"><code>@d</code></a> macro is a dimension-aware extension to regular dot brodcasting. <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> are analagous to Base julia <code>broadcast</code>.</p><p>Because we know the names of the dimensions, there is no ambiguity in which one we mean to broadcast together. This means we can permute and reshape dims so that broadcasts that would fail with a regular <code>Array</code> just work with a <code>DimArray</code>.</p><p>As an added bonus, <code>broadcast_dims</code> even works on <code>DimStack</code>s. Currently <code>@d</code> does not work on <code>DimStack</code>.</p><h2 id="Example:-scaling-along-the-time-dimension" tabindex="-1">Example: scaling along the time dimension <a class="header-anchor" href="#Example:-scaling-along-the-time-dimension" aria-label="Permalink to "Example: scaling along the time dimension {#Example:-scaling-along-the-time-dimension}""></a></h2><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_broadcasts" data-v-83890dd9><div><h1 id="Dimensional-broadcasts-with-@d-and-broadcast_dims" tabindex="-1">Dimensional broadcasts with <code>@d</code> and <code>broadcast_dims</code> <a class="header-anchor" href="#Dimensional-broadcasts-with-@d-and-broadcast_dims" aria-label="Permalink to "Dimensional broadcasts with `@d` and `broadcast_dims` {#Dimensional-broadcasts-with-@d-and-broadcast_dims}""></a></h1><p>Broadcasting over AbstractDimArray works as usual with Base Julia broadcasts, except that dimensions are checked for compatibility with eachother, and that values match. Strict checks can be turned of globally with <code>strict_broadcast!(false)</code>. To avoid even dimension name checks, broadcast over <code>parent(dimarray)</code>.</p><p>The <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.@d"><code>@d</code></a> macro is a dimension-aware extension to regular dot brodcasting. <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> and <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.broadcast_dims"><code>broadcast_dims</code></a> are analagous to Base julia <code>broadcast</code>.</p><p>Because we know the names of the dimensions, there is no ambiguity in which one we mean to broadcast together. This means we can permute and reshape dims so that broadcasts that would fail with a regular <code>Array</code> just work with a <code>DimArray</code>.</p><p>As an added bonus, <code>broadcast_dims</code> even works on <code>DimStack</code>s. Currently <code>@d</code> does not work on <code>DimStack</code>.</p><h2 id="Example:-scaling-along-the-time-dimension" tabindex="-1">Example: scaling along the time dimension <a class="header-anchor" href="#Example:-scaling-along-the-time-dimension" aria-label="Permalink to "Example: scaling along the time dimension {#Example:-scaling-along-the-time-dimension}""></a></h2><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Statistics</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y, t </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">25</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Ti</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Month</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">12</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1:100</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1:25</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> @@ -158,7 +158,7 @@ <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 2000-10-01T00:00:00</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 9.58054 … 5.3793 0.118632 7.12731</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 2000-11-01T00:00:00</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.134208 5.08512 6.19995 2.74204</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 2000-12-01T00:00:00</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 7.60111 11.5008 10.2026 6.54483</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/broadcasts.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/groupby" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>GroupBy</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/get_info" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Getting information</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/cuda.html b/dev/cuda.html index 696d7bae8..9d091813e 100644 --- a/dev/cuda.html +++ b/dev/cuda.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>CUDA & GPUs | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/cuda.md.DxFyd6lT.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/cuda.md.DmbWVZki.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_cuda" data-v-83890dd9><div><h1 id="CUDA-and-GPUs" tabindex="-1">CUDA & GPUs <a class="header-anchor" href="#CUDA-and-GPUs" aria-label="Permalink to "CUDA &amp; GPUs {#CUDA-and-GPUs}""></a></h1><p>Running regular julia code on GPUs is one of the most amazing things about the language. DimensionalData.jl leans into this as much as possible.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CUDA</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_cuda" data-v-83890dd9><div><h1 id="CUDA-and-GPUs" tabindex="-1">CUDA & GPUs <a class="header-anchor" href="#CUDA-and-GPUs" aria-label="Permalink to "CUDA &amp; GPUs {#CUDA-and-GPUs}""></a></h1><p>Running regular julia code on GPUs is one of the most amazing things about the language. DimensionalData.jl leans into this as much as possible.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CUDA</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Create a Float32 array to use on the GPU</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(Float32, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1000.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span> @@ -48,7 +48,7 @@ <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 999.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.40584</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.83056</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0804518</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.177423</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.20779</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.95217</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.881149</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1000.0</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.41334</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.719974</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.479126</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.92721</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.0649391</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 0.642908</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.07277</span></span></code></pre></div><p>But the data is on the GPU:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> typeof</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">parent</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(cuA2))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">CuArray{Float32, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, CUDA</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Mem</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DeviceBuffer}</span></span></code></pre></div><h2 id="GPU-Integration-goals" tabindex="-1">GPU Integration goals <a class="header-anchor" href="#GPU-Integration-goals" aria-label="Permalink to "GPU Integration goals {#GPU-Integration-goals}""></a></h2><p>DimensionalData.jl has two GPU-related goals:</p><ol><li><p>Work seamlessly with Base julia broadcasts and other operations that already work on GPU.</p></li><li><p>Work as arguments to custom GPU kernel functions.</p></li></ol><p>This means any <code>AbstractDimArray</code> must be automatically moved to the GPU and its fields converted to GPU friendly forms whenever required, using <a href="https://github.com/JuliaGPU/Adapt.jl" target="_blank" rel="noreferrer">Adapt.jl</a>).</p><ul><li><p>The array data must converts to the correct GPU array backend when <code>Adapt.adapt(dimarray)</code> is called.</p></li><li><p>All DimensionalData.jl objects, except the actual parent array, need to be immutable <code>isbits</code> or convertible to them. This is one reason DimensionalData.jl uses <code>rebuild</code> and a functional style, rather than in-place modification of fields.</p></li><li><p>Symbols need to be moved to the type system <code>Name{:layer_name}()</code> replaces <code>:layer_name</code></p></li><li><p>Metadata dicts need to be stripped, they are often too difficult to convert, and not needed on GPU.</p></li></ul><p>As an example, <a href="https://github.com/cesaraustralia/DynamicGrids.jl" target="_blank" rel="noreferrer">DynamicGrids.jl</a> uses <code>AbstractDimArray</code> for auxiliary model data that are passed into <a href="https://github.com/JuliaGPU/KernelAbstractions.jl" target="_blank" rel="noreferrer">KernelAbstractions.jl</a>/ <a href="https://github.com/JuliaGPU/CUDA.jl" target="_blank" rel="noreferrer">CUDA.jl</a> kernels.</p></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/cuda.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/tables" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Tables and DataFrames</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/diskarrays" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>DiskArrays</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/dimarrays.html b/dev/dimarrays.html index 07b9831b6..3630935f7 100644 --- a/dev/dimarrays.html +++ b/dev/dimarrays.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>DimArrays | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/dimarrays.md.CPKxRXq8.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/dimarrays.md.DAoE3lud.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_dimarrays" data-v-83890dd9><div><h1 id="dimarrays" tabindex="-1">DimArrays <a class="header-anchor" href="#dimarrays" aria-label="Permalink to "DimArrays""></a></h1><p><code>DimArray</code>s are wrappers for other kinds of <code>AbstractArray</code> that add named dimension lookups.</p><p>Here we define a <code>Matrix</code> of <code>Float64</code>, and give it <code>X</code> and <code>Y</code> dimensions</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_dimarrays" data-v-83890dd9><div><h1 id="dimarrays" tabindex="-1">DimArrays <a class="header-anchor" href="#dimarrays" aria-label="Permalink to "DimArrays""></a></h1><p><code>DimArray</code>s are wrappers for other kinds of <code>AbstractArray</code> that add named dimension lookups.</p><p>Here we define a <code>Matrix</code> of <code>Float64</code>, and give it <code>X</code> and <code>Y</code> dimensions</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">5×10 Matrix{Float64}:</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.534915 0.4518 0.194465 0.780132 … 0.476495 0.0239356 0.526295</span></span> @@ -181,25 +181,25 @@ <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 1.0 1.0 1.0</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @benchmark</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da4[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">BenchmarkTools.Trial: 10000 samples with 1000 evaluations.</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">3.095 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">20.188 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">3.096 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">3.128 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.460 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">2.785 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">18.735 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">2.795 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">2.822 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.462 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▅</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.1 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.13 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> +<span class="line"><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> </span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.78 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: frequency by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.83 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Memory estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0 bytes</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">, allocs estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">.</span></span></code></pre></div><p>the same as accessing the parent array directly:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @benchmark</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> parent</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">$</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">da4)[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">BenchmarkTools.Trial: 10000 samples with 1000 evaluations.</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">2.785 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">14.367 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">2.795 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">2.821 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.411 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Range </span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">(</span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">min</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#1b7c83;--shiki-light-font-weight:bold;--shiki-dark:#39c5cf;--shiki-dark-font-weight:bold;">3.095 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> … </span><span style="--shiki-light:#5a32a3;--shiki-light-font-weight:bold;--shiki-dark:#b392f0;--shiki-dark-font-weight:bold;">17.072 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">min … max</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% … 0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">3.105 ns </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">median</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00%</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Time </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">mean</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">3.136 ns</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ± </span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;"> 0.481 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> ┊</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> GC </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">(</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">mean ± σ</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">): </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">0.00% ± 0.00%</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▁</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▇</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.78 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 2.82 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▆</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▃</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> ▂</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#0366d6;--shiki-light-font-weight:bold;--shiki-dark:#2188ff;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">█</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▅</span><span style="--shiki-light:#28a745;--shiki-light-font-weight:bold;--shiki-dark:#34d058;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▁</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">▄</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> █</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.1 ns</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> Histogram: </span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">log(</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">frequency</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">)</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;"> by time</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> 3.14 ns </span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"><</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;"> Memory estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0 bytes</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">, allocs estimate</span><span style="--shiki-light:#959da5;--shiki-light-font-weight:bold;--shiki-dark:#959da5;--shiki-dark-font-weight:bold;">: </span><span style="--shiki-light:#dbab09;--shiki-light-font-weight:bold;--shiki-dark:#ffea7f;--shiki-dark-font-weight:bold;">0</span><span style="--shiki-light:#24292e;--shiki-light-font-weight:bold;--shiki-dark:#e1e4e8;--shiki-dark-font-weight:bold;">.</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/dimarrays.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/selectors" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Selectors</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/stacks" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>DimStacks</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/dimensions.html b/dev/dimensions.html index 4cea4d2c7..f614bd45d 100644 --- a/dev/dimensions.html +++ b/dev/dimensions.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Dimensions | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/dimensions.md.t2iPePY7.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/dimensions.md.Btc7hsPQ.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,10 +20,10 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_dimensions" data-v-83890dd9><div><h1 id="dimensions" tabindex="-1">Dimensions <a class="header-anchor" href="#dimensions" aria-label="Permalink to "Dimensions""></a></h1><p>Dimensions are "wrapper types" that can be used to wrap any object to associate it with a named dimension.</p><p><code>X</code>, <code>Y</code>, <code>Z</code>, <code>Ti</code> are predefined as types:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_dimensions" data-v-83890dd9><div><h1 id="dimensions" tabindex="-1">Dimensions <a class="header-anchor" href="#dimensions" aria-label="Permalink to "Dimensions""></a></h1><p>Dimensions are "wrapper types" that can be used to wrap any object to associate it with a named dimension.</p><p><code>X</code>, <code>Y</code>, <code>Z</code>, <code>Ti</code> are predefined as types:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#d73a49;--shiki-dark:#ea4a5a;"> 1</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 2</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;">↗ </span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;">Z</span><span style="--shiki-light:#5fd7ff;--shiki-dark:#5fd7ff;"> 3</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><p>You can also make <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.Dim"><code>Dim</code></a> dimensions with any name:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Dim{:a}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{:b}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">a</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">b</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><p>The wrapped value can be retrieved with <code>val</code>:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> val</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">1</span></span></code></pre></div><p>DimensionalData.jl uses <code>Dimensions</code> everywhere:</p><ul><li><p><code>Dimension</code> are returned from <code>dims</code> to specify the names of the dimensions of an object</p></li><li><p>they wrap <a href="/DimensionalData.jl/dev/api/lookuparrays#DimensionalData.Dimensions.Lookups"><code>Lookups</code></a> to associate the lookups with those names</p></li><li><p>to index into these objects, they wrap indices like <code>Int</code> or a <code>Selector</code></p></li></ul><p>This symmetry means we can ignore how data is organised, and label and access it by name, letting DD work out the details for us.</p><p>Dimensions are defined in the <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions"><code>Dimensions</code></a> submodule, some Dimension-specific methods can be brought into scope with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Dimensions</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/dimensions.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/basics" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Getting Started</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/selectors" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Selectors</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/diskarrays.html b/dev/diskarrays.html index 7af8b704a..38744368e 100644 --- a/dev/diskarrays.html +++ b/dev/diskarrays.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>DiskArrays.jl compatibility | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/diskarrays.md.yKxLOQIu.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/diskarrays.md.DNn9Ahrm.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,8 +20,8 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_diskarrays" data-v-83890dd9><div><h1 id="DiskArrays.jl-compatibility" tabindex="-1">DiskArrays.jl compatibility <a class="header-anchor" href="#DiskArrays.jl-compatibility" aria-label="Permalink to "DiskArrays.jl compatibility {#DiskArrays.jl-compatibility}""></a></h1><p><a href="https://github.com/meggart/DiskArrays.jl" target="_blank" rel="noreferrer">DiskArrays.jl</a> enables lazy, chunked application of:</p><ul><li><p>broadcast</p></li><li><p>reductions</p></li><li><p>iteration</p></li><li><p>generators</p></li><li><p>zip</p></li></ul><p>It is rarely used directly, but is present in most disk and cloud based spatial data packages in julia, including: ArchGDAL.jl, NetCDF.jl, Zarr.jl, NCDatasets.lj, GRIBDatasets.jl and CommonDataModel.jl</p><p>The combination of DiskArrays.jl and DimensionalData.jl is Julias answer to pythons <a href="https://xarray.dev/" target="_blank" rel="noreferrer">xarray</a>. Rasters.jl and YAXArrays.jl are user-facing tools building on this combination.</p><p>They have no direct dependency relationships, with but are intentionally designed to integrate via both adherence to Julia's <code>AbstractArray</code> interface, and by coordination during development of both packages.</p></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/diskarrays.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/cuda" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>CUDA and GPUs</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/extending_dd" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Extending DimensionalData</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_diskarrays" data-v-83890dd9><div><h1 id="DiskArrays.jl-compatibility" tabindex="-1">DiskArrays.jl compatibility <a class="header-anchor" href="#DiskArrays.jl-compatibility" aria-label="Permalink to "DiskArrays.jl compatibility {#DiskArrays.jl-compatibility}""></a></h1><p><a href="https://github.com/meggart/DiskArrays.jl" target="_blank" rel="noreferrer">DiskArrays.jl</a> enables lazy, chunked application of:</p><ul><li><p>broadcast</p></li><li><p>reductions</p></li><li><p>iteration</p></li><li><p>generators</p></li><li><p>zip</p></li></ul><p>It is rarely used directly, but is present in most disk and cloud based spatial data packages in julia, including: ArchGDAL.jl, NetCDF.jl, Zarr.jl, NCDatasets.lj, GRIBDatasets.jl and CommonDataModel.jl</p><p>The combination of DiskArrays.jl and DimensionalData.jl is Julias answer to pythons <a href="https://xarray.dev/" target="_blank" rel="noreferrer">xarray</a>. Rasters.jl and YAXArrays.jl are user-facing tools building on this combination.</p><p>They have no direct dependency relationships, with but are intentionally designed to integrate via both adherence to Julia's <code>AbstractArray</code> interface, and by coordination during development of both packages.</p></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/diskarrays.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/cuda" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>CUDA and GPUs</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/extending_dd" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Extending DimensionalData</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/extending_dd.html b/dev/extending_dd.html index 192eb14fb..24adc0dc7 100644 --- a/dev/extending_dd.html +++ b/dev/extending_dd.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Extending DimensionalData | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/extending_dd.md.DidWHgEG.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/extending_dd.md.DoS75dmN.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_extending_dd" data-v-83890dd9><div><h1 id="Extending-DimensionalData" tabindex="-1">Extending DimensionalData <a class="header-anchor" href="#Extending-DimensionalData" aria-label="Permalink to "Extending DimensionalData {#Extending-DimensionalData}""></a></h1><p>Nearly everything in DimensionalData.jl is designed to be extensible.</p><ul><li><p><code>AbstractDimArray</code> are easily extended to custom array types. <code>Raster</code> or <code>YAXArray</code> are examples from other packages.</p></li><li><p><code>AbstractDimStack</code> are easily extended to custom mixed array dataset. <code>RasterStack</code> or <code>ArViZ.Dataset</code> are examples.</p></li><li><p><code>Lookup</code> can have new types added, e.g. to <code>AbstractSampled</code> or <code>AbstractCategorical</code>. <code>Rasters.Projected</code> is a lookup that knows its coordinate reference system, but otherwise behaves as a regular <code>Sampled</code> lookup.</p></li></ul><p><code>dims</code>, <code>rebuild</code> and <code>format</code> are the key interface methods in most of these cases.</p><h2 id="dims" tabindex="-1"><code>dims</code> <a class="header-anchor" href="#dims" aria-label="Permalink to "`dims` {#dims}""></a></h2><p>Objects extending DimensionalData.jl that have dimensions must return a <code>Tuple</code> of constructed <code>Dimension</code>s from <code>dims(obj)</code>.</p><h3 id="Dimension-axes" tabindex="-1"><code>Dimension</code> axes <a class="header-anchor" href="#Dimension-axes" aria-label="Permalink to "`Dimension` axes {#Dimension-axes}""></a></h3><p>Dimensions return from <code>dims</code> should hold a <code>Lookup</code> or in some cases just an <code>AbstractArray</code> (like with <code>DimIndices</code>). When attached to multi-dimensional objects, lookups must be the <em>same length</em> as the axis of the array it represents, and <code>eachindex(A, i)</code> and <code>eachindex(dim)</code> must return the same values.</p><p>This means that if the array has OffsetArrays.jl axes, the array the dimension wraps must also have OffsetArrays.jl axes.</p><h3 id="dims-keywords" tabindex="-1"><code>dims</code> keywords <a class="header-anchor" href="#dims-keywords" aria-label="Permalink to "`dims` keywords {#dims-keywords}""></a></h3><p>To any <code>dims</code> keyword argument that usually requires the dimension I, objects should accept any <code>Dimension</code>, <code>Type{<:Dimension}</code>, <code>Symbol</code>, <code>Val{:Symbol}</code>, <code>Val{<:Type{<:Dimension}}</code> or also regular <code>Integer</code>.</p><p>This is easier than it sounds, calling <code>DD.dims(objs, dims)</code> will return the matching dimension and <code>DD.dimnum(obj, dims)</code> will return the matching <code>Int</code> for any of these inputs as long as <code>dims(obj)</code> is implemented.</p><h2 id="rebuild" tabindex="-1"><code>rebuild</code> <a class="header-anchor" href="#rebuild" aria-label="Permalink to "`rebuild` {#rebuild}""></a></h2><p>Rebuild methods are used to rebuild immutable objects with new field values, in a way that is more flexible and extensible than just using ConstructionBase.jl reconstruction. Developers can choose to ignore some of the fields passed by <code>rebuild</code>.</p><p>The function signature is always one of:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_extending_dd" data-v-83890dd9><div><h1 id="Extending-DimensionalData" tabindex="-1">Extending DimensionalData <a class="header-anchor" href="#Extending-DimensionalData" aria-label="Permalink to "Extending DimensionalData {#Extending-DimensionalData}""></a></h1><p>Nearly everything in DimensionalData.jl is designed to be extensible.</p><ul><li><p><code>AbstractDimArray</code> are easily extended to custom array types. <code>Raster</code> or <code>YAXArray</code> are examples from other packages.</p></li><li><p><code>AbstractDimStack</code> are easily extended to custom mixed array dataset. <code>RasterStack</code> or <code>ArViZ.Dataset</code> are examples.</p></li><li><p><code>Lookup</code> can have new types added, e.g. to <code>AbstractSampled</code> or <code>AbstractCategorical</code>. <code>Rasters.Projected</code> is a lookup that knows its coordinate reference system, but otherwise behaves as a regular <code>Sampled</code> lookup.</p></li></ul><p><code>dims</code>, <code>rebuild</code> and <code>format</code> are the key interface methods in most of these cases.</p><h2 id="dims" tabindex="-1"><code>dims</code> <a class="header-anchor" href="#dims" aria-label="Permalink to "`dims` {#dims}""></a></h2><p>Objects extending DimensionalData.jl that have dimensions must return a <code>Tuple</code> of constructed <code>Dimension</code>s from <code>dims(obj)</code>.</p><h3 id="Dimension-axes" tabindex="-1"><code>Dimension</code> axes <a class="header-anchor" href="#Dimension-axes" aria-label="Permalink to "`Dimension` axes {#Dimension-axes}""></a></h3><p>Dimensions return from <code>dims</code> should hold a <code>Lookup</code> or in some cases just an <code>AbstractArray</code> (like with <code>DimIndices</code>). When attached to multi-dimensional objects, lookups must be the <em>same length</em> as the axis of the array it represents, and <code>eachindex(A, i)</code> and <code>eachindex(dim)</code> must return the same values.</p><p>This means that if the array has OffsetArrays.jl axes, the array the dimension wraps must also have OffsetArrays.jl axes.</p><h3 id="dims-keywords" tabindex="-1"><code>dims</code> keywords <a class="header-anchor" href="#dims-keywords" aria-label="Permalink to "`dims` keywords {#dims-keywords}""></a></h3><p>To any <code>dims</code> keyword argument that usually requires the dimension I, objects should accept any <code>Dimension</code>, <code>Type{<:Dimension}</code>, <code>Symbol</code>, <code>Val{:Symbol}</code>, <code>Val{<:Type{<:Dimension}}</code> or also regular <code>Integer</code>.</p><p>This is easier than it sounds, calling <code>DD.dims(objs, dims)</code> will return the matching dimension and <code>DD.dimnum(obj, dims)</code> will return the matching <code>Int</code> for any of these inputs as long as <code>dims(obj)</code> is implemented.</p><h2 id="rebuild" tabindex="-1"><code>rebuild</code> <a class="header-anchor" href="#rebuild" aria-label="Permalink to "`rebuild` {#rebuild}""></a></h2><p>Rebuild methods are used to rebuild immutable objects with new field values, in a way that is more flexible and extensible than just using ConstructionBase.jl reconstruction. Developers can choose to ignore some of the fields passed by <code>rebuild</code>.</p><p>The function signature is always one of:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj, args</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span> <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rebuild</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(obj; kw</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><code>rebuild</code> has keyword versions automatically generated for all objects using <a href="https://github.com/JuliaObjects/ConstructionBase.jl" target="_blank" rel="noreferrer">ConstructionBase.jl</a>.</p><p>These will work without further work as long as your object has the fields used by DimensionalData.jl objects. For example, <code>AbstractDimArray</code> will receive these keywords in <code>rebuild</code>: <code>data</code>, <code>dims</code>, <code>refdims</code>, <code>name</code>, <code>metadata</code>.</p><p>If your <code>AbstractDimArray</code> does not have all these fields, you must implement <code>rebuild(x::YourDimArray; kw...)</code> manually.</p><p>An argument method is also defined with the same arguments as the keyword version. For <code>AbstractDimArray</code> it should only be used for updating <code>data</code> and <code>dims</code>, any more that that is confusing.</p><p>For <code>Dimension</code> and <code>Selector</code> the single argument versions are easiest to use, as there is only one argument.</p><h2 id="format" tabindex="-1"><code>format</code> <a class="header-anchor" href="#format" aria-label="Permalink to "`format` {#format}""></a></h2><p>When constructing an <code>AbstractDimArray</code> or <code>AbstractDimStack</code> <a href="/DimensionalData.jl/dev/api/dimensions#DimensionalData.Dimensions.format"><code>DimensionalData.format</code></a> must be called on the <code>dims</code> tuple and the parent array:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(dims, array)</span></span></code></pre></div><p>This lets DimensionalData detect the lookup properties, fill in missing fields of a <code>Lookup</code>, pass keywords from <code>Dimension</code> to detected <code>Lookup</code> constructors, and accept a wider range of dimension inputs like tuples of <code>Symbol</code> and <code>Type</code>.</p><p>Not calling <code>format</code> in the outer constructors of an <code>AbstractDimArray</code> has undefined behaviour.</p><h2 id="Interfaces.jl-interface-testing" tabindex="-1">Interfaces.jl interface testing <a class="header-anchor" href="#Interfaces.jl-interface-testing" aria-label="Permalink to "Interfaces.jl interface testing {#Interfaces.jl-interface-testing}""></a></h2><p>DimensionalData defines explicit, testable Interfaces.jl interfaces: <code>DimArrayInterface</code> and <code>DimStackInterface</code>.</p><div class="plugin-tabs"><div class="plugin-tabs--tab-list" role="tablist"><!--[--><button id="tab-array-1" role="tab" class="plugin-tabs--tab" aria-selected="true" aria-controls="panel-array-1" tabindex="0">array</button><button id="tab-stack-1" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-stack-1" tabindex="-1">stack</button><!--]--></div><!--[--><div id="panel-array-1" class="plugin-tabs--content" role="tabpanel" tabindex="0" aria-labelledby="tab-array-1" data-v-9b0d03d2><!--[--><p>This is the implementation definition for <code>DimArray</code>:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, Interfaces</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @implements</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimArrayInterface{(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:refdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:metadata</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)} DimArray [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">zeros</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Z</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))]</span></span></code></pre></div><p>See the <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.DimArrayInterface"><code>DimensionalData.DimArrayInterface</code></a> docs for options. We can test it with:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Interfaces</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">test</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">DimArrayInterface)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"></span> @@ -50,7 +50,7 @@ <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">Implementation summary:</span></span> <span class="line"><span style="--shiki-light:#dbab09;--shiki-dark:#ffea7f;"> DimArray</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> correctly implements </span><span style="--shiki-light:#0366d6;--shiki-dark:#2188ff;">DimensionalData.DimArrayInterface: </span><span style="--shiki-light:#28a745;--shiki-dark:#34d058;">true</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">true</span></span></code></pre></div><!--]--></div><!----><!--]--></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/extending_dd.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/diskarrays" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>DiskArrays</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/api/reference" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>API Reference</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/get_info.html b/dev/get_info.html index 5fd25167a..f1e64c5d0 100644 --- a/dev/get_info.html +++ b/dev/get_info.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Getters | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/get_info.md.D7dC6CSA.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/get_info.md.B7K6LY7P.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_get_info" data-v-83890dd9><div><h1 id="getters" tabindex="-1">Getters <a class="header-anchor" href="#getters" aria-label="Permalink to "Getters""></a></h1><p>DimensionalData.jl defines consistent methods to retrieve information from objects like <code>DimArray</code>, <code>DimStack</code>, <code>Tuple</code>s of <code>Dimension</code>, <code>Dimension</code> and <code>Lookup</code>.</p><p>First we will define an example <code>DimArray</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_get_info" data-v-83890dd9><div><h1 id="getters" tabindex="-1">Getters <a class="header-anchor" href="#getters" aria-label="Permalink to "Getters""></a></h1><p>DimensionalData.jl defines consistent methods to retrieve information from objects like <code>DimArray</code>, <code>DimStack</code>, <code>Tuple</code>s of <code>Dimension</code>, <code>Dimension</code> and <code>Lookup</code>.</p><p>First we will define an example <code>DimArray</code>.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Lookups</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">x, y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">200.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>(↓ X 10:-1:1,</span></span> <span class="line"><span>→ Y 100.0:10.0:200.0)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭───────────────────────────╮</span></span> @@ -49,7 +49,7 @@ <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Sampled{Float64} </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">100.0:10.0:200.0</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> ForwardOrdered</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Regular</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Points</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><!--]--></div><!----><!----><!----><!----><!----><!----><!----><!----><!----><!----><!--]--></div><h2 id="predicates" tabindex="-1">Predicates <a class="header-anchor" href="#predicates" aria-label="Permalink to "Predicates""></a></h2><p>These always return <code>true</code> or <code>false</code>. With multiple dimensions, <code>fale</code> means <code>!all</code> and <code>true</code> means <code>all</code>.</p><p><code>dims</code> and all other methods listed above can use predicates to filter the returned dimensions.</p><div class="plugin-tabs"><div class="plugin-tabs--tab-list" role="tablist"><!--[--><button id="tab-issampled-10" role="tab" class="plugin-tabs--tab" aria-selected="true" aria-controls="panel-issampled-10" tabindex="0">issampled</button><button id="tab-iscategorical-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-iscategorical-10" tabindex="-1">iscategorical</button><button id="tab-iscyclic-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-iscyclic-10" tabindex="-1">iscyclic</button><button id="tab-isordered-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-isordered-10" tabindex="-1">isordered</button><button id="tab-isforward-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-isforward-10" tabindex="-1">isforward</button><button id="tab-isreverse-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-isreverse-10" tabindex="-1">isreverse</button><button id="tab-isintervals-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-isintervals-10" tabindex="-1">isintervals</button><button id="tab-ispoints-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-ispoints-10" tabindex="-1">ispoints</button><button id="tab-isregular-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-isregular-10" tabindex="-1">isregular</button><button id="tab-isexplicit-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-isexplicit-10" tabindex="-1">isexplicit</button><button id="tab-isstart-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-isstart-10" tabindex="-1">isstart</button><button id="tab-iscenter-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-iscenter-10" tabindex="-1">iscenter</button><button id="tab-isend-10" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-isend-10" tabindex="-1">isend</button><!--]--></div><!--[--><div id="panel-issampled-10" class="plugin-tabs--content" role="tabpanel" tabindex="0" aria-labelledby="tab-issampled-10" data-v-9b0d03d2><!--[--><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> issampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">true</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> issampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">true</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> issampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Y)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">true</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> issampled</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, Y))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">true</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> dims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, issampled)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Sampled{Int64} </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">10:-1:1</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> ReverseOrdered</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Regular</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Points</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Sampled{Float64} </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">100.0:10.0:200.0</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> ForwardOrdered</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Regular</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Points</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> otherdims</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, issampled)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">()</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> lookup</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A, issampled)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">Sampled{Int64} </span><span style="--shiki-light:#6a737d;--shiki-dark:#d1d5da;">10:-1:1</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> ReverseOrdered</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Regular</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Points</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">Sampled{Float64} </span><span style="--shiki-light:#6a737d;--shiki-dark:#d1d5da;">100.0:10.0:200.0</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> ForwardOrdered</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Regular</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Points</span></span></code></pre></div><!--]--></div><!----><!----><!----><!----><!----><!----><!----><!----><!----><!----><!----><!----><!--]--></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/get_info.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/broadcasts" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Dimension-aware broadcast</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/object_modification" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Object modification</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/groupby.html b/dev/groupby.html index cca4aa1a3..3bf451a07 100644 --- a/dev/groupby.html +++ b/dev/groupby.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Group By | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/groupby.md.B2ubhn1c.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/groupby.md.DESSK1W0.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_groupby" data-v-83890dd9><div><h1 id="Group-By" tabindex="-1">Group By <a class="header-anchor" href="#Group-By" aria-label="Permalink to "Group By {#Group-By}""></a></h1><p>DimensionalData.jl provides a <code>groupby</code> function for dimensional grouping. This guide will cover:</p><ul><li><p>simple grouping with a function</p></li><li><p>grouping with <code>Bins</code></p></li><li><p>grouping with another existing <code>AbstractDimArry</code> or <code>Dimension</code></p></li></ul><h2 id="Grouping-functions" tabindex="-1">Grouping functions <a class="header-anchor" href="#Grouping-functions" aria-label="Permalink to "Grouping functions {#Grouping-functions}""></a></h2><p>Lets look at the kind of functions that can be used to group <code>DateTime</code>. Other types will follow the same principles, but are usually simpler.</p><p>First load some packages:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_groupby" data-v-83890dd9><div><h1 id="Group-By" tabindex="-1">Group By <a class="header-anchor" href="#Group-By" aria-label="Permalink to "Group By {#Group-By}""></a></h1><p>DimensionalData.jl provides a <code>groupby</code> function for dimensional grouping. This guide will cover:</p><ul><li><p>simple grouping with a function</p></li><li><p>grouping with <code>Bins</code></p></li><li><p>grouping with another existing <code>AbstractDimArry</code> or <code>Dimension</code></p></li></ul><h2 id="Grouping-functions" tabindex="-1">Grouping functions <a class="header-anchor" href="#Grouping-functions" aria-label="Permalink to "Grouping functions {#Grouping-functions}""></a></h2><p>Lets look at the kind of functions that can be used to group <code>DateTime</code>. Other types will follow the same principles, but are usually simpler.</p><p>First load some packages:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Statistics</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DD </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><p>Now create a demo <code>DateTime</code> range</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> tempo </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> range</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">DateTime</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2000</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), step</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Hour</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), length</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">365</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">24</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">Dates.DateTime("2000-01-01T00:00:00"):Dates.Hour(1):Dates.DateTime("2001-12-30T23:00:00")</span></span></code></pre></div><p>Lets see how some common functions work.</p><p>The <code>hour</code> function will transform values to hour of the day - the integers <code>0:23</code></p><div class="plugin-tabs"><div class="plugin-tabs--tab-list" role="tablist"><!--[--><button id="tab-hour-11" role="tab" class="plugin-tabs--tab" aria-selected="true" aria-controls="panel-hour-11" tabindex="0">hour</button><button id="tab-day-11" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-day-11" tabindex="-1">day</button><button id="tab-month-11" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-month-11" tabindex="-1">month</button><button id="tab-dayofweek-11" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-dayofweek-11" tabindex="-1">dayofweek</button><button id="tab-dayofyear-11" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-dayofyear-11" tabindex="-1">dayofyear</button><!--]--></div><!--[--><div id="panel-hour-11" class="plugin-tabs--content" role="tabpanel" tabindex="0" aria-labelledby="tab-hour-11" data-v-9b0d03d2><!--[--><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> hour</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.(tempo)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">17520-element Vector{Int64}:</span></span> @@ -138,7 +138,7 @@ <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> ⋮</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 2001-12-30T22:00:00</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 101</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">×</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> DimArray</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 2001-12-30T23:00:00</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 101</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">×</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">1</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> DimArray</span></span></code></pre></div><!--]--></div><!----><!--]--></div><p><em>TODO: Apply custom function (i.e. normalization) to grouped output.</em></p></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/groupby.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/stacks" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>DimStacks</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/broadcasts" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Dimension-aware broadcast</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/hashmap.json b/dev/hashmap.json index c4d8353f2..60f6dc7ce 100644 --- a/dev/hashmap.json +++ b/dev/hashmap.json @@ -1 +1 @@ -{"api_dimensions.md":"CnOMCJ83","api_lookuparrays.md":"CMGRbv3b","api_reference.md":"Brz0Wk34","basics.md":"D2qsW-mh","broadcasts.md":"BtCwjWW3","cuda.md":"DxFyd6lT","dimarrays.md":"CPKxRXq8","dimensions.md":"t2iPePY7","diskarrays.md":"yKxLOQIu","extending_dd.md":"DidWHgEG","get_info.md":"D7dC6CSA","groupby.md":"B2ubhn1c","index.md":"CRTGE4WO","integrations.md":"B4DeywJ6","object_modification.md":"BpAIEIxF","plots.md":"2aFJv8Qw","selectors.md":"BxHSadsn","stacks.md":"Dr5B-1Fh","tables.md":"BW-IP7L1"} +{"api_dimensions.md":"SBrxkSyF","api_lookuparrays.md":"4gWyIReH","api_reference.md":"Cbzd03zL","basics.md":"1otrM5SC","broadcasts.md":"CVzEqDHf","cuda.md":"DmbWVZki","dimarrays.md":"DAoE3lud","dimensions.md":"Btc7hsPQ","diskarrays.md":"DNn9Ahrm","extending_dd.md":"DoS75dmN","get_info.md":"B7K6LY7P","groupby.md":"DESSK1W0","index.md":"uhypFJup","integrations.md":"dJo1qUjg","object_modification.md":"-cjSpi5I","plots.md":"kpY9w3i0","selectors.md":"Cu8DY1IK","stacks.md":"SmvHWrk4","tables.md":"t8vBJGld"} diff --git a/dev/index.html b/dev/index.html index 13cbd211d..6f53a7cab 100644 --- a/dev/index.html +++ b/dev/index.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/index.md.CRTGE4WO.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/index.md.uhypFJup.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,8 +20,8 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><!----><!----><div class="VPContent is-home" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPHome" data-v-91765379 data-v-cbb6ec48><!--[--><!--]--><div class="VPHero has-image VPHomeHero" data-v-cbb6ec48 data-v-955009fc><div class="container" data-v-955009fc><div class="main" data-v-955009fc><!--[--><!--]--><!--[--><h1 class="name" data-v-955009fc><span class="clip" data-v-955009fc>DimensionalData.jl</span></h1><p class="text" data-v-955009fc>Julia datasets with named dimensions</p><p class="tagline" data-v-955009fc>High performance named indexing for Julia</p><!--]--><!--[--><!--]--><div class="actions" data-v-955009fc><!--[--><div class="action" data-v-955009fc><a class="VPButton medium brand" href="/DimensionalData.jl/dev/basics" data-v-955009fc data-v-14206e74>Getting Started</a></div><div class="action" data-v-955009fc><a class="VPButton medium alt" href="/DimensionalData.jl/dev/api/reference" data-v-955009fc data-v-14206e74>API reference</a></div><div class="action" data-v-955009fc><a class="VPButton medium alt" href="https://github.com/rafaqz/DimensionalData.jl" target="_blank" rel="noreferrer" data-v-955009fc data-v-14206e74>View on Github</a></div><!--]--></div><!--[--><!--]--></div><div class="image" data-v-955009fc><div class="image-container" data-v-955009fc><div class="image-bg" data-v-955009fc></div><!--[--><!--[--><img class="VPImage image-src" src="/DimensionalData.jl/dev/logo.png" alt data-v-35a7d0b8><!--]--><!--]--></div></div></div></div><!--[--><!--]--><!--[--><!--]--><div class="VPFeatures VPHomeFeatures" data-v-cbb6ec48 data-v-d0a190d7><div class="container" data-v-d0a190d7><div class="items" data-v-d0a190d7><!--[--><div class="grid-3 item" data-v-d0a190d7><a class="VPLink link no-icon VPFeature" href="/DimensionalData.jl/dev/selectors" data-v-d0a190d7 data-v-f5e9645b><!--[--><article class="box" data-v-f5e9645b><!----><h2 class="title" data-v-f5e9645b>Intelligent indexing</h2><p class="details" data-v-f5e9645b>DimensionalData.jl provides no-cost abstractions for named indexing, and fast index lookups.</p><!----></article><!--]--></a></div><div class="grid-3 item" data-v-d0a190d7><a class="VPLink link no-icon VPFeature" href="/DimensionalData.jl/dev/groupby" data-v-d0a190d7 data-v-f5e9645b><!--[--><article class="box" data-v-f5e9645b><!----><h2 class="title" data-v-f5e9645b>Powerful Array manipulation</h2><p class="details" data-v-f5e9645b>broadcast, reduce, permutedims, and groupby operations.</p><!----></article><!--]--></a></div><div class="grid-3 item" data-v-d0a190d7><div class="VPLink no-icon VPFeature" data-v-d0a190d7 data-v-f5e9645b><!--[--><article class="box" data-v-f5e9645b><!----><h2 class="title" data-v-f5e9645b>Seamlessly integrated with the julia ecosystem</h2><p class="details" data-v-f5e9645b>Works with most methods that accept a regular Array. If a method accepts numeric indices or dims=X in base, you should be able to use DimensionalData.jl dims.</p><!----></article><!--]--></div></div><!--]--></div></div></div><!--[--><!--]--><div class="vp-doc container" style="" data-v-cbb6ec48 data-v-7a48a447><!--[--><div style="position:relative;" data-v-cbb6ec48><div></div></div><!--]--></div></div></div><footer class="VPFooter" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><!----><!----><div class="VPContent is-home" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPHome" data-v-91765379 data-v-cbb6ec48><!--[--><!--]--><div class="VPHero has-image VPHomeHero" data-v-cbb6ec48 data-v-955009fc><div class="container" data-v-955009fc><div class="main" data-v-955009fc><!--[--><!--]--><!--[--><h1 class="name" data-v-955009fc><span class="clip" data-v-955009fc>DimensionalData.jl</span></h1><p class="text" data-v-955009fc>Julia datasets with named dimensions</p><p class="tagline" data-v-955009fc>High performance named indexing for Julia</p><!--]--><!--[--><!--]--><div class="actions" data-v-955009fc><!--[--><div class="action" data-v-955009fc><a class="VPButton medium brand" href="/DimensionalData.jl/dev/basics" data-v-955009fc data-v-906d7fb4>Getting Started</a></div><div class="action" data-v-955009fc><a class="VPButton medium alt" href="/DimensionalData.jl/dev/api/reference" data-v-955009fc data-v-906d7fb4>API reference</a></div><div class="action" data-v-955009fc><a class="VPButton medium alt" href="https://github.com/rafaqz/DimensionalData.jl" target="_blank" rel="noreferrer" data-v-955009fc data-v-906d7fb4>View on Github</a></div><!--]--></div><!--[--><!--]--></div><div class="image" data-v-955009fc><div class="image-container" data-v-955009fc><div class="image-bg" data-v-955009fc></div><!--[--><!--[--><img class="VPImage image-src" src="/DimensionalData.jl/dev/logo.png" alt data-v-35a7d0b8><!--]--><!--]--></div></div></div></div><!--[--><!--]--><!--[--><!--]--><div class="VPFeatures VPHomeFeatures" data-v-cbb6ec48 data-v-d0a190d7><div class="container" data-v-d0a190d7><div class="items" data-v-d0a190d7><!--[--><div class="grid-3 item" data-v-d0a190d7><a class="VPLink link no-icon VPFeature" href="/DimensionalData.jl/dev/selectors" data-v-d0a190d7 data-v-f5e9645b><!--[--><article class="box" data-v-f5e9645b><!----><h2 class="title" data-v-f5e9645b>Intelligent indexing</h2><p class="details" data-v-f5e9645b>DimensionalData.jl provides no-cost abstractions for named indexing, and fast index lookups.</p><!----></article><!--]--></a></div><div class="grid-3 item" data-v-d0a190d7><a class="VPLink link no-icon VPFeature" href="/DimensionalData.jl/dev/groupby" data-v-d0a190d7 data-v-f5e9645b><!--[--><article class="box" data-v-f5e9645b><!----><h2 class="title" data-v-f5e9645b>Powerful Array manipulation</h2><p class="details" data-v-f5e9645b>broadcast, reduce, permutedims, and groupby operations.</p><!----></article><!--]--></a></div><div class="grid-3 item" data-v-d0a190d7><div class="VPLink no-icon VPFeature" data-v-d0a190d7 data-v-f5e9645b><!--[--><article class="box" data-v-f5e9645b><!----><h2 class="title" data-v-f5e9645b>Seamlessly integrated with the julia ecosystem</h2><p class="details" data-v-f5e9645b>Works with most methods that accept a regular Array. If a method accepts numeric indices or dims=X in base, you should be able to use DimensionalData.jl dims.</p><!----></article><!--]--></div></div><!--]--></div></div></div><!--[--><!--]--><div class="vp-doc container" style="" data-v-cbb6ec48 data-v-7a48a447><!--[--><div style="position:relative;" data-v-cbb6ec48><div></div></div><!--]--></div></div></div><footer class="VPFooter" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/integrations.html b/dev/integrations.html index cb360d96d..929599c64 100644 --- a/dev/integrations.html +++ b/dev/integrations.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Integrations | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/integrations.md.B4DeywJ6.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/integrations.md.dJo1qUjg.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,8 +20,8 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_integrations" data-v-83890dd9><div><h1 id="integrations" tabindex="-1">Integrations <a class="header-anchor" href="#integrations" aria-label="Permalink to "Integrations""></a></h1><h2 id="rasters-jl" tabindex="-1">Rasters.jl <a class="header-anchor" href="#rasters-jl" aria-label="Permalink to "Rasters.jl""></a></h2><p><a href="https://rafaqz.github.io/Rasters.jl/stable" target="_blank" rel="noreferrer">Rasters.jl</a> extends DD for geospatial data manipulation, providing file load/save for a wide range of raster data sources and common GIS tools like polygon rasterization and masking. <code>Raster</code> types are aware of <code>crs</code> and their <code>missingval</code> (which is often not <code>missing</code> for performance and storage reasons).</p><p>Rasters.jl is also the reason DimensionalData.jl exists at all! But it always made sense to separate out spatial indexing from GIS tools and dependencies.</p><p>A <code>Raster</code> is a <code>AbstractDimArray</code>, a <code>RasterStack</code> is a <code>AbstractDimStack</code>, and <code>Projected</code> and <code>Mapped</code> are <code>AbstractSample</code> lookups.</p><h2 id="yaxarrays-jl" tabindex="-1">YAXArrays.jl <a class="header-anchor" href="#yaxarrays-jl" aria-label="Permalink to "YAXArrays.jl""></a></h2><p><a href="https://juliadatacubes.github.io/YAXArrays.jl/dev/" target="_blank" rel="noreferrer">YAXArrays.jl</a> is another spatial data package aimed more at (very) large datasets. It's functionality is slowly converging with Rasters.jl (both wrapping DiskArray.jl/DimensionalData.jl) and we work closely with the developers.</p><p><code>YAXArray</code> is a <code>AbstractDimArray</code> and inherits its behaviours.</p><h2 id="climatebase-jl" tabindex="-1">ClimateBase.jl <a class="header-anchor" href="#climatebase-jl" aria-label="Permalink to "ClimateBase.jl""></a></h2><p><a href="https://juliaclimate.github.io/ClimateBase.jl/dev/" target="_blank" rel="noreferrer">ClimateBase.jl</a> Extends DD with methods for analysis of climate data.</p><h2 id="arviz-jl" tabindex="-1">ArviZ.jl <a class="header-anchor" href="#arviz-jl" aria-label="Permalink to "ArviZ.jl""></a></h2><p><a href="https://arviz-devs.github.io/ArviZ.jl/dev/" target="_blank" rel="noreferrer">ArviZ.jl</a> Is a Julia package for exploratory analysis of Bayesian models.</p><p>An <code>ArviZ.Dataset</code> is an <code>AbstractDimStack</code>!</p><h2 id="jump-jl" tabindex="-1">JuMP.jl <a class="header-anchor" href="#jump-jl" aria-label="Permalink to "JuMP.jl""></a></h2><p><a href="https://jump.dev/" target="_blank" rel="noreferrer">JuMP.jl</a> is a powerful optimization DSL. It defines its own named array types but now accepts any <code>AbstractDimArray</code> too, through a package extension.</p><h2 id="cryogrid-jl" tabindex="-1">CryoGrid.jl <a class="header-anchor" href="#cryogrid-jl" aria-label="Permalink to "CryoGrid.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/CryoGrid" target="_blank" rel="noreferrer">CryoGrid.jl</a> A Julia implementation of the CryoGrid permafrost model.</p><p><code>CryoGridOutput</code> uses <code>DimArray</code> for views into output data.</p><h2 id="dynamicgrids-jl" tabindex="-1">DynamicGrids.jl <a class="header-anchor" href="#dynamicgrids-jl" aria-label="Permalink to "DynamicGrids.jl""></a></h2><p><a href="https://github.com/cesaraustralia/DynamicGrids.jl" target="_blank" rel="noreferrer">DynamicGrids.jl</a> is a spatial simulation engine, for cellular automata and spatial process models.</p><p>All DynamicGrids.jl <code>Outputs</code> are <code><: AbstractDimArray</code>, and <code>AbstractDimArray</code> are used for auxiliary data to allow temporal synchronisation during simulations. Notably, this all works on GPUs!</p><h2 id="astroimages-jl" tabindex="-1">AstroImages.jl <a class="header-anchor" href="#astroimages-jl" aria-label="Permalink to "AstroImages.jl""></a></h2><p><a href="http://juliaastro.org/dev/modules/AstroImages" target="_blank" rel="noreferrer">AstroImages.jl</a> Provides tools to load and visualise astronomical images. <code>AstroImage</code> is <code><: AbstractDimArray</code>.</p><h2 id="timeseriestools-jl" tabindex="-1">TimeseriesTools.jl <a class="header-anchor" href="#timeseriestools-jl" aria-label="Permalink to "TimeseriesTools.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/TimeseriesTools" target="_blank" rel="noreferrer">TimeseriesTools.jl</a> Uses <code>DimArray</code> for time-series data.</p></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/integrations.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/object_modification" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Object modification</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/plots" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Plots and Makie</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_integrations" data-v-83890dd9><div><h1 id="integrations" tabindex="-1">Integrations <a class="header-anchor" href="#integrations" aria-label="Permalink to "Integrations""></a></h1><h2 id="rasters-jl" tabindex="-1">Rasters.jl <a class="header-anchor" href="#rasters-jl" aria-label="Permalink to "Rasters.jl""></a></h2><p><a href="https://rafaqz.github.io/Rasters.jl/stable" target="_blank" rel="noreferrer">Rasters.jl</a> extends DD for geospatial data manipulation, providing file load/save for a wide range of raster data sources and common GIS tools like polygon rasterization and masking. <code>Raster</code> types are aware of <code>crs</code> and their <code>missingval</code> (which is often not <code>missing</code> for performance and storage reasons).</p><p>Rasters.jl is also the reason DimensionalData.jl exists at all! But it always made sense to separate out spatial indexing from GIS tools and dependencies.</p><p>A <code>Raster</code> is a <code>AbstractDimArray</code>, a <code>RasterStack</code> is a <code>AbstractDimStack</code>, and <code>Projected</code> and <code>Mapped</code> are <code>AbstractSample</code> lookups.</p><h2 id="yaxarrays-jl" tabindex="-1">YAXArrays.jl <a class="header-anchor" href="#yaxarrays-jl" aria-label="Permalink to "YAXArrays.jl""></a></h2><p><a href="https://juliadatacubes.github.io/YAXArrays.jl/dev/" target="_blank" rel="noreferrer">YAXArrays.jl</a> is another spatial data package aimed more at (very) large datasets. It's functionality is slowly converging with Rasters.jl (both wrapping DiskArray.jl/DimensionalData.jl) and we work closely with the developers.</p><p><code>YAXArray</code> is a <code>AbstractDimArray</code> and inherits its behaviours.</p><h2 id="climatebase-jl" tabindex="-1">ClimateBase.jl <a class="header-anchor" href="#climatebase-jl" aria-label="Permalink to "ClimateBase.jl""></a></h2><p><a href="https://juliaclimate.github.io/ClimateBase.jl/dev/" target="_blank" rel="noreferrer">ClimateBase.jl</a> Extends DD with methods for analysis of climate data.</p><h2 id="arviz-jl" tabindex="-1">ArviZ.jl <a class="header-anchor" href="#arviz-jl" aria-label="Permalink to "ArviZ.jl""></a></h2><p><a href="https://arviz-devs.github.io/ArviZ.jl/dev/" target="_blank" rel="noreferrer">ArviZ.jl</a> Is a Julia package for exploratory analysis of Bayesian models.</p><p>An <code>ArviZ.Dataset</code> is an <code>AbstractDimStack</code>!</p><h2 id="jump-jl" tabindex="-1">JuMP.jl <a class="header-anchor" href="#jump-jl" aria-label="Permalink to "JuMP.jl""></a></h2><p><a href="https://jump.dev/" target="_blank" rel="noreferrer">JuMP.jl</a> is a powerful optimization DSL. It defines its own named array types but now accepts any <code>AbstractDimArray</code> too, through a package extension.</p><h2 id="cryogrid-jl" tabindex="-1">CryoGrid.jl <a class="header-anchor" href="#cryogrid-jl" aria-label="Permalink to "CryoGrid.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/CryoGrid" target="_blank" rel="noreferrer">CryoGrid.jl</a> A Julia implementation of the CryoGrid permafrost model.</p><p><code>CryoGridOutput</code> uses <code>DimArray</code> for views into output data.</p><h2 id="dynamicgrids-jl" tabindex="-1">DynamicGrids.jl <a class="header-anchor" href="#dynamicgrids-jl" aria-label="Permalink to "DynamicGrids.jl""></a></h2><p><a href="https://github.com/cesaraustralia/DynamicGrids.jl" target="_blank" rel="noreferrer">DynamicGrids.jl</a> is a spatial simulation engine, for cellular automata and spatial process models.</p><p>All DynamicGrids.jl <code>Outputs</code> are <code><: AbstractDimArray</code>, and <code>AbstractDimArray</code> are used for auxiliary data to allow temporal synchronisation during simulations. Notably, this all works on GPUs!</p><h2 id="astroimages-jl" tabindex="-1">AstroImages.jl <a class="header-anchor" href="#astroimages-jl" aria-label="Permalink to "AstroImages.jl""></a></h2><p><a href="http://juliaastro.org/dev/modules/AstroImages" target="_blank" rel="noreferrer">AstroImages.jl</a> Provides tools to load and visualise astronomical images. <code>AstroImage</code> is <code><: AbstractDimArray</code>.</p><h2 id="timeseriestools-jl" tabindex="-1">TimeseriesTools.jl <a class="header-anchor" href="#timeseriestools-jl" aria-label="Permalink to "TimeseriesTools.jl""></a></h2><p><a href="https://juliahub.com/ui/Packages/General/TimeseriesTools" target="_blank" rel="noreferrer">TimeseriesTools.jl</a> Uses <code>DimArray</code> for time-series data.</p></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/integrations.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/object_modification" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Object modification</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/plots" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Plots and Makie</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/object_modification.html b/dev/object_modification.html index 2e61c23f9..0e49023c8 100644 --- a/dev/object_modification.html +++ b/dev/object_modification.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Modifying objects | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/object_modification.md.BpAIEIxF.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/object_modification.md.-cjSpi5I.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_object_modification" data-v-83890dd9><div><h1 id="Modifying-objects" tabindex="-1">Modifying objects <a class="header-anchor" href="#Modifying-objects" aria-label="Permalink to "Modifying objects {#Modifying-objects}""></a></h1><p>DimensionalData.jl objects are all <code>struct</code> rather than <code>mutable struct</code>. The only things you can modify in-place are the values of the contained arrays or metadata <code>Dict</code>s if they exist.</p><p>Everything else must be <em>rebuilt</em> and assigned to a variable.</p><h2 id="modify" tabindex="-1"><code>modify</code> <a class="header-anchor" href="#modify" aria-label="Permalink to "`modify` {#modify}""></a></h2><p>Modify the inner arrays of a <code>AbstractDimArray</code> or <code>AbstractDimStack</code>, with <a href="/DimensionalData.jl/dev/object_modification#modify"><code>modify</code></a>. This can be useful to e.g. replace all arrays with <code>CuArray</code> moving the data to the GPU, <code>collect</code> all inner arrays to <code>Array</code> without losing the outer <code>DimArray</code> wrappers, and similar things.</p><div class="plugin-tabs"><div class="plugin-tabs--tab-list" role="tablist"><!--[--><button id="tab-array-3" role="tab" class="plugin-tabs--tab" aria-selected="true" aria-controls="panel-array-3" tabindex="0">array</button><button id="tab-stack-3" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-stack-3" tabindex="-1">stack</button><!--]--></div><!--[--><div id="panel-array-3" class="plugin-tabs--content" role="tabpanel" tabindex="0" aria-labelledby="tab-array-3" data-v-9b0d03d2><!--[--><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_object_modification" data-v-83890dd9><div><h1 id="Modifying-objects" tabindex="-1">Modifying objects <a class="header-anchor" href="#Modifying-objects" aria-label="Permalink to "Modifying objects {#Modifying-objects}""></a></h1><p>DimensionalData.jl objects are all <code>struct</code> rather than <code>mutable struct</code>. The only things you can modify in-place are the values of the contained arrays or metadata <code>Dict</code>s if they exist.</p><p>Everything else must be <em>rebuilt</em> and assigned to a variable.</p><h2 id="modify" tabindex="-1"><code>modify</code> <a class="header-anchor" href="#modify" aria-label="Permalink to "`modify` {#modify}""></a></h2><p>Modify the inner arrays of a <code>AbstractDimArray</code> or <code>AbstractDimStack</code>, with <a href="/DimensionalData.jl/dev/object_modification#modify"><code>modify</code></a>. This can be useful to e.g. replace all arrays with <code>CuArray</code> moving the data to the GPU, <code>collect</code> all inner arrays to <code>Array</code> without losing the outer <code>DimArray</code> wrappers, and similar things.</p><div class="plugin-tabs"><div class="plugin-tabs--tab-list" role="tablist"><!--[--><button id="tab-array-3" role="tab" class="plugin-tabs--tab" aria-selected="true" aria-controls="panel-array-3" tabindex="0">array</button><button id="tab-stack-3" role="tab" class="plugin-tabs--tab" aria-selected="false" aria-controls="panel-stack-3" tabindex="-1">stack</button><!--]--></div><!--[--><div id="panel-array-3" class="plugin-tabs--content" role="tabpanel" tabindex="0" aria-labelledby="tab-array-3" data-v-9b0d03d2><!--[--><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> falses</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭──────────────────────╮</span></span> <span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">│ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">3</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">×</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">5</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> DimArray{Bool,2}</span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;"> │</span></span> @@ -74,7 +74,7 @@ <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.450109 0.0702987 0.28035 0.183103 0.770553 0.352592</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 2.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.668984 0.803446 0.406397 0.138819 0.21316 0.907202</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 3.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.338844 0.461631 0.207882 0.804846 0.69461 0.340557</span></span></code></pre></div><!--]--></div><!----><!----><!----><!----><!----><!--]--></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/object_modification.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/get_info" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Getting information</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/integrations" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Integrations</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/plots.html b/dev/plots.html index 000f6e9bd..8f9740b59 100644 --- a/dev/plots.html +++ b/dev/plots.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Plots.jl | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/plots.md.2aFJv8Qw.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/plots.md.kpY9w3i0.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,12 +20,12 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_plots" data-v-83890dd9><div><h1 id="plots-jl" tabindex="-1">Plots.jl <a class="header-anchor" href="#plots-jl" aria-label="Permalink to "Plots.jl""></a></h1><p>Plots.jl and Makie.jl functions mostly work out of the box on <code>AbstractDimArray</code>, although not with the same results - they choose to follow each packages default behaviour as much as possible.</p><p>This will plot a line plot with 'a', 'b' and 'c' in the legend, and values 1-10 on the labelled X axis:</p><p>Plots.jl support is deprecated, as development is moving to Makie.jl</p><h1 id="makie-jl" tabindex="-1">Makie.jl <a class="header-anchor" href="#makie-jl" aria-label="Permalink to "Makie.jl""></a></h1><p>Makie.jl functions also mostly work with <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> and will <code>permute</code> and <a href="/DimensionalData.jl/dev/object_modification#reorder"><code>reorder</code></a> axes into the right places, especially if <code>X</code>/<code>Y</code>/<code>Z</code>/<code>Ti</code> dimensions are used.</p><p>In Makie a <code>DimMatrix</code> will plot as a heatmap by default, but it will have labels and axes in the right places:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CairoMakie</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_plots" data-v-83890dd9><div><h1 id="plots-jl" tabindex="-1">Plots.jl <a class="header-anchor" href="#plots-jl" aria-label="Permalink to "Plots.jl""></a></h1><p>Plots.jl and Makie.jl functions mostly work out of the box on <code>AbstractDimArray</code>, although not with the same results - they choose to follow each packages default behaviour as much as possible.</p><p>This will plot a line plot with 'a', 'b' and 'c' in the legend, and values 1-10 on the labelled X axis:</p><p>Plots.jl support is deprecated, as development is moving to Makie.jl</p><h1 id="makie-jl" tabindex="-1">Makie.jl <a class="header-anchor" href="#makie-jl" aria-label="Permalink to "Makie.jl""></a></h1><p>Makie.jl functions also mostly work with <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.AbstractDimArray"><code>AbstractDimArray</code></a> and will <code>permute</code> and <a href="/DimensionalData.jl/dev/object_modification#reorder"><code>reorder</code></a> axes into the right places, especially if <code>X</code>/<code>Y</code>/<code>Z</code>/<code>Ti</code> dimensions are used.</p><p>In Makie a <code>DimMatrix</code> will plot as a heatmap by default, but it will have labels and axes in the right places:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData, CairoMakie</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">plot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; colormap</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:inferno</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><img src="/DimensionalData.jl/dev/assets/jmmhsxu.iiL4UBgm.png" alt=""></p><p>Other plots also work, here DD ignores the axis order and instead favours the categorical variable for the X axis:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rainclouds</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A)</span></span></code></pre></div><p><img src="/DimensionalData.jl/dev/assets/ybmzrjc.BIa4VhRY.png" alt=""></p><h2 id="Test-series-plots" tabindex="-1">Test series plots <a class="header-anchor" href="#Test-series-plots" aria-label="Permalink to "Test series plots {#Test-series-plots}""></a></h2><h3 id="default-colormap" tabindex="-1">default colormap <a class="header-anchor" href="#default-colormap" aria-label="Permalink to "default colormap {#default-colormap}""></a></h3><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">B </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:d</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:e</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:f</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:g</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:h</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:i</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:j</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">series</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(B)</span></span></code></pre></div><p><img src="/DimensionalData.jl/dev/assets/veptoqy.CZKDtjAN.png" alt=""></p><h3 id="A-different-colormap" tabindex="-1">A different colormap <a class="header-anchor" href="#A-different-colormap" aria-label="Permalink to "A different colormap {#A-different-colormap}""></a></h3><p>The colormap is controlled by the <code>color</code> argument, which can take as an input a named colormap, i.e. <code>:plasma</code> or a list of colours.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">series</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(B; color</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:plasma</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><img src="/DimensionalData.jl/dev/assets/izkfogt.nOjqWh1g.png" alt=""></p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">series</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; color</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:red</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:blue</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:orange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">])</span></span></code></pre></div><p><img src="/DimensionalData.jl/dev/assets/yhxwiti.CBNkYhiq.png" alt=""></p><h3 id="with-markers" tabindex="-1">with markers <a class="header-anchor" href="#with-markers" aria-label="Permalink to "with markers {#with-markers}""></a></h3><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">Makie</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">series</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(A; color</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:red</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:blue</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:orange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">], markersize</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">15</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><p><img src="/DimensionalData.jl/dev/assets/rcywifo.NnnTWDGw.png" alt=""></p><p>A lot more is planned for Makie.jl plots in future!</p></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/plots.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/integrations" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Integrations</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/tables" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>Tables and DataFrames</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/selectors.html b/dev/selectors.html index b30716ab0..75b26057f 100644 --- a/dev/selectors.html +++ b/dev/selectors.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Selectors | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/selectors.md.BxHSadsn.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/selectors.md.Cu8DY1IK.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_selectors" data-v-83890dd9><div><h1 id="selectors" tabindex="-1">Selectors <a class="header-anchor" href="#selectors" aria-label="Permalink to "Selectors""></a></h1><p>As well as choosing dimensions by name, we can also select values in them.</p><p>First, we can create <code>DimArray</code> with lookup values as well as dimension names:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_selectors" data-v-83890dd9><div><h1 id="selectors" tabindex="-1">Selectors <a class="header-anchor" href="#selectors" aria-label="Permalink to "Selectors""></a></h1><p>As well as choosing dimensions by name, we can also select values in them.</p><p>First, we can create <code>DimArray</code> with lookup values as well as dimension names:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> A </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0.2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:a</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:b</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">:c</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭─────────────────────────╮</span></span> <span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">│ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">6</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">×</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">3</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> DimArray{Float64,2}</span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;"> │</span></span> <span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">├─────────────────────────┴────────────────────────────────────────────── dims ┐</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> ↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> Sampled{Float64} </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">1.0:0.2:2.0</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> ForwardOrdered</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Regular</span><span style="--shiki-light:#808080;--shiki-dark:#808080;"> Points</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> @@ -139,7 +139,7 @@ <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1.602</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.0426808 0.61781 0.808889 0.140817 0.188976 0.054083</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1.798</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.226699 0.0983553 0.661444 0.750622 0.650842 0.986606</span></span> <span class="line"><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1.994</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 0.84475 0.366873 0.734751 0.590953 0.621527 0.23502</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/selectors.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/dimensions" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Dimensions</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/dimarrays" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>DimArrays</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/stacks.html b/dev/stacks.html index d95b27a65..c38488a0e 100644 --- a/dev/stacks.html +++ b/dev/stacks.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>DimStacks | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/stacks.md.Dr5B-1Fh.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/stacks.md.SmvHWrk4.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_stacks" data-v-83890dd9><div><h1 id="dimstacks" tabindex="-1">DimStacks <a class="header-anchor" href="#dimstacks" aria-label="Permalink to "DimStacks""></a></h1><p>An <code>AbstractDimStack</code> represents a collection of <code>AbstractDimArray</code> layers that share some or all dimensions. For any two layers, a dimension of the same name must have the identical lookup - in fact only one is stored for all layers to enforce this consistency.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_stacks" data-v-83890dd9><div><h1 id="dimstacks" tabindex="-1">DimStacks <a class="header-anchor" href="#dimstacks" aria-label="Permalink to "DimStacks""></a></h1><p>An <code>AbstractDimStack</code> represents a collection of <code>AbstractDimArray</code> layers that share some or all dimensions. For any two layers, a dimension of the same name must have the identical lookup - in fact only one is stored for all layers to enforce this consistency.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"></span> <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">5.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1.0:1.0:10.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 5.0:1.0:10.0</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> st </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> DimStack</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">((a</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y), b</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x, y), c</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(y), d</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">rand</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(x)))</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">╭───────────────╮</span></span> @@ -87,10 +87,10 @@ <span class="line"><span style="--shiki-light:#00afaf;--shiki-dark:#00afaf;"> :b</span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;"> eltype: </span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">Float64</span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;"> dims: </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">, </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y</span><span style="--shiki-light:#959da5;--shiki-dark:#959da5;"> size: </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">10</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">×</span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">6</span></span> <span class="line"><span style="--shiki-light:#959da5;--shiki-dark:#959da5;">└──────────────────────────────────────────────────────────────────────────────┘</span></span></code></pre></div><!--]--></div><!----><!----><!----><!----><!----><!----><!--]--></div><h2 id="performance" tabindex="-1">Performance <a class="header-anchor" href="#performance" aria-label="Permalink to "Performance""></a></h2><p>Indexing stack is fast - indexing a single value return a <code>NamedTuple</code> from all layers is usually measures in nanoseconds, and no slower than manually indexing into each parent array directly.</p><p>There are some compilation overheads to this though, and stacks with very many layers can take a long time to compile.</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> BenchmarkTools</span></span> <span class="line"></span> -<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[X</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.027 ns (0 allocations: 0 bytes)</span></span> -<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.027 ns (0 allocations: 0 bytes)</span></span> +<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[X</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Y</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.028 ns (0 allocations: 0 bytes)</span></span> +<span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> @btime</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> $</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">st[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">4</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;"> 4.028 ns (0 allocations: 0 bytes)</span></span> <span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(a = 0.2571287355813575, b = 0.925267535912165, c = 0.12713970284423626, d = 0.3258728635315493)</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/stacks.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/dimarrays" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>DimArrays</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/groupby" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>GroupBy</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file diff --git a/dev/tables.html b/dev/tables.html index f734e3041..dbc8cbeab 100644 --- a/dev/tables.html +++ b/dev/tables.html @@ -5,14 +5,14 @@ <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Tables and DataFrames | DimensionalData.jl</title> <meta name="description" content="Datasets with named dimensions"> - <meta name="generator" content="VitePress v1.3.4"> - <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CMKUYRAZ.css" as="style"> + <meta name="generator" content="VitePress v1.4.0"> + <link rel="preload stylesheet" href="/DimensionalData.jl/dev/assets/style.CaBzy52z.css" as="style"> - <script type="module" src="/DimensionalData.jl/dev/assets/app.DAtVKXYd.js"></script> + <script type="module" src="/DimensionalData.jl/dev/assets/app.DC0kJGHo.js"></script> <link rel="preload" href="/DimensionalData.jl/dev/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.nAO4pd4Y.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.C6EFuEL4.js"> - <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/tables.md.BW-IP7L1.lean.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/theme.b8NutB4I.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/chunks/framework.B8l2DGq3.js"> + <link rel="modulepreload" href="/DimensionalData.jl/dev/assets/tables.md.t8vBJGld.lean.js"> <link rel="icon" href="/DimensionalData.jl/dev/favicon.ico"> <script src="/DimensionalData.jl/versions.js"></script> <script src="/DimensionalData.jl/dev/siteinfo.js"></script> @@ -20,7 +20,7 @@ <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script> </head> <body> - <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-e5380155><span class="text" data-v-e5380155><!----><span data-v-e5380155>Integrations</span><span class="vpi-chevron-down text-icon" data-v-e5380155></span></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-e5380155><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-e5380155><span class="vpi-more-horizontal icon" data-v-e5380155></span></button><div class="menu" data-v-e5380155><div class="VPMenu" data-v-e5380155 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_tables" data-v-83890dd9><div><h1 id="Tables-and-DataFrames" tabindex="-1">Tables and DataFrames <a class="header-anchor" href="#Tables-and-DataFrames" aria-label="Permalink to "Tables and DataFrames {#Tables-and-DataFrames}""></a></h1><p><a href="https://github.com/JuliaData/Tables.jl" target="_blank" rel="noreferrer">Tables.jl</a> provides an ecosystem-wide interface to tabular data in Julia, giving interoperability with <a href="https://dataframes.juliadata.org/stable/" target="_blank" rel="noreferrer">DataFrames.jl</a>, <a href="https://csv.juliadata.org/stable/" target="_blank" rel="noreferrer">CSV.jl</a> and hundreds of other packages that implement the standard.</p><p>DimensionalData.jl implements the Tables.jl interface for <code>AbstractDimArray</code> and <code>AbstractDimStack</code>. <code>DimStack</code> layers are unrolled so they are all the same size, and dimensions loop to match the length of the largest layer.</p><p>Columns are given the <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> or the array or the stack layer key. <code>Dimension</code> columns use the <code>Symbol</code> version (the result of <code>DD.name(dimension)</code>).</p><p>Looping of dimensions and stack layers is done <em>lazily</em>, and does not allocate unless collected.</p><h2 id="example" tabindex="-1">Example <a class="header-anchor" href="#example" aria-label="Permalink to "Example""></a></h2><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> + <div id="app"><div class="Layout" data-v-a9a9e638><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c3508ec8></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-c3508ec8> Skip to content </a><!--]--><!----><header class="VPNav" data-v-a9a9e638 data-v-f1e365da><div class="VPNavBar" data-v-f1e365da data-v-822684d1><div class="wrapper" data-v-822684d1><div class="container" data-v-822684d1><div class="title" data-v-822684d1><div class="VPNavBarTitle has-sidebar" data-v-822684d1 data-v-28a961f9><a class="title" href="/DimensionalData.jl/dev/" data-v-28a961f9><!--[--><!--]--><!--[--><img class="VPImage logo" src="/DimensionalData.jl/dev/logo.png" width="24" height="24" alt data-v-35a7d0b8><!--]--><span data-v-28a961f9>DimensionalData.jl</span><!--[--><!--]--></a></div></div><div class="content" data-v-822684d1><div class="content-body" data-v-822684d1><!--[--><!--]--><div class="VPNavBarSearch search" data-v-822684d1><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-822684d1 data-v-e6d46098><span id="main-nav-aria-label" class="visually-hidden" data-v-e6d46098> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/basics" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Getting Started</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimensions" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Dimensions</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/dimarrays" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>DimArrays</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/DimensionalData.jl/dev/selectors" tabindex="0" data-v-e6d46098 data-v-ed5ac1f6><!--[--><span data-v-ed5ac1f6>Selectors</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-e6d46098 data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-04f5c5e9><span class="text" data-v-04f5c5e9><!----><span data-v-04f5c5e9>Integrations</span><span class="vpi-chevron-down text-icon" data-v-04f5c5e9></span></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><div class="items" data-v-7dd3104a><!--[--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/integrations" data-v-8b74d055><!--[-->Integrations<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/plots" data-v-8b74d055><!--[-->Plots and Makie<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link active" href="/DimensionalData.jl/dev/tables" data-v-8b74d055><!--[-->Tables and DataFrames<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/cuda" data-v-8b74d055><!--[-->CUDA and GPUs<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/diskarrays" data-v-8b74d055><!--[-->DiskArrays<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-7dd3104a data-v-8b74d055><a class="VPLink link" href="/DimensionalData.jl/dev/extending_dd" data-v-8b74d055><!--[-->Extending DimensionalData<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><!----><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-822684d1 data-v-af096f4a><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-af096f4a data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-822684d1 data-v-164c457f data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-822684d1 data-v-925effce data-v-04f5c5e9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-04f5c5e9><span class="vpi-more-horizontal icon" data-v-04f5c5e9></span></button><div class="menu" data-v-04f5c5e9><div class="VPMenu" data-v-04f5c5e9 data-v-7dd3104a><!----><!--[--><!--[--><!----><div class="group" data-v-925effce><div class="item appearance" data-v-925effce><p class="label" data-v-925effce>Appearance</p><div class="appearance-action" data-v-925effce><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-925effce data-v-e40a8bb6 data-v-4a1c76db><span class="check" data-v-4a1c76db><span class="icon" data-v-4a1c76db><!--[--><span class="vpi-sun sun" data-v-e40a8bb6></span><span class="vpi-moon moon" data-v-e40a8bb6></span><!--]--></span></span></button></div></div></div><div class="group" data-v-925effce><div class="item social-links" data-v-925effce><div class="VPSocialLinks social-links-list" data-v-925effce data-v-ee7a9424><!--[--><a class="VPSocialLink no-icon" href="https://github.com/rafaqz/DimensionalData.jl" aria-label="github" target="_blank" rel="noopener" data-v-ee7a9424 data-v-717b8b75><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-822684d1 data-v-5dea55bf><span class="container" data-v-5dea55bf><span class="top" data-v-5dea55bf></span><span class="middle" data-v-5dea55bf></span><span class="bottom" data-v-5dea55bf></span></span></button></div></div></div></div><div class="divider" data-v-822684d1><div class="divider-line" data-v-822684d1></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a9a9e638 data-v-070ab83d><div class="container" data-v-070ab83d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-070ab83d><span class="vpi-align-left menu-icon" data-v-070ab83d></span><span class="menu-text" data-v-070ab83d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-070ab83d data-v-bc9dc845><button data-v-bc9dc845>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a9a9e638 data-v-18756405><div class="curtain" data-v-18756405></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-18756405><span class="visually-hidden" id="sidebar-aria-label" data-v-18756405> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/basics" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Getting Started</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/selectors" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Selectors</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/dimarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/stacks" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DimStacks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/groupby" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>GroupBy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/broadcasts" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimension-aware broadcast</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/get_info" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Getting information</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/object_modification" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Object modification</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link has-active" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/integrations" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>Integrations</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/plots" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Plots and Makie</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/tables" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Tables and DataFrames</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/cuda" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>CUDA and GPUs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/diskarrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>DiskArrays</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/extending_dd" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Extending DimensionalData</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-9e426adc><section class="VPSidebarItem level-0 is-link" data-v-9e426adc data-v-196b2e5f><div class="item" tabindex="0" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/reference" data-v-196b2e5f><!--[--><h2 class="text" data-v-196b2e5f>API Reference</h2><!--]--></a><!----></div><div class="items" data-v-196b2e5f><!--[--><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/dimensions" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>Dimensions Reference</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-196b2e5f data-v-196b2e5f><div class="item" data-v-196b2e5f><div class="indicator" data-v-196b2e5f></div><a class="VPLink link link" href="/DimensionalData.jl/dev/api/lookuparrays" data-v-196b2e5f><!--[--><p class="text" data-v-196b2e5f>LookupArrays Reference</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a9a9e638 data-v-91765379><div class="VPDoc has-sidebar has-aside" data-v-91765379 data-v-83890dd9><!--[--><!--]--><div class="container" data-v-83890dd9><div class="aside" data-v-83890dd9><div class="aside-curtain" data-v-83890dd9></div><div class="aside-container" data-v-83890dd9><div class="aside-content" data-v-83890dd9><div class="VPDocAside" data-v-83890dd9 data-v-6d7b3c46><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-6d7b3c46 data-v-b38bf2ff><div class="content" data-v-b38bf2ff><div class="outline-marker" data-v-b38bf2ff></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b38bf2ff>On this page</div><ul class="VPDocOutlineItem root" data-v-b38bf2ff data-v-3f927ebe><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-6d7b3c46></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-83890dd9><div class="content-container" data-v-83890dd9><!--[--><!--]--><main class="main" data-v-83890dd9><div style="position:relative;" class="vp-doc _DimensionalData_jl_dev_tables" data-v-83890dd9><div><h1 id="Tables-and-DataFrames" tabindex="-1">Tables and DataFrames <a class="header-anchor" href="#Tables-and-DataFrames" aria-label="Permalink to "Tables and DataFrames {#Tables-and-DataFrames}""></a></h1><p><a href="https://github.com/JuliaData/Tables.jl" target="_blank" rel="noreferrer">Tables.jl</a> provides an ecosystem-wide interface to tabular data in Julia, giving interoperability with <a href="https://dataframes.juliadata.org/stable/" target="_blank" rel="noreferrer">DataFrames.jl</a>, <a href="https://csv.juliadata.org/stable/" target="_blank" rel="noreferrer">CSV.jl</a> and hundreds of other packages that implement the standard.</p><p>DimensionalData.jl implements the Tables.jl interface for <code>AbstractDimArray</code> and <code>AbstractDimStack</code>. <code>DimStack</code> layers are unrolled so they are all the same size, and dimensions loop to match the length of the largest layer.</p><p>Columns are given the <a href="/DimensionalData.jl/dev/api/reference#DimensionalData.Dimensions.name"><code>name</code></a> or the array or the stack layer key. <code>Dimension</code> columns use the <code>Symbol</code> version (the result of <code>DD.name(dimension)</code>).</p><p>Looping of dimensions and stack layers is done <em>lazily</em>, and does not allocate unless collected.</p><h2 id="example" tabindex="-1">Example <a class="header-anchor" href="#example" aria-label="Permalink to "Example""></a></h2><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DimensionalData</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Dates</span></span> <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">using</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> DataFrames</span></span></code></pre></div><p>Define some dimensions:</p><div class="language-julia vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">julia</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">julia</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x, y, c </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> X</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Y</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">10</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">), </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">Dim{:category}</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'a'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'z'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">(</span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">↓ </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;">X </span><span style="--shiki-light:#ff875f;--shiki-dark:#ff875f;"> 1:10</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> <span class="line"><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">→ </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;">Y </span><span style="--shiki-light:#0087d7;--shiki-dark:#0087d7;"> 1:10</span><span style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;">,</span></span> @@ -84,7 +84,7 @@ <span class="line"><span> "8,10,z,0.04599641808658339,0.6150940338022266"</span></span> <span class="line"><span> "9,10,z,0.005163666306917225,0.768924169642427"</span></span> <span class="line"><span> "10,10,z,0.8288995877624121,0.8136963000324107"</span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-83890dd9 data-v-4f9813fa><!--[--><!--]--><div class="edit-info" data-v-4f9813fa><div class="edit-link" data-v-4f9813fa><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/tables.md" target="_blank" rel="noreferrer" data-v-4f9813fa><!--[--><span class="vpi-square-pen edit-link-icon" data-v-4f9813fa></span> Edit this page<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-4f9813fa><span class="visually-hidden" id="doc-footer-aria-label" data-v-4f9813fa>Pager</span><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link prev" href="/DimensionalData.jl/dev/plots" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Previous page</span><span class="title" data-v-4f9813fa>Plots and Makie</span><!--]--></a></div><div class="pager" data-v-4f9813fa><a class="VPLink link pager-link next" href="/DimensionalData.jl/dev/cuda" data-v-4f9813fa><!--[--><span class="desc" data-v-4f9813fa>Next page</span><span class="title" data-v-4f9813fa>CUDA and GPUs</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a9a9e638 data-v-c970a860><div class="container" data-v-c970a860><p class="message" data-v-c970a860>Made with <a href="https://github.com/LuxDL/DocumenterVitepress.jl" target="_blank"><strong>DocumenterVitepress.jl</strong></a></p><p class="copyright" data-v-c970a860>© Copyright 2024. Released under the MIT License.</p></div></footer><!--[--><!--]--></div></div> - <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"CnOMCJ83\",\"api_lookuparrays.md\":\"CMGRbv3b\",\"api_reference.md\":\"Brz0Wk34\",\"basics.md\":\"D2qsW-mh\",\"broadcasts.md\":\"BtCwjWW3\",\"cuda.md\":\"DxFyd6lT\",\"dimarrays.md\":\"CPKxRXq8\",\"dimensions.md\":\"t2iPePY7\",\"diskarrays.md\":\"yKxLOQIu\",\"extending_dd.md\":\"DidWHgEG\",\"get_info.md\":\"D7dC6CSA\",\"groupby.md\":\"B2ubhn1c\",\"index.md\":\"CRTGE4WO\",\"integrations.md\":\"B4DeywJ6\",\"object_modification.md\":\"BpAIEIxF\",\"plots.md\":\"2aFJv8Qw\",\"selectors.md\":\"BxHSadsn\",\"stacks.md\":\"Dr5B-1Fh\",\"tables.md\":\"BW-IP7L1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> + <script>window.__VP_HASH_MAP__=JSON.parse("{\"api_dimensions.md\":\"SBrxkSyF\",\"api_lookuparrays.md\":\"4gWyIReH\",\"api_reference.md\":\"Cbzd03zL\",\"basics.md\":\"1otrM5SC\",\"broadcasts.md\":\"CVzEqDHf\",\"cuda.md\":\"DmbWVZki\",\"dimarrays.md\":\"DAoE3lud\",\"dimensions.md\":\"Btc7hsPQ\",\"diskarrays.md\":\"DNn9Ahrm\",\"extending_dd.md\":\"DoS75dmN\",\"get_info.md\":\"B7K6LY7P\",\"groupby.md\":\"DESSK1W0\",\"index.md\":\"uhypFJup\",\"integrations.md\":\"dJo1qUjg\",\"object_modification.md\":\"-cjSpi5I\",\"plots.md\":\"kpY9w3i0\",\"selectors.md\":\"Cu8DY1IK\",\"stacks.md\":\"SmvHWrk4\",\"tables.md\":\"t8vBJGld\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"DimensionalData.jl\",\"description\":\"Datasets with named dimensions\",\"base\":\"/DimensionalData.jl/dev/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"src\":\"/logo.png\",\"width\":24,\"height\":24},\"search\":{\"provider\":\"local\",\"options\":{\"detailedView\":true}},\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Getting Started\",\"link\":\"/basics\"},{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"Integrations\",\"items\":[{\"text\":\"Integrations\",\"link\":\"/integrations\"},{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"component\":\"VersionPicker\"}],\"sidebar\":[{\"text\":\"Getting Started\",\"link\":\"/basics\",\"items\":[{\"text\":\"Dimensions\",\"link\":\"/dimensions\"},{\"text\":\"Selectors\",\"link\":\"/selectors\"},{\"text\":\"DimArrays\",\"link\":\"/dimarrays\"},{\"text\":\"DimStacks\",\"link\":\"/stacks\"},{\"text\":\"GroupBy\",\"link\":\"/groupby\"},{\"text\":\"Dimension-aware broadcast\",\"link\":\"/broadcasts.md\"},{\"text\":\"Getting information\",\"link\":\"/get_info\"},{\"text\":\"Object modification\",\"link\":\"/object_modification\"}]},{\"text\":\"Integrations\",\"link\":\"/integrations\",\"items\":[{\"text\":\"Plots and Makie\",\"link\":\"/plots\"},{\"text\":\"Tables and DataFrames\",\"link\":\"/tables\"},{\"text\":\"CUDA and GPUs\",\"link\":\"/cuda\"},{\"text\":\"DiskArrays\",\"link\":\"/diskarrays\"},{\"text\":\"Extending DimensionalData\",\"link\":\"/extending_dd\"}]},{\"text\":\"API Reference\",\"link\":\"/api/reference\",\"items\":[{\"text\":\"Dimensions Reference\",\"link\":\"/api/dimensions\"},{\"text\":\"LookupArrays Reference\",\"link\":\"/api/lookuparrays\"}]}],\"editLink\":{\"pattern\":\"https://github.com/rafaqz/DimensionalData.jl/edit/master/docs/src/:path\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/rafaqz/DimensionalData.jl\"}],\"footer\":{\"message\":\"Made with <a href=\\\"https://github.com/LuxDL/DocumenterVitepress.jl\\\" target=\\\"_blank\\\"><strong>DocumenterVitepress.jl</strong></a>\",\"copyright\":\"© Copyright 2024. Released under the MIT License.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script> </body> </html> \ No newline at end of file