CalculusWithJuliaNotes.jl/quarto/308797b5/alternatives/plotly_plotting.html
2022-08-11 13:00:43 -04:00

1574 lines
333 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
<meta charset="utf-8">
<meta name="generator" content="quarto-1.0.32">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>Calculus with Julia - 64&nbsp; JavaScript based plotting libraries</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
pre > code.sourceCode { white-space: pre; position: relative; }
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
pre > code.sourceCode > span:empty { height: 1.2em; }
.sourceCode { overflow: visible; }
code.sourceCode > span { color: inherit; text-decoration: inherit; }
div.sourceCode { margin: 1em 0; }
pre.sourceCode { margin: 0; }
@media screen {
div.sourceCode { overflow: auto; }
}
@media print {
pre > code.sourceCode { white-space: pre-wrap; }
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
}
pre.numberSource code
{ counter-reset: source-line 0; }
pre.numberSource code > span
{ position: relative; left: -4em; counter-increment: source-line; }
pre.numberSource code > span > a:first-child::before
{ content: counter(source-line);
position: relative; left: -1em; text-align: right; vertical-align: baseline;
border: none; display: inline-block;
-webkit-touch-callout: none; -webkit-user-select: none;
-khtml-user-select: none; -moz-user-select: none;
-ms-user-select: none; user-select: none;
padding: 0 4px; width: 4em;
color: #aaaaaa;
}
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
div.sourceCode
{ }
@media screen {
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
}
code span.al { color: #ff0000; font-weight: bold; } /* Alert */
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
code span.at { color: #7d9029; } /* Attribute */
code span.bn { color: #40a070; } /* BaseN */
code span.bu { } /* BuiltIn */
code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
code span.ch { color: #4070a0; } /* Char */
code span.cn { color: #880000; } /* Constant */
code span.co { color: #60a0b0; font-style: italic; } /* Comment */
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
code span.do { color: #ba2121; font-style: italic; } /* Documentation */
code span.dt { color: #902000; } /* DataType */
code span.dv { color: #40a070; } /* DecVal */
code span.er { color: #ff0000; font-weight: bold; } /* Error */
code span.ex { } /* Extension */
code span.fl { color: #40a070; } /* Float */
code span.fu { color: #06287e; } /* Function */
code span.im { } /* Import */
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
code span.kw { color: #007020; font-weight: bold; } /* Keyword */
code span.op { color: #666666; } /* Operator */
code span.ot { color: #007020; } /* Other */
code span.pp { color: #bc7a00; } /* Preprocessor */
code span.sc { color: #4070a0; } /* SpecialChar */
code span.ss { color: #bb6688; } /* SpecialString */
code span.st { color: #4070a0; } /* String */
code span.va { color: #19177c; } /* Variable */
code span.vs { color: #4070a0; } /* VerbatimString */
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
</style>
<script src="../site_libs/quarto-nav/quarto-nav.js"></script>
<script src="../site_libs/quarto-nav/headroom.min.js"></script>
<script src="../site_libs/clipboard/clipboard.min.js"></script>
<script src="../site_libs/quarto-search/autocomplete.umd.js"></script>
<script src="../site_libs/quarto-search/fuse.min.js"></script>
<script src="../site_libs/quarto-search/quarto-search.js"></script>
<meta name="quarto:offset" content="../">
<link href="../alternatives/makie_plotting.html" rel="next">
<link href="../integral_vector_calculus/review.html" rel="prev">
<script src="../site_libs/quarto-html/quarto.js"></script>
<script src="../site_libs/quarto-html/popper.min.js"></script>
<script src="../site_libs/quarto-html/tippy.umd.min.js"></script>
<script src="../site_libs/quarto-html/anchor.min.js"></script>
<link href="../site_libs/quarto-html/tippy.css" rel="stylesheet">
<link href="../site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles">
<script src="../site_libs/bootstrap/bootstrap.min.js"></script>
<link href="../site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
<link href="../site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" id="quarto-bootstrap" data-mode="light">
<script id="quarto-search-options" type="application/json">{
"location": "navbar",
"copy-button": false,
"collapse-after": 3,
"panel-placement": "end",
"type": "overlay",
"limit": 20,
"language": {
"search-no-results-text": "No results",
"search-matching-documents-text": "matching documents",
"search-copy-link-title": "Copy link to search",
"search-hide-matches-text": "Hide additional matches",
"search-more-match-text": "more match in this document",
"search-more-matches-text": "more matches in this document",
"search-clear-button-title": "Clear",
"search-detached-cancel-button-title": "Cancel",
"search-submit-button-title": "Submit"
}
}</script>
<script async="" src="https://hypothes.is/embed.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" integrity="sha512-c3Nl8+7g4LMSTdrm621y7kf9v3SDPnhxLNhcjFJbKECVnmZHTdo+IRO05sNLTH/D3vA6u1X32ehoLC7WFVdheg==" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" integrity="sha512-bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/1itJ0C2ejDxltZVFg==" crossorigin="anonymous"></script>
<script type="application/javascript">define('jquery', [],function() {return window.jQuery;})</script>
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js" type="text/javascript"></script>
</head>
<body class="nav-sidebar floating nav-fixed">
<div id="quarto-search-results"></div>
<header id="quarto-header" class="headroom fixed-top">
<nav class="navbar navbar-expand-lg navbar-dark ">
<div class="navbar-container container-fluid">
<a class="navbar-brand" href="../index.html">
<img src="../logo.png" alt="">
<span class="navbar-title">Calculus with Julia</span>
</a>
<div id="quarto-search" class="" title="Search"></div>
</div> <!-- /container-fluid -->
</nav>
<nav class="quarto-secondary-nav" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar" aria-controls="quarto-sidebar" aria-expanded="false" aria-label="Toggle sidebar navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
<div class="container-fluid d-flex justify-content-between">
<h1 class="quarto-secondary-nav-title"><span class="chapter-number">64</span>&nbsp; <span class="chapter-title">JavaScript based plotting libraries</span></h1>
<button type="button" class="quarto-btn-toggle btn" aria-label="Show secondary navigation">
<i class="bi bi-chevron-right"></i>
</button>
</div>
</nav>
</header>
<!-- content -->
<div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar">
<!-- sidebar -->
<nav id="quarto-sidebar" class="sidebar collapse sidebar-navigation floating overflow-auto">
<div class="mt-2 flex-shrink-0 align-items-center">
<div class="sidebar-search">
<div id="quarto-search" class="" title="Search"></div>
</div>
</div>
<div class="sidebar-menu-container">
<ul class="list-unstyled mt-1">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../index.html" class="sidebar-item-text sidebar-link">Preface</a>
</div>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-1" aria-expanded="false">Precalculus Concepts</a>
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-1" aria-expanded="false">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 ">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/calculator.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span>&nbsp; <span class="chapter-title">From calculator to computer</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/variables.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span>&nbsp; <span class="chapter-title">Variables</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/numbers_types.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">3</span>&nbsp; <span class="chapter-title">Number systems</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/logical_expressions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">4</span>&nbsp; <span class="chapter-title">Inequalities, Logical expressions</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/vectors.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">5</span>&nbsp; <span class="chapter-title">Vectors</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/ranges.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">6</span>&nbsp; <span class="chapter-title">Ranges and Sets</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">7</span>&nbsp; <span class="chapter-title">Functions</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/plotting.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">8</span>&nbsp; <span class="chapter-title">The Graph of a Function</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/transformations.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">9</span>&nbsp; <span class="chapter-title">Function manipulations</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/inversefunctions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">10</span>&nbsp; <span class="chapter-title">The Inverse of a Function</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/polynomial.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">11</span>&nbsp; <span class="chapter-title">Polynomials</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/polynomial_roots.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">12</span>&nbsp; <span class="chapter-title">Roots of a polynomial</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/polynomials_package.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">13</span>&nbsp; <span class="chapter-title">The Polynomials package</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/rational_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Rational functions</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/exp_log_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">15</span>&nbsp; <span class="chapter-title">Exponential and logarithmic functions</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/trig_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">16</span>&nbsp; <span class="chapter-title">Trigonometric functions</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../precalc/julia_overview.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">17</span>&nbsp; <span class="chapter-title">Overview of Julia commands</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" aria-expanded="false">Limits</a>
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" aria-expanded="false">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-2" class="collapse list-unstyled sidebar-section depth1 ">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../limits/limits.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">18</span>&nbsp; <span class="chapter-title">Limits</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../limits/limits_extensions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">19</span>&nbsp; <span class="chapter-title">Limits, issues, extensions of the concept</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../limits/continuity.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">20</span>&nbsp; <span class="chapter-title">Continuity</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../limits/intermediate_value_theorem.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">21</span>&nbsp; <span class="chapter-title">Implications of continuity</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-3" aria-expanded="false">Derivatives</a>
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-3" aria-expanded="false">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-3" class="collapse list-unstyled sidebar-section depth1 ">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/derivatives.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">22</span>&nbsp; <span class="chapter-title">Derivatives</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/numeric_derivatives.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">23</span>&nbsp; <span class="chapter-title">Numeric derivatives</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/symbolic_derivatives.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">24</span>&nbsp; <span class="chapter-title">Symbolic derivatives</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/mean_value_theorem.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">25</span>&nbsp; <span class="chapter-title">The mean value theorem for differentiable functions.</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/optimization.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">26</span>&nbsp; <span class="chapter-title">Optimization</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/first_second_derivatives.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">27</span>&nbsp; <span class="chapter-title">The first and second derivatives</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/curve_sketching.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">28</span>&nbsp; <span class="chapter-title">Curve Sketching</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/linearization.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">29</span>&nbsp; <span class="chapter-title">Linearization</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/newtons_method.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">30</span>&nbsp; <span class="chapter-title">Newtons method</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/more_zeros.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">31</span>&nbsp; <span class="chapter-title">Derivative-free alternatives to Newtons method</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/lhospitals_rule.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">32</span>&nbsp; <span class="chapter-title">LHospitals Rule</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/implicit_differentiation.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">33</span>&nbsp; <span class="chapter-title">Implicit Differentiation</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/related_rates.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">34</span>&nbsp; <span class="chapter-title">Related rates</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../derivatives/taylor_series_polynomials.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">35</span>&nbsp; <span class="chapter-title">Taylor Polynomials and other Approximating Polynomials</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-4" aria-expanded="false">Integrals</a>
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-4" aria-expanded="false">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-4" class="collapse list-unstyled sidebar-section depth1 ">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/area.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">36</span>&nbsp; <span class="chapter-title">Area under a curve</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/ftc.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">37</span>&nbsp; <span class="chapter-title">Fundamental Theorem or Calculus</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/substitution.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">38</span>&nbsp; <span class="chapter-title">Substitution</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/integration_by_parts.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">39</span>&nbsp; <span class="chapter-title">Integration By Parts</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/partial_fractions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">40</span>&nbsp; <span class="chapter-title">Partial Fractions</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/improper_integrals.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">41</span>&nbsp; <span class="chapter-title">Improper Integrals</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/mean_value_theorem.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">42</span>&nbsp; <span class="chapter-title">Mean value theorem for integrals</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/area_between_curves.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">43</span>&nbsp; <span class="chapter-title">Area between two curves</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/center_of_mass.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">44</span>&nbsp; <span class="chapter-title">Center of Mass</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/volumes_slice.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">45</span>&nbsp; <span class="chapter-title">Volumes by slicing</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/arc_length.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">46</span>&nbsp; <span class="chapter-title">Arc length</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integrals/surface_area.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">47</span>&nbsp; <span class="chapter-title">Surface Area</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-5" aria-expanded="false">ODEs</a>
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-5" aria-expanded="false">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-5" class="collapse list-unstyled sidebar-section depth1 ">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../ODEs/odes.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">48</span>&nbsp; <span class="chapter-title">ODEs</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../ODEs/euler.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">49</span>&nbsp; <span class="chapter-title">Eulers method</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../ODEs/solve.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">50</span>&nbsp; <span class="chapter-title">The problem-algorithm-solve interface</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../ODEs/differential_equations.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">51</span>&nbsp; <span class="chapter-title">The <code>DifferentialEquations</code> suite</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-6" aria-expanded="false">Differential vector calculus</a>
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-6" aria-expanded="false">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-6" class="collapse list-unstyled sidebar-section depth1 ">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../differentiable_vector_calculus/polar_coordinates.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">52</span>&nbsp; <span class="chapter-title">Polar Coordinates and Curves</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../differentiable_vector_calculus/vectors.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">53</span>&nbsp; <span class="chapter-title">Vectors and matrices</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../differentiable_vector_calculus/vector_valued_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">54</span>&nbsp; <span class="chapter-title">Vector-valued functions, <span class="math inline">\(f:R \rightarrow R^n\)</span></span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../differentiable_vector_calculus/scalar_functions.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">55</span>&nbsp; <span class="chapter-title">Scalar functions</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../differentiable_vector_calculus/scalar_functions_applications.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">56</span>&nbsp; <span class="chapter-title">Applications with scalar functions</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../differentiable_vector_calculus/vector_fields.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">57</span>&nbsp; <span class="chapter-title">Functions <span class="math inline">\(R^n \rightarrow R^m\)</span></span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../differentiable_vector_calculus/plots_plotting.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">58</span>&nbsp; <span class="chapter-title">2D and 3D plots in Julia with Plots</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-7" aria-expanded="false">Integral vector calculus</a>
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-7" aria-expanded="false">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-7" class="collapse list-unstyled sidebar-section depth1 ">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integral_vector_calculus/double_triple_integrals.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">59</span>&nbsp; <span class="chapter-title">Multi-dimensional integrals</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integral_vector_calculus/line_integrals.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">60</span>&nbsp; <span class="chapter-title">Line and Surface Integrals</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integral_vector_calculus/div_grad_curl.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">61</span>&nbsp; <span class="chapter-title">The Gradient, Divergence, and Curl</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integral_vector_calculus/stokes_theorem.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">62</span>&nbsp; <span class="chapter-title">Greens Theorem, Stokes Theorem, and the Divergence Theorem</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../integral_vector_calculus/review.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">63</span>&nbsp; <span class="chapter-title">Quick Review of Vector Calculus</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-8" aria-expanded="true">Alternatives</a>
<a class="sidebar-item-toggle text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-8" aria-expanded="true">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-8" class="collapse list-unstyled sidebar-section depth1 show">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../alternatives/plotly_plotting.html" class="sidebar-item-text sidebar-link active"><span class="chapter-number">64</span>&nbsp; <span class="chapter-title">JavaScript based plotting libraries</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../alternatives/makie_plotting.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">65</span>&nbsp; <span class="chapter-title">Calculus plots with Makie</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item sidebar-item-section">
<div class="sidebar-item-container">
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-9" aria-expanded="false">Appendices</a>
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-9" aria-expanded="false">
<i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<ul id="quarto-sidebar-section-9" class="collapse list-unstyled sidebar-section depth1 ">
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../misc/getting_started_with_julia.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">66</span>&nbsp; <span class="chapter-title">Getting started with Julia</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../misc/julia_interfaces.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">67</span>&nbsp; <span class="chapter-title">Julia interfaces</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../misc/calculus_with_julia.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">68</span>&nbsp; <span class="chapter-title">The <code>CalculusWithJulia</code> package</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../misc/unicode.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">69</span>&nbsp; <span class="chapter-title">Usages of Unicode symbols</span></a>
</div>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../misc/quick_notes.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">70</span>&nbsp; <span class="chapter-title">Quick introduction to Calculus with Julia</span></a>
</div>
</li>
</ul>
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../references.html" class="sidebar-item-text sidebar-link">References</a>
</div>
</li>
</ul>
</div>
</nav>
<!-- margin-sidebar -->
<div id="quarto-margin-sidebar" class="sidebar margin-sidebar">
<nav id="TOC" role="doc-toc">
<h2 id="toc-title">Table of contents</h2>
<ul>
<li><a href="#julia-dictionaries-to-json" id="toc-julia-dictionaries-to-json" class="nav-link active" data-scroll-target="#julia-dictionaries-to-json"> <span class="header-section-number">64.1</span> Julia dictionaries to JSON</a></li>
<li><a href="#scatter-plot" id="toc-scatter-plot" class="nav-link" data-scroll-target="#scatter-plot"> <span class="header-section-number">64.2</span> Scatter plot</a></li>
<li><a href="#line-plot" id="toc-line-plot" class="nav-link" data-scroll-target="#line-plot"> <span class="header-section-number">64.3</span> Line plot</a>
<ul class="collapse">
<li><a href="#nothing" id="toc-nothing" class="nav-link" data-scroll-target="#nothing"> <span class="header-section-number">64.3.1</span> Nothing</a></li>
</ul></li>
<li><a href="#multiple-plots" id="toc-multiple-plots" class="nav-link" data-scroll-target="#multiple-plots"> <span class="header-section-number">64.4</span> Multiple plots</a>
<ul class="collapse">
<li><a href="#adding-a-layer" id="toc-adding-a-layer" class="nav-link" data-scroll-target="#adding-a-layer"> <span class="header-section-number">64.4.1</span> Adding a layer</a></li>
</ul></li>
<li><a href="#interactivity" id="toc-interactivity" class="nav-link" data-scroll-target="#interactivity"> <span class="header-section-number">64.5</span> Interactivity</a></li>
<li><a href="#plot-attributes" id="toc-plot-attributes" class="nav-link" data-scroll-target="#plot-attributes"> <span class="header-section-number">64.6</span> Plot attributes</a>
<ul class="collapse">
<li><a href="#marker-attributes" id="toc-marker-attributes" class="nav-link" data-scroll-target="#marker-attributes"> <span class="header-section-number">64.6.1</span> Marker attributes</a></li>
<li><a href="#line-attributes" id="toc-line-attributes" class="nav-link" data-scroll-target="#line-attributes"> <span class="header-section-number">64.6.2</span> Line attributes</a></li>
<li><a href="#text" id="toc-text" class="nav-link" data-scroll-target="#text"> <span class="header-section-number">64.6.3</span> Text</a></li>
<li><a href="#filled-regions" id="toc-filled-regions" class="nav-link" data-scroll-target="#filled-regions"> <span class="header-section-number">64.6.4</span> Filled regions</a></li>
</ul></li>
<li><a href="#layout-attributes" id="toc-layout-attributes" class="nav-link" data-scroll-target="#layout-attributes"> <span class="header-section-number">64.7</span> Layout attributes</a></li>
<li><a href="#parameterized-curves" id="toc-parameterized-curves" class="nav-link" data-scroll-target="#parameterized-curves"> <span class="header-section-number">64.8</span> Parameterized curves</a>
<ul class="collapse">
<li><a href="#quiver-plots" id="toc-quiver-plots" class="nav-link" data-scroll-target="#quiver-plots"> <span class="header-section-number">64.8.1</span> Quiver plots</a></li>
</ul></li>
<li><a href="#contour-plots" id="toc-contour-plots" class="nav-link" data-scroll-target="#contour-plots"> <span class="header-section-number">64.9</span> Contour plots</a></li>
<li><a href="#surface-plots" id="toc-surface-plots" class="nav-link" data-scroll-target="#surface-plots"> <span class="header-section-number">64.10</span> Surface plots</a>
<ul class="collapse">
<li><a href="#surfaces-defined-by-z-fxy" id="toc-surfaces-defined-by-z-fxy" class="nav-link" data-scroll-target="#surfaces-defined-by-z-fxy"> <span class="header-section-number">64.10.1</span> Surfaces defined by <span class="math inline">\(z = f(x,y)\)</span></a></li>
<li><a href="#parametrically-defined-surfaces" id="toc-parametrically-defined-surfaces" class="nav-link" data-scroll-target="#parametrically-defined-surfaces"> <span class="header-section-number">64.10.2</span> Parametrically defined surfaces</a></li>
</ul></li>
</ul>
<div class="toc-actions"><div><i class="bi bi-github"></i></div><div class="action-links"><p><a href="https://github.com/jverzani/CalculusWithJuliaNotes.jl/edit/main/quarto/alternatives/plotly_plotting.qmd" class="toc-action">Edit this page</a></p><p><a href="https://github.com/jverzani/CalculusWithJuliaNotes.jl/issues/new" class="toc-action">Report an issue</a></p></div></div></nav>
</div>
<!-- main -->
<main class="content" id="quarto-document-content">
<header id="title-block-header" class="quarto-title-block default">
<div class="quarto-title">
<h1 class="title d-none d-lg-block"><span class="chapter-number">64</span>&nbsp; <span class="chapter-title">JavaScript based plotting libraries</span></h1>
</div>
<div class="quarto-title-meta">
</div>
</header>
<div class="callout-note callout callout-style-default callout-captioned">
<div class="callout-header d-flex align-content-center">
<div class="callout-icon-container">
<i class="callout-icon"></i>
</div>
<div class="callout-caption-container flex-fill">
Not working with quarto
</div>
</div>
<div class="callout-body-container callout-body">
<p>Currently, the plots generated here are not rendering within quarto.</p>
</div>
</div>
<p>This section uses this add-on package:</p>
<div class="sourceCode cell-code" id="cb1"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="im">using</span> <span class="bu">PlotlyLight</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<p>To avoid a dependence on the <code>CalculusWithJulia</code> package, we load two utility packages:</p>
<div class="sourceCode cell-code" id="cb2"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="im">using</span> <span class="bu">PlotUtils</span></span>
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a><span class="im">using</span> <span class="bu">SplitApplyCombine</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<hr>
<p><code>Julia</code> has different interfaces to a few JavaScript plotting libraries, notably the <a href="https://vega.github.io/vega/">vega</a> and <a href="https://vega.github.io/vega-lite/">vega-lite</a> through the <a href="https://github.com/queryverse/VegaLite.jl">VegaLite.jl</a> package, and <a href="https://plotly.com/javascript/">plotly</a> through several interfaces: <code>Plots.jl</code>, <code>PlotlyJS.jl</code>, and <code>PlotlyLight.jl</code>. These all make web-based graphics, for display through a web browser.</p>
<p>The <code>Plots.jl</code> interface is a backend for the familiar <code>Plots</code> package, making the calling syntax familiar, as is used throughout these notes. The <code>plotly()</code> command, from <code>Plots</code>, switches to this backend.</p>
<p>The <code>PlotlyJS.jl</code> interface offers direct translation from <code>Julia</code> structures to the underlying <code>JSON</code> structures needed by plotly, and has mechanisms to call back into <code>Julia</code> from <code>JavaScript</code>. This allows complicated interfaces to be produced.</p>
<p>Here we discuss <code>PlotlyLight</code> which conveniently provides the translation from <code>Julia</code> structures to the <code>JSON</code> structures needed in a light-weight package, which plots quickly, without the delays due to compilation of the more complicated interfaces. Minor modifications would be needed to adjust the examples to work with <code>PlotlyJS</code> or <code>PlotlyBase</code>. The documentation for the <code>JavaScript</code> <a href="https://plotly.com/javascript/">library</a> provides numerous examples which can easily be translated. The <a href="https://plotly.com/javascript/reference/">one-page-reference</a> gives specific details, and is quoted from below, at times.</p>
<p>This discussion covers the basic of graphing for calculus purposes. It does not cover, for example, the faceting common in statistical usages, or the chart types common in business and statistics uses. The <code>plotly</code> library is much more extensive than what is reviewed below.</p>
<section id="julia-dictionaries-to-json" class="level2" data-number="64.1">
<h2 data-number="64.1" class="anchored" data-anchor-id="julia-dictionaries-to-json"><span class="header-section-number">64.1</span> Julia dictionaries to JSON</h2>
<p><code>PlotlyLight</code> uses the <code>JavaScript</code> interface for the <code>plotly</code> libraries. Unlike more developed interfaces, like the one for <code>Python</code>, <code>PlotlyLight</code> only manages the translation from <code>Julia</code> structures to <code>JavaScript</code> structures and the display of the results.</p>
<p>The key to translation is the mapping for <code>Julia</code>s dictionaries to the nested <code>JSON</code> structures needed by the <code>JavaScript</code> library.</p>
<p>For example, an introductory <a href="https://plotly.com/javascript/line-and-scatter/">example</a> for a scatter plot includes this <code>JSON</code> structure:</p>
<div class="sourceCode cell-code" id="cb3"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a>var trace1 <span class="op">=</span> {</span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a> x<span class="op">:</span> [<span class="fl">1</span>, <span class="fl">2</span>, <span class="fl">3</span>, <span class="fl">4</span>],</span>
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a> y<span class="op">:</span> [<span class="fl">10</span>, <span class="fl">15</span>, <span class="fl">13</span>, <span class="fl">17</span>],</span>
<span id="cb3-4"><a href="#cb3-4" aria-hidden="true" tabindex="-1"></a> mode<span class="op">:</span> <span class="ch">'markers'</span>,</span>
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">:</span> <span class="ch">'scatter'</span></span>
<span id="cb3-6"><a href="#cb3-6" aria-hidden="true" tabindex="-1"></a>};</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<p>The <code>{}</code> create a list, the <code>[]</code> an Array (or vector, as it does with <code>Julia</code>), the <code>name:</code> are keys. The above is simply translated via:</p>
<div class="cell" data-execution_count="5">
<div class="sourceCode cell-code" id="cb4"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="fu">Config</span>(x <span class="op">=</span> [<span class="fl">1</span>,<span class="fl">2</span>,<span class="fl">3</span>,<span class="fl">4</span>],</span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> [<span class="fl">10</span>, <span class="fl">15</span>, <span class="fl">13</span>, <span class="fl">17</span>],</span>
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a> mode <span class="op">=</span> <span class="st">"markers"</span>,</span>
<span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span> <span class="op">=</span> <span class="st">"scatter"</span></span>
<span id="cb4-5"><a href="#cb4-5" aria-hidden="true" tabindex="-1"></a> )</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="5">
<pre><code>Config with 4 entries:
:x =&gt; [1, 2, 3, 4]
:y =&gt; [10, 15, 13, 17]
:mode =&gt; "markers"
:type =&gt; "scatter"</code></pre>
</div>
</div>
<p>The <code>Config</code> constructor (from the <code>EasyConfig</code> package loaded with <code>PlotlyLight</code>) is an interface for a dictionary whose keys are symbols, which are produced by the named arguments passed to <code>Config</code>. By nesting <code>Config</code> statements, nested <code>JavaScript</code> structures can be built up. As well, these can be built on the fly using <code>.</code> notation, as in:</p>
<div class="cell" data-hold="true" data-execution_count="6">
<div class="sourceCode cell-code" id="cb6"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a>cfg <span class="op">=</span> <span class="fu">Config</span>()</span>
<span id="cb6-2"><a href="#cb6-2" aria-hidden="true" tabindex="-1"></a>cfg.key1.key2.key3 <span class="op">=</span> <span class="st">"value"</span></span>
<span id="cb6-3"><a href="#cb6-3" aria-hidden="true" tabindex="-1"></a>cfg</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="6">
<pre><code>Config with 1 entry:
:key1 =&gt; Config(:key2=&gt;Config(:key3=&gt;"value"))</code></pre>
</div>
</div>
<p>To produce a figure with <code>PlotlyLight</code> then is fairly straightforward: data and, optionally, a layout are created using <code>Config</code>, then passed along to the <code>Plot</code> command producing a <code>Plot</code> object which has <code>display</code> methods defined for it. This will be illustrated through the examples.</p>
</section>
<section id="scatter-plot" class="level2" data-number="64.2">
<h2 data-number="64.2" class="anchored" data-anchor-id="scatter-plot"><span class="header-section-number">64.2</span> Scatter plot</h2>
<p>A basic scatter plot of points <span class="math inline">\((x,y)\)</span> is created as follows:</p>
<div class="cell" data-hold="true" data-execution_count="7">
<div class="sourceCode cell-code" id="cb8"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a>xs <span class="op">=</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span></span>
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a>ys <span class="op">=</span> <span class="fu">rand</span>(<span class="fl">5</span>)</span>
<span id="cb8-3"><a href="#cb8-3" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x <span class="op">=</span> xs,</span>
<span id="cb8-4"><a href="#cb8-4" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> ys,</span>
<span id="cb8-5"><a href="#cb8-5" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>,</span>
<span id="cb8-6"><a href="#cb8-6" aria-hidden="true" tabindex="-1"></a> mode<span class="op">=</span><span class="st">"markers"</span></span>
<span id="cb8-7"><a href="#cb8-7" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb8-8"><a href="#cb8-8" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="7">
<div class="" style="height: 100vh;" id="parent-of-rSE4HwRQR9">
<div class="" style="height: 100%;" id="rSE4HwRQR9"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("rSE4HwRQR9", [{"x":[1,2,3,4,5],"y":[0.08994946932785142,0.8321412126339139,0.6043986204533629,0.9387611291180509,0.44390659770881635],"type":"scatter","mode":"markers"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The symbols <code>x</code> and <code>y</code> (and later <code>z</code>) specify the data to <code>plotly</code>. Here the <code>mode</code> is specified to show markers.</p>
<p>The <code>type</code> key specifies the chart or trace type. The <code>mode</code> specification sets the drawing mode for the trace. Above it is “markers”. It can be any combination of “lines”, “markers”, or “text” joined with a “+” if more than one is desired.</p>
</section>
<section id="line-plot" class="level2" data-number="64.3">
<h2 data-number="64.3" class="anchored" data-anchor-id="line-plot"><span class="header-section-number">64.3</span> Line plot</h2>
<p>A line plot is very similar, save for a different <code>mode</code> specification:</p>
<div class="cell" data-hold="true" data-execution_count="8">
<div class="sourceCode cell-code" id="cb9"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb9-1"><a href="#cb9-1" aria-hidden="true" tabindex="-1"></a>xs <span class="op">=</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span></span>
<span id="cb9-2"><a href="#cb9-2" aria-hidden="true" tabindex="-1"></a>ys <span class="op">=</span> <span class="fu">rand</span>(<span class="fl">5</span>)</span>
<span id="cb9-3"><a href="#cb9-3" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x <span class="op">=</span> xs,</span>
<span id="cb9-4"><a href="#cb9-4" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> ys,</span>
<span id="cb9-5"><a href="#cb9-5" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>,</span>
<span id="cb9-6"><a href="#cb9-6" aria-hidden="true" tabindex="-1"></a> mode<span class="op">=</span><span class="st">"lines"</span></span>
<span id="cb9-7"><a href="#cb9-7" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb9-8"><a href="#cb9-8" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="8">
<div class="" style="height: 100vh;" id="parent-of-Z1Ba591aaK">
<div class="" style="height: 100%;" id="Z1Ba591aaK"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("Z1Ba591aaK", [{"x":[1,2,3,4,5],"y":[0.23555907494869743,0.025848842512131265,0.3329966194209242,0.20348656977345858,0.8433886367228227],"type":"scatter","mode":"lines"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The difference is solely the specification of the <code>mode</code> value, for a line plot it is “lines,” for a scatter plot it is “markers” The <code>mode</code> “lines+markers” will plot both. The default for the “scatter” types is to use “lines+markers” for small data sets, and “lines” for others, so for this example, <code>mode</code> could be left off.</p>
<section id="nothing" class="level3" data-number="64.3.1">
<h3 data-number="64.3.1" class="anchored" data-anchor-id="nothing"><span class="header-section-number">64.3.1</span> Nothing</h3>
<p>The line graph plays connect-the-dots with the points specified by paired <code>x</code> and <code>y</code> values. <em>Typically</em>, when and <code>x</code> value is <code>NaN</code> that “dot” (or point) is skipped. However, <code>NaN</code> doesnt pass through the JSON conversion <code>nothing</code> can be used.</p>
<div class="cell" data-hold="true" data-execution_count="9">
<div class="sourceCode cell-code" id="cb10"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(</span>
<span id="cb10-2"><a href="#cb10-2" aria-hidden="true" tabindex="-1"></a> x<span class="op">=</span>[<span class="fl">0</span>,<span class="fl">1</span>,<span class="cn">nothing</span>,<span class="fl">3</span>,<span class="fl">4</span>,<span class="fl">5</span>],</span>
<span id="cb10-3"><a href="#cb10-3" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> [<span class="fl">0</span>,<span class="fl">1</span>,<span class="fl">2</span>,<span class="fl">3</span>,<span class="fl">4</span>,<span class="fl">5</span>],</span>
<span id="cb10-4"><a href="#cb10-4" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>, mode<span class="op">=</span><span class="st">"markers+lines"</span>)</span>
<span id="cb10-5"><a href="#cb10-5" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="9">
<div class="" style="height: 100vh;" id="parent-of-Qq3VQn42SQ">
<div class="" style="height: 100%;" id="Qq3VQn42SQ"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("Qq3VQn42SQ", [{"x":[0,1,null,3,4,5],"y":[0,1,2,3,4,5],"type":"scatter","mode":"markers+lines"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
</section>
</section>
<section id="multiple-plots" class="level2" data-number="64.4">
<h2 data-number="64.4" class="anchored" data-anchor-id="multiple-plots"><span class="header-section-number">64.4</span> Multiple plots</h2>
<p>More than one graph or layer can appear on a plot. The <code>data</code> argument can be a vector of <code>Config</code> values, each describing a plot. For example, here we make a scatter plot and a line plot:</p>
<div class="cell" data-hold="true" data-execution_count="10">
<div class="sourceCode cell-code" id="cb11"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb11-1"><a href="#cb11-1" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> [<span class="fu">Config</span>(x <span class="op">=</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span>,</span>
<span id="cb11-2"><a href="#cb11-2" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fu">rand</span>(<span class="fl">5</span>),</span>
<span id="cb11-3"><a href="#cb11-3" aria-hidden="true" tabindex="-1"></a> type <span class="op">=</span> <span class="st">"scatter"</span>,</span>
<span id="cb11-4"><a href="#cb11-4" aria-hidden="true" tabindex="-1"></a> mode <span class="op">=</span> <span class="st">"markers"</span>,</span>
<span id="cb11-5"><a href="#cb11-5" aria-hidden="true" tabindex="-1"></a> name <span class="op">=</span> <span class="st">"scatter plot"</span>),</span>
<span id="cb11-6"><a href="#cb11-6" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span>,</span>
<span id="cb11-7"><a href="#cb11-7" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fu">rand</span>(<span class="fl">5</span>),</span>
<span id="cb11-8"><a href="#cb11-8" aria-hidden="true" tabindex="-1"></a> type <span class="op">=</span> <span class="st">"scatter"</span>,</span>
<span id="cb11-9"><a href="#cb11-9" aria-hidden="true" tabindex="-1"></a> mode <span class="op">=</span> <span class="st">"lines"</span>,</span>
<span id="cb11-10"><a href="#cb11-10" aria-hidden="true" tabindex="-1"></a> name <span class="op">=</span> <span class="st">"line plot"</span>)</span>
<span id="cb11-11"><a href="#cb11-11" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb11-12"><a href="#cb11-12" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="10">
<div class="" style="height: 100vh;" id="parent-of-5jAl28ZMHS">
<div class="" style="height: 100%;" id="5jAl28ZMHS"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("5jAl28ZMHS", [{"x":[1,2,3,4,5],"y":[0.7188349616144705,0.5373534389386008,0.936375113283077,0.6784222547103812,0.32971033986243614],"type":"scatter","mode":"markers","name":"scatter plot"},{"x":[1,2,3,4,5],"y":[0.026076687681529154,0.6999149982514479,0.1707848451702133,0.2040683234870554,0.9648893011961274],"type":"scatter","mode":"lines","name":"line plot"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The <code>name</code> argument adjusts the name in the legend referencing the plot. This is produced by default.</p>
<section id="adding-a-layer" class="level3" data-number="64.4.1">
<h3 data-number="64.4.1" class="anchored" data-anchor-id="adding-a-layer"><span class="header-section-number">64.4.1</span> Adding a layer</h3>
<p>In <code>PlotlyLight</code>, the <code>Plot</code> object has a field <code>data</code> for storing a vector of configurations, as above. After a plot is made, this field can have values pushed onto it and the corresponding layers will be rendered when the plot is redisplayed.</p>
<p>For example, here we plot the graphs of both the <span class="math inline">\(\sin(x)\)</span> and <span class="math inline">\(\cos(x)\)</span> over <span class="math inline">\([0,2\pi]\)</span>. We used the utility <code>PlotUtils.adapted_grid</code> to select the points to use for the graph.</p>
<div class="cell" data-hold="true" data-execution_count="11">
<div class="sourceCode cell-code" id="cb12"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb12-1"><a href="#cb12-1" aria-hidden="true" tabindex="-1"></a>a, b <span class="op">=</span> <span class="fl">0</span>, <span class="fl">2</span>pi</span>
<span id="cb12-2"><a href="#cb12-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb12-3"><a href="#cb12-3" aria-hidden="true" tabindex="-1"></a>xs, ys <span class="op">=</span> PlotUtils.<span class="fu">adapted_grid</span>(sin, (a,b))</span>
<span id="cb12-4"><a href="#cb12-4" aria-hidden="true" tabindex="-1"></a>p <span class="op">=</span> <span class="fu">Plot</span>(<span class="fu">Config</span>(x<span class="op">=</span>xs, y<span class="op">=</span>ys, name<span class="op">=</span><span class="st">"sin"</span>))</span>
<span id="cb12-5"><a href="#cb12-5" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb12-6"><a href="#cb12-6" aria-hidden="true" tabindex="-1"></a>xs, ys <span class="op">=</span> PlotUtils.<span class="fu">adapted_grid</span>(cos, (a,b))</span>
<span id="cb12-7"><a href="#cb12-7" aria-hidden="true" tabindex="-1"></a><span class="fu">push!</span>(p.data, <span class="fu">Config</span>(x<span class="op">=</span>xs, y<span class="op">=</span>ys, name<span class="op">=</span><span class="st">"cos"</span>))</span>
<span id="cb12-8"><a href="#cb12-8" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb12-9"><a href="#cb12-9" aria-hidden="true" tabindex="-1"></a>p <span class="co"># to display the plot</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="11">
<div class="" style="height: 100vh;" id="parent-of-NuVWueFgVA">
<div class="" style="height: 100%;" id="NuVWueFgVA"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("NuVWueFgVA", [{"x":[0.0,0.020453483525902576,0.04090696705180515,0.13546796150826426,0.2300289559647234,0.32458995042118255,0.41915094487764165,0.4759781610514199,0.532805377225198,0.5896325933989763,0.6464598095727545,0.6945064976185983,0.7425531856644421,0.7905998737102857,0.8386465617561295,0.8908387320075937,0.9430309022590577,0.9952230725105218,1.0474152427619858,1.0955318072545785,1.1436483717471715,1.1917649362397644,1.2398815007323571,1.2914675431499638,1.3430535855675705,1.3946396279851772,1.4462256704027838,1.5059931594748304,1.5657606485468771,1.625528137618924,1.6852956266909704,1.7384099176948042,1.791524208698638,1.8446384997024718,1.8977527907063056,1.944329237495769,1.9909056842852326,2.037482131074696,2.0840585778641594,2.1348394073010226,2.1856202367378863,2.23640106617475,2.2871818956116137,2.338264529458689,2.3893471633057644,2.4404297971528397,2.4915124309999155,2.547990814919217,2.604469198838519,2.660947582757821,2.7174259666771228,2.824901481048067,2.9323769954190104,3.1558761915690132,3.344014908398189,3.45886293270755,3.5737109570169117,3.626314984978241,3.67891901293957,3.731523040900899,3.7841270688622277,3.8327109481851873,3.881294827508147,3.929878706831106,3.9784625861540657,4.027676550350576,4.076890514547087,4.126104478743597,4.1753184429401085,4.230473499936717,4.285628556933325,4.3407836139299345,4.395938670926543,4.445918056965324,4.495897443004104,4.545876829042884,4.595856215081664,4.653079165013181,4.710302114944698,4.7675250648762155,4.824748014807732,4.877731377688493,4.930714740569252,4.983698103450012,5.036681466330772,5.088916853581839,5.141152240832906,5.193387628083972,5.245623015335038,5.296339253178833,5.347055491022628,5.397771728866422,5.448487966710217,5.500478595558839,5.55246922440746,5.604459853256081,5.656450482104702,5.713412251834873,5.7703740215650425,5.827335791295212,5.884297561025383,6.049790185952136,6.21528281087889,6.249234059029238,6.283185307179586],"y":[0.0,0.020452057453677872,0.04089555918989503,0.13505399993508616,0.22800571688939694,0.3189201752422638,0.4069850433346307,0.45820809975336635,0.5079518480271369,0.5560556922781696,0.6023643309990425,0.6400063252344471,0.6761711591591325,0.7107753628834882,0.7437390685151042,0.7775993821537295,0.8093419782653278,0.838880408926095,0.8661342290459667,0.8891717155565947,0.9101509854967729,0.9290234769517762,0.9457455046874044,0.9612407162351582,0.9741785183135317,0.9845244895159102,0.9922511040786882,0.9979010094574776,0.9999873209990842,0.9985025882982256,0.9934521134682904,0.9859856983978774,0.9757383454300206,0.962738956862454,0.9470241970122869,0.9310439748382072,0.9130443431927493,0.8930643427953728,0.8711473097323753,0.8451005634841151,0.8168750308962434,0.7865434813023613,0.7541841136396962,0.7196708401691726,0.683280040400766,0.6451066531311488,0.6052502676926622,0.5593503218132857,0.5116666301125801,0.46235125397765786,0.4115614581720805,0.3114239881424667,0.20769272524662824,-0.014283052297563525,-0.20104271662649129,-0.31197424411500096,-0.4187953309589425,-0.4659626950147363,-0.5118409519766496,-0.5563031775498043,-0.5992263649548825,-0.6373992642713062,-0.674067946529336,-0.7091458762394388,-0.7425502719752773,-0.7746009528249037,-0.8047759177418148,-0.8330020972800488,-0.8592111410270665,-0.8861087671174831,-0.9103114624598042,-0.9317456191739537,-0.9503460493618624,-0.9647062084995238,-0.9766570919289316,-0.9861688532855816,-0.9932177377150141,-0.9982416884186427,-0.9999978224971079,-0.9984803911180334,-0.9936943617031827,-0.9863620579703442,-0.9762614501252986,-0.9634208863329083,-0.9478764046638413,-0.9299469180633403,-0.9094806150101035,-0.8865333258459529,-0.8611676488327534,-0.8342912851502972,-0.8052694700925618,-0.7741768357384597,-0.7410933394557864,-0.705201078573368,-0.6674030705329667,-0.6278014613020073,-0.5865032709298581,-0.5394409699124447,-0.4906288486196883,-0.44022524215085673,-0.3883936480107159,-0.23128191870069773,-0.06785032810101001,-0.03394472599777715,-2.4492935982947064e-16],"name":"sin"},{"x":[0.0,0.010226741762951288,0.020453483525902576,0.030680225288853863,0.04090696705180515,0.08818746428003471,0.13546796150826426,0.1827484587364938,0.2300289559647234,0.27730945319295297,0.32458995042118255,0.37187044764941213,0.41915094487764165,0.4759781610514199,0.532805377225198,0.5896325933989763,0.6464598095727545,0.6945064976185983,0.7425531856644421,0.7905998737102857,0.8386465617561295,0.8908387320075937,0.9430309022590577,0.9952230725105218,1.0474152427619858,1.1436483717471715,1.2398815007323571,1.4462256704027838,1.6852956266909704,1.791524208698638,1.8977527907063056,1.9909056842852326,2.0840585778641594,2.1348394073010226,2.1856202367378863,2.23640106617475,2.2871818956116137,2.338264529458689,2.3893471633057644,2.4404297971528397,2.4915124309999155,2.547990814919217,2.604469198838519,2.660947582757821,2.7174259666771228,2.771163723862595,2.824901481048067,2.8786392382335384,2.9323769954190104,2.9882517944565112,3.0441265934940116,3.1000013925315124,3.1558761915690132,3.202910870776307,3.249945549983601,3.296980229190895,3.344014908398189,3.4014389205528697,3.45886293270755,3.516286944862231,3.5737109570169117,3.626314984978241,3.67891901293957,3.731523040900899,3.7841270688622277,3.8327109481851873,3.881294827508147,3.929878706831106,3.9784625861540657,4.027676550350576,4.076890514547087,4.126104478743597,4.1753184429401085,4.285628556933325,4.395938670926543,4.495897443004104,4.595856215081664,4.824748014807732,5.036681466330772,5.141152240832906,5.245623015335038,5.296339253178833,5.347055491022628,5.397771728866422,5.448487966710217,5.500478595558839,5.55246922440746,5.604459853256081,5.656450482104702,5.713412251834873,5.7703740215650425,5.827335791295212,5.884297561025383,5.925670717257071,5.967043873488759,6.008417029720448,6.049790185952136,6.132536498415513,6.21528281087889,6.232258434954064,6.249234059029238,6.266209683104412,6.283185307179586],"y":[1.0,0.9999477073322172,0.9997908347979149,0.9995293988036597,0.9991634266918229,0.9961140050094685,0.9908382396241748,0.9833479220246519,0.9736597932880623,0.9617955066632284,0.9477815791749932,0.9316493323578996,0.913434822251653,0.88884494560098,0.8613854654484346,0.8311450337245874,0.7982212805607704,0.768369639991,0.7367445714230917,0.7034190667858283,0.6684700426827557,0.6287600503166039,0.5873376901047349,0.5443157718824503,0.49981146172826896,0.41427669931973377,0.3249083568693899,0.12424872818111332,-0.11424928115916956,-0.21893990330107904,-0.32116221800397576,-0.40786030373612125,-0.49102175587854036,-0.5346073676997269,-0.5768146876582301,-0.6175348994354586,-0.6566630206837492,-0.6943154051367413,-0.7301564122774844,-0.7640925376457538,-0.796035246366617,-0.8289313707945754,-0.8591840662100504,-0.8866968579764379,-0.9113820089003682,-0.9321721522370845,-0.9502710663855028,-0.9656264988449281,-0.9781941176881144,-0.9882663091151916,-0.9952539425002723,-0.9991352081746935,-0.999897992005717,-0.9981206270894916,-0.9941355658336928,-0.9879516226089575,-0.9795824753901227,-0.9664294884885777,-0.9500905593725651,-0.9306195511377686,-0.9080806521267755,-0.8848043664305708,-0.8590802290121902,-0.8309794068735945,-0.8005796422236566,-0.7705336968013777,-0.7386693465020221,-0.7050617889324301,-0.6697903355449686,-0.6324502857005847,-0.5935787413838367,-0.5532698310291644,-0.5116211636894689,-0.41392395595603365,-0.3111950938917587,-0.2148043872571564,-0.11626919406390276,0.1121227698520879,0.3186382297866185,0.4157463300148829,0.5083210408824993,0.5513239079908159,0.5929089985291544,0.6329693728814894,0.6714020123698399,0.7090073615830504,0.7446966774755799,0.7783735126448383,0.809946858249711,0.842023420089917,0.8713686549917429,0.8978873738800538,0.9214935562362485,0.9367694780669014,0.9504421246502252,0.9624880953349975,0.9728867735158722,0.9886739130598333,0.9976955111538717,0.9987035070885376,0.9994237117343854,0.9998559175537207,1.0],"name":"cos"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The values for <code>a</code> and <code>b</code> are used to generate the <span class="math inline">\(x\)</span>- and <span class="math inline">\(y\)</span>-values. These can also be gathered from the existing plot object. Here is one way, where for each trace with an <code>x</code> key, the extrema are consulted to update a list of left and right ranges.</p>
<div class="cell" data-hold="true" data-execution_count="12">
<div class="sourceCode cell-code" id="cb13"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb13-1"><a href="#cb13-1" aria-hidden="true" tabindex="-1"></a>xs, ys <span class="op">=</span> PlotUtils.<span class="fu">adapted_grid</span>(x <span class="op">-&gt;</span> x<span class="op">^</span><span class="fl">5</span> <span class="op">-</span> x <span class="op">-</span> <span class="fl">1</span>, (<span class="fl">0</span>, <span class="fl">2</span>)) <span class="co"># answer is (0,2)</span></span>
<span id="cb13-2"><a href="#cb13-2" aria-hidden="true" tabindex="-1"></a>p <span class="op">=</span> <span class="fu">Plot</span>([<span class="fu">Config</span>(x<span class="op">=</span>xs, y<span class="op">=</span>ys, name<span class="op">=</span><span class="st">"Polynomial"</span>),</span>
<span id="cb13-3"><a href="#cb13-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x<span class="op">=</span>xs, y<span class="op">=</span><span class="fl">0</span> <span class="op">.*</span> ys, name<span class="op">=</span><span class="st">"x-axis"</span>, mode<span class="op">=</span><span class="st">"lines"</span>, line<span class="op">=</span><span class="fu">Config</span>(width<span class="op">=</span><span class="fl">5</span>))]</span>
<span id="cb13-4"><a href="#cb13-4" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb13-5"><a href="#cb13-5" aria-hidden="true" tabindex="-1"></a>ds <span class="op">=</span> <span class="fu">filter</span>(d <span class="op">-&gt;</span> !<span class="fu">isnothing</span>(<span class="fu">get</span>(d, <span class="op">:</span>x, <span class="cn">nothing</span>)), p.data)</span>
<span id="cb13-6"><a href="#cb13-6" aria-hidden="true" tabindex="-1"></a>a<span class="op">=</span><span class="fu">reduce</span>(min, [<span class="fu">minimum</span>(d.x) for d <span class="op"></span> ds]; init<span class="op">=</span><span class="cn">Inf</span>)</span>
<span id="cb13-7"><a href="#cb13-7" aria-hidden="true" tabindex="-1"></a>b<span class="op">=</span><span class="fu">reduce</span>(max, [<span class="fu">maximum</span>(d.x) for d <span class="op"></span> ds]; init<span class="op">=-</span><span class="cn">Inf</span>)</span>
<span id="cb13-8"><a href="#cb13-8" aria-hidden="true" tabindex="-1"></a>(a, b)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="12">
<pre><code>(0.0, 2.0)</code></pre>
</div>
</div>
</section>
</section>
<section id="interactivity" class="level2" data-number="64.5">
<h2 data-number="64.5" class="anchored" data-anchor-id="interactivity"><span class="header-section-number">64.5</span> Interactivity</h2>
<p><code>JavaScript</code> allows interaction with a plot as it is presented within a browser. (Not the <code>Julia</code> process which produced the data or the plot. For that interaction, <code>PlotlyJS</code> may be used.) The basic <em>default</em> features are:</p>
<ul>
<li>The data producing a graphic are displayed on hover using flags.</li>
<li>The legend may be clicked to toggle whether the corresponding graph is displayed.</li>
<li>The viewing region can be narrowed using the mouse for selection.</li>
<li>The toolbar has several features for panning and zooming, as well as adjusting the information shown on hover.</li>
</ul>
<p>Later we will see that <span class="math inline">\(3\)</span>-dimensional surfaces can be rotated interactively.</p>
</section>
<section id="plot-attributes" class="level2" data-number="64.6">
<h2 data-number="64.6" class="anchored" data-anchor-id="plot-attributes"><span class="header-section-number">64.6</span> Plot attributes</h2>
<p>Attributes of the markers and lines may be adjusted when the data configuration is specified. A selection is shown below. Consult the reference for the extensive list.</p>
<section id="marker-attributes" class="level3" data-number="64.6.1">
<h3 data-number="64.6.1" class="anchored" data-anchor-id="marker-attributes"><span class="header-section-number">64.6.1</span> Marker attributes</h3>
<p>A markers attributes can be adjusted by values passed to the <code>marker</code> key. Labels for each marker can be assigned through a <code>text</code> key and adding <code>text</code> to the <code>mode</code> key. For example:</p>
<div class="cell" data-hold="true" data-execution_count="13">
<div class="sourceCode cell-code" id="cb15"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb15-1"><a href="#cb15-1" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span>,</span>
<span id="cb15-2"><a href="#cb15-2" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fu">rand</span>(<span class="fl">5</span>),</span>
<span id="cb15-3"><a href="#cb15-3" aria-hidden="true" tabindex="-1"></a> mode<span class="op">=</span><span class="st">"markers+text"</span>,</span>
<span id="cb15-4"><a href="#cb15-4" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>,</span>
<span id="cb15-5"><a href="#cb15-5" aria-hidden="true" tabindex="-1"></a> name<span class="op">=</span><span class="st">"scatter plot"</span>,</span>
<span id="cb15-6"><a href="#cb15-6" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> [<span class="st">"marker </span><span class="sc">$</span>i<span class="st">"</span> for i <span class="kw">in</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span>],</span>
<span id="cb15-7"><a href="#cb15-7" aria-hidden="true" tabindex="-1"></a> textposition <span class="op">=</span> <span class="st">"top center"</span>,</span>
<span id="cb15-8"><a href="#cb15-8" aria-hidden="true" tabindex="-1"></a> marker <span class="op">=</span> <span class="fu">Config</span>(size<span class="op">=</span><span class="fl">12</span>, color<span class="op">=:</span>blue)</span>
<span id="cb15-9"><a href="#cb15-9" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb15-10"><a href="#cb15-10" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="13">
<div class="" style="height: 100vh;" id="parent-of-YASTu8eMuh">
<div class="" style="height: 100%;" id="YASTu8eMuh"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("YASTu8eMuh", [{"x":[1,2,3,4,5],"y":[0.46396221347263245,0.6839014526318803,0.7600831795407749,0.3781234402341026,0.9925917511096544],"mode":"markers+text","type":"scatter","name":"scatter plot","text":["marker 1","marker 2","marker 3","marker 4","marker 5"],"textposition":"top center","marker":{"size":12,"color":"blue"}}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The <code>text</code> mode specification is necessary to have text be displayed on the chart, and not just appear on hover. The <code>size</code> and <code>color</code> attributes are recycled; they can be specified using a vector for per-marker styling. Here the symbol <code>:blue</code> is used to specify a color, which could also be a name, such as <code>"blue"</code>.</p>
<section id="rgb-colors" class="level4">
<h4 class="anchored" data-anchor-id="rgb-colors">RGB Colors</h4>
<p>The <code>ColorTypes</code> package is the standard <code>Julia</code> package providing an <code>RGB</code> type (among others) for specifying red-green-blue colors. To make this work with <code>Config</code> and <code>JSON3</code> requires some type-piracy (modifying <code>Base.string</code> for the <code>RGB</code> type) to get, say, <code>RGB(0.5, 0.5, 0.5)</code> to output as <code>"rgb(0.5, 0.5, 0.5)"</code>. (RGB values in JavaScript are integers between <span class="math inline">\(0\)</span> and <span class="math inline">\(255\)</span> or floating point values between <span class="math inline">\(0\)</span> and <span class="math inline">\(1\)</span>.) A string with this content can be specified. Otherwise, something like the following can be used to avoid the type piracy:</p>
<div class="sourceCode cell-code" id="cb16"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb16-1"><a href="#cb16-1" aria-hidden="true" tabindex="-1"></a><span class="kw">struct</span> rgb</span>
<span id="cb16-2"><a href="#cb16-2" aria-hidden="true" tabindex="-1"></a> r</span>
<span id="cb16-3"><a href="#cb16-3" aria-hidden="true" tabindex="-1"></a> g</span>
<span id="cb16-4"><a href="#cb16-4" aria-hidden="true" tabindex="-1"></a> b</span>
<span id="cb16-5"><a href="#cb16-5" aria-hidden="true" tabindex="-1"></a><span class="kw">end</span></span>
<span id="cb16-6"><a href="#cb16-6" aria-hidden="true" tabindex="-1"></a>PlotlyLight.JSON3.StructTypes.<span class="fu">StructType</span>(<span class="op">::</span><span class="dt">Type{rgb}</span>) <span class="op">=</span> PlotlyLight.JSON3.StructTypes.<span class="fu">StringType</span>()</span>
<span id="cb16-7"><a href="#cb16-7" aria-hidden="true" tabindex="-1"></a><span class="bu">Base</span>.<span class="fu">string</span>(x<span class="op">::</span><span class="dt">rgb</span>) <span class="op">=</span> <span class="st">"rgb(</span><span class="sc">$</span>(x.r)<span class="st">, </span><span class="sc">$</span>(x.g)<span class="st">, </span><span class="sc">$</span>(x.b)<span class="st">)"</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<p>With these defined, red-green-blue values can be used for colors. For example to give a range of colors, we might have:</p>
<div class="cell" data-hold="true" data-execution_count="15">
<div class="sourceCode cell-code" id="cb17"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb17-1"><a href="#cb17-1" aria-hidden="true" tabindex="-1"></a>cols <span class="op">=</span> [<span class="fu">rgb</span>(i,i,i) for i <span class="kw">in</span> <span class="fu">range</span>(<span class="fl">10</span>, <span class="fl">245</span>, length<span class="op">=</span><span class="fl">5</span>)]</span>
<span id="cb17-2"><a href="#cb17-2" aria-hidden="true" tabindex="-1"></a>sizes <span class="op">=</span> [<span class="fl">12</span>, <span class="fl">16</span>, <span class="fl">20</span>, <span class="fl">24</span>, <span class="fl">28</span>]</span>
<span id="cb17-3"><a href="#cb17-3" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span>,</span>
<span id="cb17-4"><a href="#cb17-4" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fu">rand</span>(<span class="fl">5</span>),</span>
<span id="cb17-5"><a href="#cb17-5" aria-hidden="true" tabindex="-1"></a> mode<span class="op">=</span><span class="st">"markers+text"</span>,</span>
<span id="cb17-6"><a href="#cb17-6" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>,</span>
<span id="cb17-7"><a href="#cb17-7" aria-hidden="true" tabindex="-1"></a> name<span class="op">=</span><span class="st">"scatter plot"</span>,</span>
<span id="cb17-8"><a href="#cb17-8" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> [<span class="st">"marker </span><span class="sc">$</span>i<span class="st">"</span> for i <span class="kw">in</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span>],</span>
<span id="cb17-9"><a href="#cb17-9" aria-hidden="true" tabindex="-1"></a> textposition <span class="op">=</span> <span class="st">"top center"</span>,</span>
<span id="cb17-10"><a href="#cb17-10" aria-hidden="true" tabindex="-1"></a> marker <span class="op">=</span> <span class="fu">Config</span>(size<span class="op">=</span>sizes, color<span class="op">=</span>cols)</span>
<span id="cb17-11"><a href="#cb17-11" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb17-12"><a href="#cb17-12" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="15">
<div class="" style="height: 100vh;" id="parent-of-jex0O1ttAT">
<div class="" style="height: 100%;" id="jex0O1ttAT"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("jex0O1ttAT", [{"x":[1,2,3,4,5],"y":[0.9337516203554865,0.6353104650362398,0.07607618235283375,0.6447745052058326,0.6477262192320432],"mode":"markers+text","type":"scatter","name":"scatter plot","text":["marker 1","marker 2","marker 3","marker 4","marker 5"],"textposition":"top center","marker":{"size":[12,16,20,24,28],"color":["rgb(10.0, 10.0, 10.0)","rgb(68.75, 68.75, 68.75)","rgb(127.5, 127.5, 127.5)","rgb(186.25, 186.25, 186.25)","rgb(245.0, 245.0, 245.0)"]}}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The <code>opacity</code> key can be used to control the transparency, with a value between <span class="math inline">\(0\)</span> and <span class="math inline">\(1\)</span>.</p>
</section>
<section id="marker-symbols" class="level4">
<h4 class="anchored" data-anchor-id="marker-symbols">Marker symbols</h4>
<p>The <code>marker_symbol</code> key can be used to set a marker shape, with the basic values being: <code>circle</code>, <code>square</code>, <code>diamond</code>, <code>cross</code>, <code>x</code>, <code>triangle</code>, <code>pentagon</code>, <code>hexagram</code>, <code>star</code>, <code>diamond</code>, <code>hourglass</code>, <code>bowtie</code>, <code>asterisk</code>, <code>hash</code>, <code>y</code>, and <code>line</code>. Add <code>-open</code> or <code>-open-dot</code> modifies the basic shape.</p>
<div class="cell" data-hold="true" data-execution_count="16">
<div class="sourceCode cell-code" id="cb18"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb18-1"><a href="#cb18-1" aria-hidden="true" tabindex="-1"></a>markers <span class="op">=</span> [<span class="st">"circle"</span>, <span class="st">"square"</span>, <span class="st">"diamond"</span>, <span class="st">"cross"</span>, <span class="st">"x"</span>, <span class="st">"triangle"</span>, <span class="st">"pentagon"</span>,</span>
<span id="cb18-2"><a href="#cb18-2" aria-hidden="true" tabindex="-1"></a> <span class="st">"hexagram"</span>, <span class="st">"star"</span>, <span class="st">"diamond"</span>, <span class="st">"hourglass"</span>, <span class="st">"bowtie"</span>, <span class="st">"asterisk"</span>,</span>
<span id="cb18-3"><a href="#cb18-3" aria-hidden="true" tabindex="-1"></a> <span class="st">"hash"</span>, <span class="st">"y"</span>, <span class="st">"line"</span>]</span>
<span id="cb18-4"><a href="#cb18-4" aria-hidden="true" tabindex="-1"></a>n <span class="op">=</span> <span class="fu">length</span>(markers)</span>
<span id="cb18-5"><a href="#cb18-5" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> [<span class="fu">Config</span>(x<span class="op">=</span><span class="fl">1</span><span class="op">:</span>n, y<span class="op">=</span><span class="fl">1</span><span class="op">:</span>n, mode<span class="op">=</span><span class="st">"markers"</span>,</span>
<span id="cb18-6"><a href="#cb18-6" aria-hidden="true" tabindex="-1"></a> marker <span class="op">=</span> <span class="fu">Config</span>(symbol<span class="op">=</span>markers, size<span class="op">=</span><span class="fl">10</span>)),</span>
<span id="cb18-7"><a href="#cb18-7" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x<span class="op">=</span><span class="fl">1</span><span class="op">:</span>n, y<span class="op">=</span><span class="fl">2</span> <span class="op">.+</span> (<span class="fl">1</span><span class="op">:</span>n), mode<span class="op">=</span><span class="st">"markers"</span>,</span>
<span id="cb18-8"><a href="#cb18-8" aria-hidden="true" tabindex="-1"></a> marker <span class="op">=</span> <span class="fu">Config</span>(symbol<span class="op">=</span>markers <span class="op">.*</span> <span class="st">"-open"</span>, size<span class="op">=</span><span class="fl">10</span>)),</span>
<span id="cb18-9"><a href="#cb18-9" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x<span class="op">=</span><span class="fl">1</span><span class="op">:</span>n, y<span class="op">=</span><span class="fl">4</span> <span class="op">.+</span> (<span class="fl">1</span><span class="op">:</span>n), mode<span class="op">=</span><span class="st">"markers"</span>,</span>
<span id="cb18-10"><a href="#cb18-10" aria-hidden="true" tabindex="-1"></a> marker <span class="op">=</span> <span class="fu">Config</span>(symbol<span class="op">=</span>markers <span class="op">.*</span> <span class="st">"-open-dot"</span>, size<span class="op">=</span><span class="fl">10</span>))</span>
<span id="cb18-11"><a href="#cb18-11" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb18-12"><a href="#cb18-12" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="16">
<div class="" style="height: 100vh;" id="parent-of-NSiU8ZL89t">
<div class="" style="height: 100%;" id="NSiU8ZL89t"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("NSiU8ZL89t", [{"x":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],"y":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],"mode":"markers","marker":{"symbol":["circle","square","diamond","cross","x","triangle","pentagon","hexagram","star","diamond","hourglass","bowtie","asterisk","hash","y","line"],"size":10}},{"x":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],"y":[3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],"mode":"markers","marker":{"symbol":["circle-open","square-open","diamond-open","cross-open","x-open","triangle-open","pentagon-open","hexagram-open","star-open","diamond-open","hourglass-open","bowtie-open","asterisk-open","hash-open","y-open","line-open"],"size":10}},{"x":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],"y":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],"mode":"markers","marker":{"symbol":["circle-open-dot","square-open-dot","diamond-open-dot","cross-open-dot","x-open-dot","triangle-open-dot","pentagon-open-dot","hexagram-open-dot","star-open-dot","diamond-open-dot","hourglass-open-dot","bowtie-open-dot","asterisk-open-dot","hash-open-dot","y-open-dot","line-open-dot"],"size":10}}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
</section>
</section>
<section id="line-attributes" class="level3" data-number="64.6.2">
<h3 data-number="64.6.2" class="anchored" data-anchor-id="line-attributes"><span class="header-section-number">64.6.2</span> Line attributes</h3>
<p>The <code>line</code> key can be used to specify line attributes, such as <code>width</code> (pixel width), <code>color</code>, or <code>dash</code>.</p>
<p>The <code>width</code> key specifies the line width in pixels.</p>
<p>The <code>color</code> key specifies the color of the line drawn.</p>
<p>The <code>dash</code> key specifies the style for the drawn line. Values can be set by string from “solid”, “dot”, “dash”, “longdash”, “dashdot”, or “longdashdot” or set by specifying a pattern in pixels, e.g.&nbsp;“5px,10px,2px,2px”.</p>
<p>The <code>shape</code> attribute determine how the points are connected. The default is <code>linear</code>, but other possibilities are <code>hv</code>, <code>vh</code>, <code>hvh</code>, <code>vhv</code>, <code>spline</code> for various patterns of connectivity. The following example, from the plotly documentation, shows the differences:</p>
<div class="cell" data-hold="true" data-execution_count="17">
<div class="sourceCode cell-code" id="cb19"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb19-1"><a href="#cb19-1" aria-hidden="true" tabindex="-1"></a>shapes <span class="op">=</span> [<span class="st">"linear"</span>, <span class="st">"hv"</span>, <span class="st">"vh"</span>, <span class="st">"hvh"</span>, <span class="st">"vhv"</span>, <span class="st">"spline"</span>]</span>
<span id="cb19-2"><a href="#cb19-2" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> [<span class="fu">Config</span>(x <span class="op">=</span> <span class="fl">1</span><span class="op">:</span><span class="fl">5</span>, y <span class="op">=</span> <span class="fl">5</span><span class="fu">*</span>(i<span class="op">-</span><span class="fl">1</span>) <span class="op">.+</span> [<span class="fl">1</span>,<span class="fl">3</span>,<span class="fl">2</span>,<span class="fl">3</span>,<span class="fl">1</span>], mode<span class="op">=</span><span class="st">"lines+markers"</span>, type<span class="op">=</span><span class="st">"scatter"</span>,</span>
<span id="cb19-3"><a href="#cb19-3" aria-hidden="true" tabindex="-1"></a> name<span class="op">=</span>shape,</span>
<span id="cb19-4"><a href="#cb19-4" aria-hidden="true" tabindex="-1"></a> line<span class="op">=</span><span class="fu">Config</span>(shape<span class="op">=</span>shape)</span>
<span id="cb19-5"><a href="#cb19-5" aria-hidden="true" tabindex="-1"></a> ) for (i, shape) <span class="op"></span> <span class="fu">enumerate</span>(shapes)]</span>
<span id="cb19-6"><a href="#cb19-6" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="17">
<div class="" style="height: 100vh;" id="parent-of-q8heNOIVyB">
<div class="" style="height: 100%;" id="q8heNOIVyB"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("q8heNOIVyB", [{"x":[1,2,3,4,5],"y":[1,3,2,3,1],"mode":"lines+markers","type":"scatter","name":"linear","line":{"shape":"linear"}},{"x":[1,2,3,4,5],"y":[6,8,7,8,6],"mode":"lines+markers","type":"scatter","name":"hv","line":{"shape":"hv"}},{"x":[1,2,3,4,5],"y":[11,13,12,13,11],"mode":"lines+markers","type":"scatter","name":"vh","line":{"shape":"vh"}},{"x":[1,2,3,4,5],"y":[16,18,17,18,16],"mode":"lines+markers","type":"scatter","name":"hvh","line":{"shape":"hvh"}},{"x":[1,2,3,4,5],"y":[21,23,22,23,21],"mode":"lines+markers","type":"scatter","name":"vhv","line":{"shape":"vhv"}},{"x":[1,2,3,4,5],"y":[26,28,27,28,26],"mode":"lines+markers","type":"scatter","name":"spline","line":{"shape":"spline"}}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
</section>
<section id="text" class="level3" data-number="64.6.3">
<h3 data-number="64.6.3" class="anchored" data-anchor-id="text"><span class="header-section-number">64.6.3</span> Text</h3>
<p>The text associated with each point can be drawn on the chart, when “text” is included in the <code>mode</code> or shown on hover.</p>
<p>The onscreen text is passed to the <code>text</code> attribute. The <a href="https://plotly.com/javascript/reference/scatter/#scatter-texttemplate"><code>texttemplate</code></a> key can be used to format the text with details in the accompanying link.</p>
<p>Similarly, the <code>hovertext</code> key specifies the text shown on hover, with <a href="https://plotly.com/javascript/reference/scatter/#scatter-hovertemplate"><code>hovertemplate</code></a> used to format the displayed text.</p>
</section>
<section id="filled-regions" class="level3" data-number="64.6.4">
<h3 data-number="64.6.4" class="anchored" data-anchor-id="filled-regions"><span class="header-section-number">64.6.4</span> Filled regions</h3>
<p>The <code>fill</code> key for a chart of mode <code>line</code> specifies how the area around a chart should be colored, or filled. The specification are declarative, with values in “none”, “tozeroy”, “tozerox”, “tonexty”, “tonextx”, “toself”, and “tonext”. The value of “none” is the default, unless stacked traces are used.</p>
<p>In the following, to highlight the difference between <span class="math inline">\(f(x) = \cos(x)\)</span> and <span class="math inline">\(p(x) = 1 - x^2/2\)</span> the area from <span class="math inline">\(f\)</span> to the next <span class="math inline">\(y\)</span> is declared; for <span class="math inline">\(p\)</span>, the area to <span class="math inline">\(0\)</span> is declared.</p>
<div class="cell" data-hold="true" data-execution_count="18">
<div class="sourceCode cell-code" id="cb20"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb20-1"><a href="#cb20-1" aria-hidden="true" tabindex="-1"></a>xs <span class="op">=</span> <span class="fu">range</span>(<span class="op">-</span><span class="fl">1</span>, <span class="fl">1</span>, <span class="fl">100</span>)</span>
<span id="cb20-2"><a href="#cb20-2" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> [</span>
<span id="cb20-3"><a href="#cb20-3" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(</span>
<span id="cb20-4"><a href="#cb20-4" aria-hidden="true" tabindex="-1"></a> x<span class="op">=</span>xs, y<span class="op">=</span><span class="fu">cos</span>.(xs),</span>
<span id="cb20-5"><a href="#cb20-5" aria-hidden="true" tabindex="-1"></a> fill <span class="op">=</span> <span class="st">"tonexty"</span>,</span>
<span id="cb20-6"><a href="#cb20-6" aria-hidden="true" tabindex="-1"></a> fillcolor <span class="op">=</span> <span class="st">"rgba(0,0,255,0.25)"</span>, <span class="co"># to get transparency</span></span>
<span id="cb20-7"><a href="#cb20-7" aria-hidden="true" tabindex="-1"></a> line <span class="op">=</span> <span class="fu">Config</span>(color<span class="op">=:</span>blue)</span>
<span id="cb20-8"><a href="#cb20-8" aria-hidden="true" tabindex="-1"></a> ),</span>
<span id="cb20-9"><a href="#cb20-9" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(</span>
<span id="cb20-10"><a href="#cb20-10" aria-hidden="true" tabindex="-1"></a> x<span class="op">=</span>xs, y<span class="op">=</span>[<span class="fl">1</span> <span class="op">-</span> x<span class="op">^</span><span class="fl">2</span><span class="op">/</span><span class="fl">2</span> for x <span class="op"></span> xs ],</span>
<span id="cb20-11"><a href="#cb20-11" aria-hidden="true" tabindex="-1"></a> fill <span class="op">=</span> <span class="st">"tozeroy"</span>,</span>
<span id="cb20-12"><a href="#cb20-12" aria-hidden="true" tabindex="-1"></a> fillcolor <span class="op">=</span> <span class="st">"rgba(255,0,0,0.25)"</span>, <span class="co"># to get transparency</span></span>
<span id="cb20-13"><a href="#cb20-13" aria-hidden="true" tabindex="-1"></a> line <span class="op">=</span> <span class="fu">Config</span>(color<span class="op">=:</span>red)</span>
<span id="cb20-14"><a href="#cb20-14" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb20-15"><a href="#cb20-15" aria-hidden="true" tabindex="-1"></a>]</span>
<span id="cb20-16"><a href="#cb20-16" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="18">
<div class="" style="height: 100vh;" id="parent-of-xFNQt4nrXv">
<div class="" style="height: 100%;" id="xFNQt4nrXv"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("xFNQt4nrXv", [{"x":[-1.0,-0.9797979797979798,-0.9595959595959596,-0.9393939393939394,-0.9191919191919192,-0.898989898989899,-0.8787878787878788,-0.8585858585858586,-0.8383838383838383,-0.8181818181818182,-0.797979797979798,-0.7777777777777778,-0.7575757575757576,-0.7373737373737373,-0.7171717171717171,-0.696969696969697,-0.6767676767676768,-0.6565656565656566,-0.6363636363636364,-0.6161616161616161,-0.5959595959595959,-0.5757575757575758,-0.5555555555555556,-0.5353535353535354,-0.5151515151515151,-0.494949494949495,-0.47474747474747475,-0.45454545454545453,-0.43434343434343436,-0.41414141414141414,-0.3939393939393939,-0.37373737373737376,-0.35353535353535354,-0.3333333333333333,-0.31313131313131315,-0.29292929292929293,-0.2727272727272727,-0.25252525252525254,-0.23232323232323232,-0.21212121212121213,-0.1919191919191919,-0.1717171717171717,-0.15151515151515152,-0.13131313131313133,-0.1111111111111111,-0.09090909090909091,-0.0707070707070707,-0.050505050505050504,-0.030303030303030304,-0.010101010101010102,0.010101010101010102,0.030303030303030304,0.050505050505050504,0.0707070707070707,0.09090909090909091,0.1111111111111111,0.13131313131313133,0.15151515151515152,0.1717171717171717,0.1919191919191919,0.21212121212121213,0.23232323232323232,0.25252525252525254,0.2727272727272727,0.29292929292929293,0.31313131313131315,0.3333333333333333,0.35353535353535354,0.37373737373737376,0.3939393939393939,0.41414141414141414,0.43434343434343436,0.45454545454545453,0.47474747474747475,0.494949494949495,0.5151515151515151,0.5353535353535354,0.5555555555555556,0.5757575757575758,0.5959595959595959,0.6161616161616161,0.6363636363636364,0.6565656565656566,0.6767676767676768,0.696969696969697,0.7171717171717171,0.7373737373737373,0.7575757575757576,0.7777777777777778,0.797979797979798,0.8181818181818182,0.8383838383838383,0.8585858585858586,0.8787878787878788,0.898989898989899,0.9191919191919192,0.9393939393939394,0.9595959595959596,0.9797979797979798,1.0],"y":[0.5403023058681398,0.557190312644993,0.5738509257425135,0.5902773458355403,0.6064628691748903,0.6224008903232104,0.6380849048507069,0.6535085119896544,0.6686654172465984,0.6835494349711865,0.6981544908805807,0.7124746245384189,0.7265039917873153,0.7402368671339058,0.7536676460854671,0.7667908474371524,0.7796011155089148,0.7920932223312003,0.804262069778524,0.8161026916500538,0.8276102556963556,0.8387800655914717,0.8496075628495278,0.8600883286850863,0.870218085816487,0.8799927002114384,0.8894081827741491,0.8984606909733078,0.9071465304102505,0.9154621563266734,0.9234041750512755,0.9309693453847429,0.9381545799225068,0.9449569463147377,0.9513736684630593,0.9574021276534964,0.9630398636251922,0.9682845755744598,0.9731341230937576,0.9775865270452068,0.9816399703682924,0.9852927988214202,0.9885435216570246,0.9913908122299557,0.993833508538892,0.9958706137005628,0.9975012963565844,0.9987248910127429,0.9995408983105885,0.9999489852312267,0.9999489852312267,0.9995408983105885,0.9987248910127429,0.9975012963565844,0.9958706137005628,0.993833508538892,0.9913908122299557,0.9885435216570246,0.9852927988214202,0.9816399703682924,0.9775865270452068,0.9731341230937576,0.9682845755744598,0.9630398636251922,0.9574021276534964,0.9513736684630593,0.9449569463147377,0.9381545799225068,0.9309693453847429,0.9234041750512755,0.9154621563266734,0.9071465304102505,0.8984606909733078,0.8894081827741491,0.8799927002114384,0.870218085816487,0.8600883286850863,0.8496075628495278,0.8387800655914717,0.8276102556963556,0.8161026916500538,0.804262069778524,0.7920932223312003,0.7796011155089148,0.7667908474371524,0.7536676460854671,0.7402368671339058,0.7265039917873153,0.7124746245384189,0.6981544908805807,0.6835494349711865,0.6686654172465984,0.6535085119896544,0.6380849048507069,0.6224008903232104,0.6064628691748903,0.5902773458355403,0.5738509257425135,0.557190312644993,0.5403023058681398],"fill":"tonexty","fillcolor":"rgba(0,0,255,0.25)","line":{"color":"blue"}},{"x":[-1.0,-0.9797979797979798,-0.9595959595959596,-0.9393939393939394,-0.9191919191919192,-0.898989898989899,-0.8787878787878788,-0.8585858585858586,-0.8383838383838383,-0.8181818181818182,-0.797979797979798,-0.7777777777777778,-0.7575757575757576,-0.7373737373737373,-0.7171717171717171,-0.696969696969697,-0.6767676767676768,-0.6565656565656566,-0.6363636363636364,-0.6161616161616161,-0.5959595959595959,-0.5757575757575758,-0.5555555555555556,-0.5353535353535354,-0.5151515151515151,-0.494949494949495,-0.47474747474747475,-0.45454545454545453,-0.43434343434343436,-0.41414141414141414,-0.3939393939393939,-0.37373737373737376,-0.35353535353535354,-0.3333333333333333,-0.31313131313131315,-0.29292929292929293,-0.2727272727272727,-0.25252525252525254,-0.23232323232323232,-0.21212121212121213,-0.1919191919191919,-0.1717171717171717,-0.15151515151515152,-0.13131313131313133,-0.1111111111111111,-0.09090909090909091,-0.0707070707070707,-0.050505050505050504,-0.030303030303030304,-0.010101010101010102,0.010101010101010102,0.030303030303030304,0.050505050505050504,0.0707070707070707,0.09090909090909091,0.1111111111111111,0.13131313131313133,0.15151515151515152,0.1717171717171717,0.1919191919191919,0.21212121212121213,0.23232323232323232,0.25252525252525254,0.2727272727272727,0.29292929292929293,0.31313131313131315,0.3333333333333333,0.35353535353535354,0.37373737373737376,0.3939393939393939,0.41414141414141414,0.43434343434343436,0.45454545454545453,0.47474747474747475,0.494949494949495,0.5151515151515151,0.5353535353535354,0.5555555555555556,0.5757575757575758,0.5959595959595959,0.6161616161616161,0.6363636363636364,0.6565656565656566,0.6767676767676768,0.696969696969697,0.7171717171717171,0.7373737373737373,0.7575757575757576,0.7777777777777778,0.797979797979798,0.8181818181818182,0.8383838383838383,0.8585858585858586,0.8787878787878788,0.898989898989899,0.9191919191919192,0.9393939393939394,0.9595959595959596,0.9797979797979798,1.0],"y":[0.5,0.5199979593918989,0.5395877971635548,0.5587695133149678,0.5775431078461382,0.5959085807570657,0.6138659320477502,0.631415161718192,0.6485562697683911,0.665289256198347,0.6816141210080604,0.6975308641975309,0.7130394857667586,0.7281399857157433,0.7428323640444853,0.7571166207529844,0.7709927558412406,0.7844607693092541,0.7975206611570248,0.8101724313845526,0.8224160799918376,0.8342516069788797,0.845679012345679,0.8566982960922355,0.8673094582185491,0.8775124987246199,0.887307417610448,0.8966942148760331,0.9056728905213753,0.9142434445464749,0.9224058769513315,0.9301601877359453,0.9375063769003162,0.9444444444444444,0.9509743903683298,0.9570962146719723,0.9628099173553719,0.9681154984185287,0.9730129578614427,0.9775022956841138,0.9815835118865421,0.9852566064687277,0.9885215794306703,0.9913784307723702,0.9938271604938271,0.9958677685950413,0.9975002550760127,0.9987246199367411,0.9995408631772268,0.9999489847974696,0.9999489847974696,0.9995408631772268,0.9987246199367411,0.9975002550760127,0.9958677685950413,0.9938271604938271,0.9913784307723702,0.9885215794306703,0.9852566064687277,0.9815835118865421,0.9775022956841138,0.9730129578614427,0.9681154984185287,0.9628099173553719,0.9570962146719723,0.9509743903683298,0.9444444444444444,0.9375063769003162,0.9301601877359453,0.9224058769513315,0.9142434445464749,0.9056728905213753,0.8966942148760331,0.887307417610448,0.8775124987246199,0.8673094582185491,0.8566982960922355,0.845679012345679,0.8342516069788797,0.8224160799918376,0.8101724313845526,0.7975206611570248,0.7844607693092541,0.7709927558412406,0.7571166207529844,0.7428323640444853,0.7281399857157433,0.7130394857667586,0.6975308641975309,0.6816141210080604,0.665289256198347,0.6485562697683911,0.631415161718192,0.6138659320477502,0.5959085807570657,0.5775431078461382,0.5587695133149678,0.5395877971635548,0.5199979593918989,0.5],"fill":"tozeroy","fillcolor":"rgba(255,0,0,0.25)","line":{"color":"red"}}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The <code>toself</code> declaration is used below to fill in a polygon:</p>
<div class="cell" data-hold="true" data-execution_count="19">
<div class="sourceCode cell-code" id="cb21"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb21-1"><a href="#cb21-1" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(</span>
<span id="cb21-2"><a href="#cb21-2" aria-hidden="true" tabindex="-1"></a> x<span class="op">=</span>[<span class="op">-</span><span class="fl">1</span>,<span class="fl">1</span>,<span class="fl">1</span>,<span class="op">-</span><span class="fl">1</span>,<span class="op">-</span><span class="fl">1</span>], y <span class="op">=</span> [<span class="op">-</span><span class="fl">1</span>,<span class="fl">1</span>,<span class="op">-</span><span class="fl">1</span>,<span class="fl">1</span>,<span class="op">-</span><span class="fl">1</span>],</span>
<span id="cb21-3"><a href="#cb21-3" aria-hidden="true" tabindex="-1"></a> fill<span class="op">=</span><span class="st">"toself"</span>,</span>
<span id="cb21-4"><a href="#cb21-4" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>)</span>
<span id="cb21-5"><a href="#cb21-5" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="19">
<div class="" style="height: 100vh;" id="parent-of-Blz82T3Qfp">
<div class="" style="height: 100%;" id="Blz82T3Qfp"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("Blz82T3Qfp", [{"x":[-1,1,1,-1,-1],"y":[-1,1,-1,1,-1],"fill":"toself","type":"scatter"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
</section>
</section>
<section id="layout-attributes" class="level2" data-number="64.7">
<h2 data-number="64.7" class="anchored" data-anchor-id="layout-attributes"><span class="header-section-number">64.7</span> Layout attributes</h2>
<p>The <code>title</code> key sets the main title; the <code>title</code> key in the <code>xaxis</code> configuration sets the <span class="math inline">\(x\)</span>-axis title (similarly for the <span class="math inline">\(y\)</span> axis).</p>
<p>The legend is shown when <span class="math inline">\(2\)</span> or more charts or specified, by default. This can be adjusted with the <code>showlegend</code> key, as below. The legend shows the corresponding <code>name</code> for each chart.</p>
<div class="cell" data-hold="true" data-execution_count="20">
<div class="sourceCode cell-code" id="cb22"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb22-1"><a href="#cb22-1" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x<span class="op">=</span><span class="fl">1</span><span class="op">:</span><span class="fl">5</span>, y<span class="op">=</span><span class="fu">rand</span>(<span class="fl">5</span>), <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>, mode<span class="op">=</span><span class="st">"markers"</span>, name<span class="op">=</span><span class="st">"legend label"</span>)</span>
<span id="cb22-2"><a href="#cb22-2" aria-hidden="true" tabindex="-1"></a>lyt <span class="op">=</span> <span class="fu">Config</span>(title <span class="op">=</span> <span class="st">"Main chart title"</span>,</span>
<span id="cb22-3"><a href="#cb22-3" aria-hidden="true" tabindex="-1"></a> xaxis <span class="op">=</span> <span class="fu">Config</span>(title<span class="op">=</span><span class="st">"x-axis label"</span>),</span>
<span id="cb22-4"><a href="#cb22-4" aria-hidden="true" tabindex="-1"></a> yaxis <span class="op">=</span> <span class="fu">Config</span>(title<span class="op">=</span><span class="st">"y-axis label"</span>),</span>
<span id="cb22-5"><a href="#cb22-5" aria-hidden="true" tabindex="-1"></a> showlegend<span class="op">=</span><span class="cn">true</span></span>
<span id="cb22-6"><a href="#cb22-6" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb22-7"><a href="#cb22-7" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data, lyt)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="20">
<div class="" style="height: 100vh;" id="parent-of-NfKsGS0q9S">
<div class="" style="height: 100%;" id="NfKsGS0q9S"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("NfKsGS0q9S", [{"x":[1,2,3,4,5],"y":[0.27270079765196975,0.6343681153863473,0.4393107554878568,0.31423013074811135,0.8348552386626773],"type":"scatter","mode":"markers","name":"legend label"}], {"showlegend":true,"xaxis":{"title":"x-axis label"},"title":"Main chart title","yaxis":{"title":"y-axis label"}}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The <code>xaxis</code> and <code>yaxis</code> keys have many customizations. For example: <code>nticks</code> specifies the maximum number of ticks; <code>range</code> to set the range of the axis; <code>type</code> to specify the axis type from “linear”, “log”, “date”, “category”, or “multicategory;” and <code>visible</code></p>
<p>The aspect ratio of the chart can be set to be equal through the <code>scaleanchor</code> key, which specifies another axis to take a value from. For example, here is a parametric plot of a circle:</p>
<div class="cell" data-hold="true" data-execution_count="21">
<div class="sourceCode cell-code" id="cb23"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb23-1"><a href="#cb23-1" aria-hidden="true" tabindex="-1"></a>ts <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>, <span class="fl">2</span>pi, length<span class="op">=</span><span class="fl">100</span>)</span>
<span id="cb23-2"><a href="#cb23-2" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fu">sin</span>.(ts), y <span class="op">=</span> <span class="fu">cos</span>.(ts), mode<span class="op">=</span><span class="st">"lines"</span>, <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>)</span>
<span id="cb23-3"><a href="#cb23-3" aria-hidden="true" tabindex="-1"></a>lyt <span class="op">=</span> <span class="fu">Config</span>(title <span class="op">=</span> <span class="st">"A circle"</span>,</span>
<span id="cb23-4"><a href="#cb23-4" aria-hidden="true" tabindex="-1"></a> xaxis <span class="op">=</span> <span class="fu">Config</span>(title <span class="op">=</span> <span class="st">"x"</span>),</span>
<span id="cb23-5"><a href="#cb23-5" aria-hidden="true" tabindex="-1"></a> yaxis <span class="op">=</span> <span class="fu">Config</span>(title <span class="op">=</span> <span class="st">"y"</span>,</span>
<span id="cb23-6"><a href="#cb23-6" aria-hidden="true" tabindex="-1"></a> scaleanchor <span class="op">=</span> <span class="st">"x"</span>)</span>
<span id="cb23-7"><a href="#cb23-7" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb23-8"><a href="#cb23-8" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data, lyt)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="21">
<div class="" style="height: 100vh;" id="parent-of-HoFdJDMcUN">
<div class="" style="height: 100%;" id="HoFdJDMcUN"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("HoFdJDMcUN", [{"x":[0.0,0.0634239196565645,0.12659245357374926,0.1892512443604102,0.2511479871810792,0.31203344569848707,0.3716624556603275,0.4297949120891716,0.4861967361004687,0.5406408174555976,0.5929079290546404,0.6427876096865393,0.6900790114821119,0.7345917086575332,0.7761464642917568,0.8145759520503357,0.8497254299495144,0.8814533634475821,0.9096319953545183,0.9341478602651067,0.9549022414440739,0.9718115683235417,0.984807753012208,0.9938384644612541,0.998867339183008,0.9998741276738751,0.9968547759519424,0.9898214418809328,0.9788024462147787,0.9638421585599422,0.9450008187146685,0.9223542941045814,0.8959937742913359,0.8660254037844387,0.8325698546347714,0.7957618405308323,0.7557495743542583,0.712694171378863,0.6667690005162916,0.6181589862206055,0.5670598638627709,0.5136773915734063,0.4582265217274105,0.4009305354066136,0.3420201433256689,0.28173255684142967,0.2203105327865408,0.1580013959733499,0.09505604330418288,0.031727933498067656,-0.031727933498067414,-0.09505604330418263,-0.15800139597334964,-0.22031053278654056,-0.2817325568414294,-0.34202014332566866,-0.4009305354066134,-0.4582265217274103,-0.5136773915734061,-0.5670598638627706,-0.6181589862206053,-0.6667690005162915,-0.7126941713788629,-0.7557495743542582,-0.7957618405308321,-0.8325698546347713,-0.8660254037844385,-0.895993774291336,-0.9223542941045814,-0.9450008187146683,-0.9638421585599419,-0.9788024462147787,-0.9898214418809327,-0.9968547759519423,-0.9998741276738751,-0.998867339183008,-0.9938384644612541,-0.9848077530122081,-0.9718115683235419,-0.9549022414440739,-0.9341478602651068,-0.9096319953545186,-0.881453363447582,-0.8497254299495144,-0.8145759520503358,-0.7761464642917572,-0.7345917086575331,-0.690079011482112,-0.6427876096865396,-0.5929079290546408,-0.5406408174555974,-0.4861967361004688,-0.4297949120891719,-0.3716624556603281,-0.31203344569848707,-0.2511479871810794,-0.18925124436041063,-0.12659245357374993,-0.06342391965656452,-2.4492935982947064e-16],"y":[1.0,0.9979866764718844,0.9919548128307953,0.9819286972627067,0.9679487013963562,0.9500711177409454,0.9283679330160726,0.9029265382866213,0.8738493770697849,0.8412535328311812,0.8052702575310586,0.766044443118978,0.7237340381050702,0.6785094115571322,0.6305526670845225,0.5800569095711982,0.5272254676105024,0.4722710747726827,0.41541501300188644,0.3568862215918719,0.2969203753282749,0.23575893550942728,0.17364817766693041,0.1108381999010111,0.0475819158237424,-0.015865963834807807,-0.07924995685678832,-0.142314838273285,-0.20480666806519052,-0.2664738136900348,-0.32706796331742166,-0.3863451256931287,-0.4440666126057741,-0.4999999999999998,-0.5539200638661103,-0.6056096871376665,-0.654860733945285,-0.701474887706321,-0.7452644496757547,-0.7860530947427873,-0.8236765814298327,-0.8579834132349771,-0.8888354486549234,-0.9161084574320696,-0.9396926207859083,-0.9594929736144974,-0.975429786885407,-0.9874388886763943,-0.9954719225730846,-0.9994965423831851,-0.9994965423831852,-0.9954719225730846,-0.9874388886763944,-0.975429786885407,-0.9594929736144975,-0.9396926207859084,-0.9161084574320697,-0.8888354486549235,-0.8579834132349772,-0.8236765814298328,-0.7860530947427874,-0.7452644496757548,-0.7014748877063213,-0.6548607339452852,-0.6056096871376666,-0.5539200638661105,-0.5000000000000004,-0.44406661260577396,-0.3863451256931287,-0.3270679633174219,-0.2664738136900355,-0.20480666806519054,-0.14231483827328523,-0.07924995685678879,-0.015865963834808497,0.04758191582374238,0.11083819990101086,0.17364817766692997,0.23575893550942661,0.2969203753282749,0.35688622159187167,0.41541501300188605,0.4722710747726829,0.5272254676105024,0.5800569095711979,0.6305526670845221,0.6785094115571323,0.7237340381050701,0.7660444431189778,0.8052702575310583,0.8412535328311812,0.8738493770697848,0.9029265382866211,0.9283679330160723,0.9500711177409454,0.9679487013963562,0.9819286972627066,0.9919548128307952,0.9979866764718844,1.0],"mode":"lines","type":"scatter"}], {"xaxis":{"title":"x"},"title":"A circle","yaxis":{"title":"y","scaleanchor":"x"}}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<section id="annotations" class="level4">
<h4 class="anchored" data-anchor-id="annotations">Annotations</h4>
<p>Text annotations may be specified as part of the layout object. Annotations may or may not show an arrow. Here is a simple example using a vector of annotations.</p>
<div class="cell" data-hold="true" data-execution_count="22">
<div class="sourceCode cell-code" id="cb24"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb24-1"><a href="#cb24-1" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x <span class="op">=</span> [<span class="fl">0</span>, <span class="fl">1</span>], y <span class="op">=</span> [<span class="fl">0</span>, <span class="fl">1</span>], mode<span class="op">=</span><span class="st">"markers"</span>, <span class="kw">type</span><span class="op">=</span><span class="st">"scatter"</span>)</span>
<span id="cb24-2"><a href="#cb24-2" aria-hidden="true" tabindex="-1"></a>layout <span class="op">=</span> <span class="fu">Config</span>(title <span class="op">=</span> <span class="st">"Annotations"</span>,</span>
<span id="cb24-3"><a href="#cb24-3" aria-hidden="true" tabindex="-1"></a> xaxis <span class="op">=</span> <span class="fu">Config</span>(title<span class="op">=</span><span class="st">"x"</span>,</span>
<span id="cb24-4"><a href="#cb24-4" aria-hidden="true" tabindex="-1"></a> range <span class="op">=</span> (<span class="op">-</span><span class="fl">0.5</span>, <span class="fl">1.5</span>)),</span>
<span id="cb24-5"><a href="#cb24-5" aria-hidden="true" tabindex="-1"></a> yaxis <span class="op">=</span> <span class="fu">Config</span>(title<span class="op">=</span><span class="st">"y"</span>,</span>
<span id="cb24-6"><a href="#cb24-6" aria-hidden="true" tabindex="-1"></a> range <span class="op">=</span> (<span class="op">-</span><span class="fl">0.5</span>, <span class="fl">1.5</span>)),</span>
<span id="cb24-7"><a href="#cb24-7" aria-hidden="true" tabindex="-1"></a> annotations <span class="op">=</span> [</span>
<span id="cb24-8"><a href="#cb24-8" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x<span class="op">=</span><span class="fl">0</span>, y<span class="op">=</span><span class="fl">0</span>, text <span class="op">=</span> <span class="st">"(0,0)"</span>),</span>
<span id="cb24-9"><a href="#cb24-9" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x<span class="op">=</span><span class="fl">1</span>, y<span class="op">=</span><span class="fl">1.2</span>, text <span class="op">=</span> <span class="st">"(1,1)"</span>, showarrow<span class="op">=</span><span class="cn">false</span>)</span>
<span id="cb24-10"><a href="#cb24-10" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb24-11"><a href="#cb24-11" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb24-12"><a href="#cb24-12" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data, layout)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="22">
<div class="" style="height: 100vh;" id="parent-of-QUNP1bIdTD">
<div class="" style="height: 100%;" id="QUNP1bIdTD"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("QUNP1bIdTD", [{"x":[0,1],"y":[0,1],"mode":"markers","type":"scatter"}], {"xaxis":{"title":"x","range":[-0.5,1.5]},"annotations":[{"x":0,"y":0,"text":"(0,0)"},{"x":1,"y":1.2,"text":"(1,1)","showarrow":false}],"title":"Annotations","yaxis":{"title":"y","range":[-0.5,1.5]}}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The following example is more complicated use of the elements previously described. It mimics an image from <a href="https://en.wikipedia.org/wiki/List_of_trigonometric_identities">Wikipedia</a> for trigonometric identities. The use of <span class="math inline">\(\LaTeX\)</span> does not seem to be supported through the <code>JavaScript</code> interface; unicode symbols are used instead. The <code>xanchor</code> and <code>yanchor</code> keys are used to position annotations away from the default. The <code>textangle</code> key is used to rotate text, as desired.</p>
<div class="cell" data-execution_count="23">
<div class="sourceCode cell-code" id="cb25"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb25-1"><a href="#cb25-1" aria-hidden="true" tabindex="-1"></a>alpha <span class="op">=</span> <span class="cn">pi</span><span class="op">/</span><span class="fl">6</span></span>
<span id="cb25-2"><a href="#cb25-2" aria-hidden="true" tabindex="-1"></a>beta <span class="op">=</span> <span class="cn">pi</span><span class="op">/</span><span class="fl">5</span></span>
<span id="cb25-3"><a href="#cb25-3" aria-hidden="true" tabindex="-1"></a>xₘ <span class="op">=</span> <span class="fu">cos</span>(alpha)<span class="fu">*cos</span>(beta)</span>
<span id="cb25-4"><a href="#cb25-4" aria-hidden="true" tabindex="-1"></a>yₘ <span class="op">=</span> <span class="fu">sin</span>(alpha<span class="op">+</span>beta)</span>
<span id="cb25-5"><a href="#cb25-5" aria-hidden="true" tabindex="-1"></a>r₀ <span class="op">=</span> <span class="fl">0.1</span></span>
<span id="cb25-6"><a href="#cb25-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-7"><a href="#cb25-7" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> [</span>
<span id="cb25-8"><a href="#cb25-8" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(</span>
<span id="cb25-9"><a href="#cb25-9" aria-hidden="true" tabindex="-1"></a> x <span class="op">=</span> [<span class="fl">0</span>,xₘ, xₘ, <span class="fl">0</span>, <span class="fl">0</span>],</span>
<span id="cb25-10"><a href="#cb25-10" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> [<span class="fl">0</span>, <span class="fl">0</span>, yₘ, yₘ, <span class="fl">0</span>],</span>
<span id="cb25-11"><a href="#cb25-11" aria-hidden="true" tabindex="-1"></a> type<span class="op">=</span><span class="st">"scatter"</span>, mode<span class="op">=</span><span class="st">"line"</span></span>
<span id="cb25-12"><a href="#cb25-12" aria-hidden="true" tabindex="-1"></a> ),</span>
<span id="cb25-13"><a href="#cb25-13" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(</span>
<span id="cb25-14"><a href="#cb25-14" aria-hidden="true" tabindex="-1"></a> x <span class="op">=</span> [<span class="fl">0</span>, xₘ],</span>
<span id="cb25-15"><a href="#cb25-15" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> [<span class="fl">0</span>, <span class="fu">sin</span>(alpha)<span class="fu">*cos</span>(beta)],</span>
<span id="cb25-16"><a href="#cb25-16" aria-hidden="true" tabindex="-1"></a> fill <span class="op">=</span> <span class="st">"tozeroy"</span>,</span>
<span id="cb25-17"><a href="#cb25-17" aria-hidden="true" tabindex="-1"></a> fillcolor <span class="op">=</span> <span class="st">"rgba(100, 100, 100, 0.5)"</span></span>
<span id="cb25-18"><a href="#cb25-18" aria-hidden="true" tabindex="-1"></a> ),</span>
<span id="cb25-19"><a href="#cb25-19" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(</span>
<span id="cb25-20"><a href="#cb25-20" aria-hidden="true" tabindex="-1"></a> x <span class="op">=</span> [<span class="fl">0</span>, <span class="fu">cos</span>(alpha<span class="op">+</span>beta), xₘ],</span>
<span id="cb25-21"><a href="#cb25-21" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> [<span class="fl">0</span>, yₘ, <span class="fu">sin</span>(alpha)<span class="fu">*cos</span>(beta)],</span>
<span id="cb25-22"><a href="#cb25-22" aria-hidden="true" tabindex="-1"></a> fill <span class="op">=</span> <span class="st">"tonexty"</span>,</span>
<span id="cb25-23"><a href="#cb25-23" aria-hidden="true" tabindex="-1"></a> fillcolor <span class="op">=</span> <span class="st">"rgba(200, 0, 100, 0.5)"</span>,</span>
<span id="cb25-24"><a href="#cb25-24" aria-hidden="true" tabindex="-1"></a> ),</span>
<span id="cb25-25"><a href="#cb25-25" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(</span>
<span id="cb25-26"><a href="#cb25-26" aria-hidden="true" tabindex="-1"></a> x <span class="op">=</span> [<span class="fl">0</span>, <span class="fu">cos</span>(alpha<span class="op">+</span>beta)],</span>
<span id="cb25-27"><a href="#cb25-27" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> [<span class="fl">0</span>, yₘ],</span>
<span id="cb25-28"><a href="#cb25-28" aria-hidden="true" tabindex="-1"></a> line <span class="op">=</span> <span class="fu">Config</span>(width<span class="op">=</span><span class="fl">5</span>, color<span class="op">=:</span>black)</span>
<span id="cb25-29"><a href="#cb25-29" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb25-30"><a href="#cb25-30" aria-hidden="true" tabindex="-1"></a>]</span>
<span id="cb25-31"><a href="#cb25-31" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-32"><a href="#cb25-32" aria-hidden="true" tabindex="-1"></a>lyt <span class="op">=</span> <span class="fu">Config</span>(</span>
<span id="cb25-33"><a href="#cb25-33" aria-hidden="true" tabindex="-1"></a> height<span class="op">=</span><span class="fl">450</span>,</span>
<span id="cb25-34"><a href="#cb25-34" aria-hidden="true" tabindex="-1"></a> showlegend<span class="op">=</span><span class="cn">false</span>,</span>
<span id="cb25-35"><a href="#cb25-35" aria-hidden="true" tabindex="-1"></a> xaxis<span class="op">=</span><span class="fu">Config</span>(visible<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-36"><a href="#cb25-36" aria-hidden="true" tabindex="-1"></a> yaxis <span class="op">=</span> <span class="fu">Config</span>(visible<span class="op">=</span><span class="cn">false</span>, scaleanchor<span class="op">=</span><span class="st">"x"</span>),</span>
<span id="cb25-37"><a href="#cb25-37" aria-hidden="true" tabindex="-1"></a> annotations <span class="op">=</span> [</span>
<span id="cb25-38"><a href="#cb25-38" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-39"><a href="#cb25-39" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fu">r₀*cos</span>(alpha<span class="op">/</span><span class="fl">2</span>), y <span class="op">=</span> <span class="fu">r₀*sin</span>(alpha<span class="op">/</span><span class="fl">2</span>),</span>
<span id="cb25-40"><a href="#cb25-40" aria-hidden="true" tabindex="-1"></a> text<span class="op">=</span><span class="st">"α"</span>, showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-41"><a href="#cb25-41" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fu">r₀*cos</span>(alpha<span class="op">+</span>beta<span class="op">/</span><span class="fl">2</span>), y <span class="op">=</span> <span class="fu">r₀*sin</span>(alpha<span class="op">+</span>beta<span class="op">/</span><span class="fl">2</span>),</span>
<span id="cb25-42"><a href="#cb25-42" aria-hidden="true" tabindex="-1"></a> text<span class="op">=</span><span class="st">"β"</span>, showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-43"><a href="#cb25-43" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fu">cos</span>(alpha<span class="op">+</span>beta) <span class="op">+</span> <span class="fu">r₀*cos</span>(<span class="fu">pi+</span>(alpha<span class="op">+</span>beta)<span class="op">/</span><span class="fl">2</span>),</span>
<span id="cb25-44"><a href="#cb25-44" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> yₘ <span class="op">+</span> <span class="fu">r₀*sin</span>(<span class="fu">pi+</span>(alpha<span class="op">+</span>beta)<span class="op">/</span><span class="fl">2</span>),</span>
<span id="cb25-45"><a href="#cb25-45" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"center"</span>, yanchor<span class="op">=</span><span class="st">"center"</span>,</span>
<span id="cb25-46"><a href="#cb25-46" aria-hidden="true" tabindex="-1"></a> text<span class="op">=</span><span class="st">"α+β"</span>, showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-47"><a href="#cb25-47" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> xₘ <span class="op">+</span> <span class="fu">r₀*cos</span>(<span class="cn">pi</span><span class="op">/</span><span class="fl">2</span><span class="op">+</span>alpha<span class="op">/</span><span class="fl">2</span>),</span>
<span id="cb25-48"><a href="#cb25-48" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fu">sin</span>(alpha)<span class="fu">*cos</span>(beta) <span class="op">+</span> r₀ <span class="op">*</span> <span class="fu">sin</span>(<span class="cn">pi</span><span class="op">/</span><span class="fl">2</span> <span class="op">+</span> alpha<span class="op">/</span><span class="fl">2</span>),</span>
<span id="cb25-49"><a href="#cb25-49" aria-hidden="true" tabindex="-1"></a> text<span class="op">=</span><span class="st">"α"</span>, showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-50"><a href="#cb25-50" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fl">1</span><span class="op">/</span><span class="fl">2</span> <span class="op">*</span> <span class="fu">cos</span>(alpha<span class="op">+</span>beta),</span>
<span id="cb25-51"><a href="#cb25-51" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fl">1</span><span class="op">/</span><span class="fl">2</span> <span class="op">*</span> <span class="fu">sin</span>(alpha<span class="op">+</span>beta),</span>
<span id="cb25-52"><a href="#cb25-52" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"1"</span>),</span>
<span id="cb25-53"><a href="#cb25-53" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> xₘ<span class="op">/</span><span class="fl">2</span><span class="fu">*cos</span>(alpha), y <span class="op">=</span> xₘ<span class="op">/</span><span class="fl">2</span><span class="fu">*sin</span>(alpha),</span>
<span id="cb25-54"><a href="#cb25-54" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"center"</span>, yanchor<span class="op">=</span><span class="st">"bottom"</span>,</span>
<span id="cb25-55"><a href="#cb25-55" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"cos(β)"</span>,</span>
<span id="cb25-56"><a href="#cb25-56" aria-hidden="true" tabindex="-1"></a> textangle<span class="op">=</span><span class="fu">-rad2deg</span>(alpha),</span>
<span id="cb25-57"><a href="#cb25-57" aria-hidden="true" tabindex="-1"></a> showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-58"><a href="#cb25-58" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> xₘ <span class="op">+</span> <span class="fu">sin</span>(beta)<span class="op">/</span><span class="fl">2</span><span class="fu">*cos</span>(<span class="cn">pi</span><span class="op">/</span><span class="fl">2</span> <span class="op">+</span> alpha),</span>
<span id="cb25-59"><a href="#cb25-59" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fu">sin</span>(alpha)<span class="fu">*cos</span>(beta) <span class="op">+</span> <span class="fu">sin</span>(beta)<span class="op">/</span><span class="fl">2</span><span class="fu">*sin</span>(<span class="cn">pi</span><span class="op">/</span><span class="fl">2</span> <span class="op">+</span> alpha),</span>
<span id="cb25-60"><a href="#cb25-60" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"center"</span>, yanchor<span class="op">=</span><span class="st">"top"</span>,</span>
<span id="cb25-61"><a href="#cb25-61" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"sin(β)"</span>,</span>
<span id="cb25-62"><a href="#cb25-62" aria-hidden="true" tabindex="-1"></a> textangle <span class="op">=</span> <span class="fu">rad2deg</span>(<span class="cn">pi</span><span class="op">/</span><span class="fl">2</span><span class="op">-</span>alpha),</span>
<span id="cb25-63"><a href="#cb25-63" aria-hidden="true" tabindex="-1"></a> showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-64"><a href="#cb25-64" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-65"><a href="#cb25-65" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> xₘ<span class="op">/</span><span class="fl">2</span>,</span>
<span id="cb25-66"><a href="#cb25-66" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fl">0</span>,</span>
<span id="cb25-67"><a href="#cb25-67" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"center"</span>, yanchor<span class="op">=</span><span class="st">"top"</span>,</span>
<span id="cb25-68"><a href="#cb25-68" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"cos(α)⋅cos(β)"</span>, showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-69"><a href="#cb25-69" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fl">0</span>,</span>
<span id="cb25-70"><a href="#cb25-70" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> yₘ<span class="op">/</span><span class="fl">2</span>,</span>
<span id="cb25-71"><a href="#cb25-71" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"right"</span>, yanchor<span class="op">=</span><span class="st">"center"</span>,</span>
<span id="cb25-72"><a href="#cb25-72" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"sin(α+β)"</span>,</span>
<span id="cb25-73"><a href="#cb25-73" aria-hidden="true" tabindex="-1"></a> textangle<span class="op">=-</span><span class="fl">90</span>,</span>
<span id="cb25-74"><a href="#cb25-74" aria-hidden="true" tabindex="-1"></a> showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-75"><a href="#cb25-75" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fu">cos</span>(alpha<span class="op">+</span>beta)<span class="op">/</span><span class="fl">2</span>,</span>
<span id="cb25-76"><a href="#cb25-76" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> yₘ,</span>
<span id="cb25-77"><a href="#cb25-77" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"center"</span>, yanchor<span class="op">=</span><span class="st">"bottom"</span>,</span>
<span id="cb25-78"><a href="#cb25-78" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"cos(α+β)"</span>, showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-79"><a href="#cb25-79" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> <span class="fu">cos</span>(alpha<span class="op">+</span>beta) <span class="op">+</span> (xₘ <span class="op">-</span> <span class="fu">cos</span>(alpha<span class="op">+</span>beta))<span class="op">/</span><span class="fl">2</span>,</span>
<span id="cb25-80"><a href="#cb25-80" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> yₘ,</span>
<span id="cb25-81"><a href="#cb25-81" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"center"</span>, yanchor<span class="op">=</span><span class="st">"bottom"</span>,</span>
<span id="cb25-82"><a href="#cb25-82" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"sin(α)⋅sin(β)"</span>, showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-83"><a href="#cb25-83" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> xₘ, y<span class="op">=</span><span class="fu">sin</span>(alpha)<span class="fu">*cos</span>(beta) <span class="op">+</span> (yₘ <span class="op">-</span> <span class="fu">sin</span>(alpha)<span class="fu">*cos</span>(beta))<span class="op">/</span><span class="fl">2</span>,</span>
<span id="cb25-84"><a href="#cb25-84" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"left"</span>, yanchor<span class="op">=</span><span class="st">"center"</span>,</span>
<span id="cb25-85"><a href="#cb25-85" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"cos(α)⋅sin(β)"</span>,</span>
<span id="cb25-86"><a href="#cb25-86" aria-hidden="true" tabindex="-1"></a> textangle<span class="op">=</span><span class="fl">90</span>,</span>
<span id="cb25-87"><a href="#cb25-87" aria-hidden="true" tabindex="-1"></a> showarrow<span class="op">=</span><span class="cn">false</span>),</span>
<span id="cb25-88"><a href="#cb25-88" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> xₘ,</span>
<span id="cb25-89"><a href="#cb25-89" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> <span class="fu">sin</span>(alpha)<span class="fu">*cos</span>(beta)<span class="op">/</span><span class="fl">2</span>,</span>
<span id="cb25-90"><a href="#cb25-90" aria-hidden="true" tabindex="-1"></a> xanchor<span class="op">=</span><span class="st">"left"</span>, yanchor<span class="op">=</span><span class="st">"center"</span>,</span>
<span id="cb25-91"><a href="#cb25-91" aria-hidden="true" tabindex="-1"></a> text <span class="op">=</span> <span class="st">"sin(α)⋅cos(β)"</span>,</span>
<span id="cb25-92"><a href="#cb25-92" aria-hidden="true" tabindex="-1"></a> textangle<span class="op">=</span><span class="fl">90</span>,</span>
<span id="cb25-93"><a href="#cb25-93" aria-hidden="true" tabindex="-1"></a> showarrow<span class="op">=</span><span class="cn">false</span>)</span>
<span id="cb25-94"><a href="#cb25-94" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb25-95"><a href="#cb25-95" aria-hidden="true" tabindex="-1"></a>)</span>
<span id="cb25-96"><a href="#cb25-96" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-97"><a href="#cb25-97" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data, lyt)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="23">
<div class="" style="height: 100vh;" id="parent-of-lqVixytXOY">
<div class="" style="height: 100%;" id="lqVixytXOY"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("lqVixytXOY", [{"x":[0.0,0.7006292692220368,0.7006292692220368,0.0,0.0],"y":[0.0,0.0,0.9135454576426009,0.9135454576426009,0.0],"type":"scatter","mode":"line"},{"x":[0.0,0.7006292692220368],"y":[0.0,0.40450849718747367],"fill":"tozeroy","fillcolor":"rgba(100, 100, 100, 0.5)"},{"x":[0.0,0.4067366430758004,0.7006292692220368],"y":[0.0,0.9135454576426009,0.40450849718747367],"fill":"tonexty","fillcolor":"rgba(200, 0, 100, 0.5)"},{"x":[0.0,0.4067366430758004],"y":[0.0,0.9135454576426009],"line":{"width":5,"color":"black"}}], {"showlegend":false,"xaxis":{"visible":false},"annotations":[{"x":0.09659258262890684,"y":0.025881904510252074,"text":"α","showarrow":false},{"x":0.06691306063588583,"y":0.07431448254773941,"text":"β","showarrow":false},{"x":0.32286958628125795,"y":0.8590815541410982,"xanchor":"center","yanchor":"center","text":"α+β","showarrow":false},{"x":0.6747473647117848,"y":0.5011010798163805,"text":"α","showarrow":false},{"x":0.2033683215379002,"y":0.45677272882130043,"text":"1"},{"x":0.30338137289060535,"y":0.17515731730550918,"xanchor":"center","yanchor":"bottom","text":"cos(β)","textangle":-29.999999999999996,"showarrow":false},{"x":0.5536829561489186,"y":0.6590269774150372,"xanchor":"center","yanchor":"top","text":"sin(β)","textangle":60.00000000000001,"showarrow":false},{"x":0.3503146346110184,"y":0,"xanchor":"center","yanchor":"top","text":"cos(α)⋅cos(β)","showarrow":false},{"x":0,"y":0.45677272882130043,"xanchor":"right","yanchor":"center","text":"sin(α+β)","textangle":-90,"showarrow":false},{"x":0.2033683215379002,"y":0.9135454576426009,"xanchor":"center","yanchor":"bottom","text":"cos(α+β)","showarrow":false},{"x":0.5536829561489186,"y":0.9135454576426009,"xanchor":"center","yanchor":"bottom","text":"sin(α)⋅sin(β)","showarrow":false},{"x":0.7006292692220368,"y":0.6590269774150372,"xanchor":"left","yanchor":"center","text":"cos(α)⋅sin(β)","textangle":90,"showarrow":false},{"x":0.7006292692220368,"y":0.20225424859373684,"xanchor":"left","yanchor":"center","text":"sin(α)⋅cos(β)","textangle":90,"showarrow":false}],"height":450,"yaxis":{"visible":false,"scaleanchor":"x"}}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
</section>
</section>
<section id="parameterized-curves" class="level2" data-number="64.8">
<h2 data-number="64.8" class="anchored" data-anchor-id="parameterized-curves"><span class="header-section-number">64.8</span> Parameterized curves</h2>
<p>In <span class="math inline">\(2\)</span>-dimensions, the plotting of a parameterized curve is similar to that of plotting a function. In <span class="math inline">\(3\)</span>-dimensions, an extra <span class="math inline">\(z\)</span>-coordinate is included.</p>
<p>To help, we define an <code>unzip</code> function as an interface to <code>SplitApplyCombine</code>s <code>invert</code> function:</p>
<div class="cell" data-execution_count="24">
<div class="sourceCode cell-code" id="cb26"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb26-1"><a href="#cb26-1" aria-hidden="true" tabindex="-1"></a><span class="fu">unzip</span>(v) <span class="op">=</span> SplitApplyCombine.<span class="fu">invert</span>(v)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="24">
<pre><code>unzip (generic function with 1 method)</code></pre>
</div>
</div>
<p>Earlier, we plotted a two dimensional circle, here we plot the related helix.</p>
<div class="cell" data-hold="true" data-execution_count="25">
<div class="sourceCode cell-code" id="cb28"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb28-1"><a href="#cb28-1" aria-hidden="true" tabindex="-1"></a><span class="fu">helix</span>(t) <span class="op">=</span> [<span class="fu">cos</span>(t), <span class="fu">sin</span>(t), t]</span>
<span id="cb28-2"><a href="#cb28-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb28-3"><a href="#cb28-3" aria-hidden="true" tabindex="-1"></a>ts <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>, <span class="fl">4</span>pi, length<span class="op">=</span><span class="fl">200</span>)</span>
<span id="cb28-4"><a href="#cb28-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb28-5"><a href="#cb28-5" aria-hidden="true" tabindex="-1"></a>xs, ys, zs <span class="op">=</span> <span class="fu">unzip</span>(<span class="fu">helix</span>.(ts))</span>
<span id="cb28-6"><a href="#cb28-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb28-7"><a href="#cb28-7" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x<span class="op">=</span>xs, y<span class="op">=</span>ys, z<span class="op">=</span>zs,</span>
<span id="cb28-8"><a href="#cb28-8" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span> <span class="op">=</span> <span class="st">"scatter3d"</span>, <span class="co"># &lt;&lt;- note the 3d</span></span>
<span id="cb28-9"><a href="#cb28-9" aria-hidden="true" tabindex="-1"></a> mode <span class="op">=</span> <span class="st">"lines"</span>,</span>
<span id="cb28-10"><a href="#cb28-10" aria-hidden="true" tabindex="-1"></a> line<span class="op">=</span>(width<span class="op">=</span><span class="fl">2</span>,</span>
<span id="cb28-11"><a href="#cb28-11" aria-hidden="true" tabindex="-1"></a> color<span class="op">=:</span>red)</span>
<span id="cb28-12"><a href="#cb28-12" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb28-13"><a href="#cb28-13" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb28-14"><a href="#cb28-14" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="25">
<div class="" style="height: 100vh;" id="parent-of-t6veyEjDlW">
<div class="" style="height: 100%;" id="t6veyEjDlW"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("t6veyEjDlW", [{"x":[1.0,0.9980068533314934,0.9920353585932578,0.9821093199149804,0.9682683053985072,0.9505674893877829,0.9290774325277306,0.9038838004888236,0.8750870224785937,0.8428018909013506,0.8071571037619854,0.7682947516379708,0.7263697512646394,0.6815492279916339,0.6340118495722387,0.5839471139413063,0.5315545938209014,0.47704314116488955,0.4206300546137844,0.3625402132786245,0.30300518030687273,0.24226227980378318,0.18055365078890231,0.11812528195890805,0.05522603110450817,-0.00789336690971331,-0.07098129964801578,-0.13378628010447904,-0.196057949203978,-0.2575480738068967,-0.3180115362392381,-0.37720731140357594,-0.434899427575793,-0.4908579070575935,-0.5448596829350705,-0.5966894882888559,-0.6461407143112096,-0.6930162339093318,-0.7371291875117788,-0.77830372794553,-0.8163757214143991,-0.8511934017844945,-0.8826179755685469,-0.9105241751974622,-0.9348007583735982,-0.9553509515151948,-0.972092835524257,-0.9849596723401104,-0.9939001709768878,-0.9988786919844436,-0.9998753895176573,-0.9968862904477932,-0.9899233102005572,-0.9790142052577145,-0.9642024625116118,-0.9455471259136672,-0.9231225611078607,-0.8970181589874636,-0.8673379793567146,-0.8342003361179176,-0.7977373256375195,-0.7580943001712456,-0.7154292884473714,-0.6699123657178554,-0.6217249757884953,-0.571059207730695,-0.5181170301580778,-0.4631094861203483,-0.40625585182378887,-0.3477827625319824,-0.28792330913116665,-0.22691610896159048,-0.16500435461879978,-0.1024348445166131,-0.03945699907625272,0.023678133536623857,0.08671887816355048,0.14941393590426047,0.21151338586781926,0.27276968143060315,0.332938637029761,0.3917804015584929,0.4490604144829198,0.5045503408691769,0.5580289815934403,0.6092831551065166,0.6581085472380375,0.7043105256526719,0.7477049157117087,0.7881187346471925,0.8253908811219762,0.8593727774269119,0.8899289617551801,0.9169376281927886,0.9402911122726754,0.959896320156857,0.9756750997357736,0.9875645521655236,0.9955172826011058,0.9995015891261737,0.9995015891261738,0.995517282601106,0.9875645521655237,0.9756750997357737,0.9598963201568571,0.9402911122726755,0.9169376281927888,0.8899289617551803,0.8593727774269122,0.8253908811219764,0.7881187346471927,0.747704915711709,0.7043105256526723,0.6581085472380379,0.6092831551065171,0.5580289815934407,0.5045503408691774,0.44906041448292017,0.39178040155849336,0.3329386370297615,0.27276968143060365,0.21151338586781973,0.14941393590426097,0.08671887816355096,0.023678133536624346,-0.03945699907625223,-0.10243484451661261,-0.16500435461879842,-0.22691610896159,-0.2879233091311653,-0.3477827625319819,-0.4062558518237892,-0.4631094861203471,-0.5181170301580773,-0.5710592077306939,-0.6217249757884948,-0.6699123657178554,-0.7154292884473707,-0.7580943001712455,-0.7977373256375186,-0.8342003361179173,-0.8673379793567149,-0.8970181589874632,-0.9231225611078607,-0.9455471259136667,-0.9642024625116117,-0.9790142052577147,-0.989923310200557,-0.9968862904477932,-0.9998753895176573,-0.9988786919844436,-0.9939001709768878,-0.9849596723401106,-0.972092835524257,-0.9553509515151951,-0.9348007583735984,-0.910524175197462,-0.8826179755685472,-0.8511934017844945,-0.8163757214143996,-0.77830372794553,-0.7371291875117798,-0.6930162339093321,-0.6461407143112096,-0.5966894882888566,-0.5448596829350706,-0.49085790705759474,-0.4348994275757934,-0.3772073114035758,-0.318011536239239,-0.2575480738068967,-0.19605794920397915,-0.13378628010447952,-0.0709812996480156,-0.007893366909714023,0.05522603110450812,0.1181252819589069,0.18055365078890184,0.24226227980378354,0.30300518030687207,0.3625402132786245,0.42063005461378333,0.47704314116488933,0.5315545938209018,0.5839471139413057,0.6340118495722388,0.6815492279916331,0.7263697512646392,0.7682947516379699,0.807157103761985,0.8428018909013507,0.8750870224785933,0.9038838004888234,0.9290774325277301,0.9505674893877827,0.9682683053985073,0.9821093199149802,0.9920353585932578,0.9980068533314933,1.0],"y":[0.0,0.06310563131267365,0.12595970506771756,0.18831166648971787,0.24991296237030836,0.3105180318741688,0.3698852854165468,0.4277780677102096,0.48396560114283876,0.5382239057242885,0.5903366919365284,0.6400962229271071,0.6873041426091843,0.7317722663670767,0.773323331215339,0.8117917024210207,0.8470240337722988,0.8788798788614604,0.9072322509454813,0.9319681291524348,0.9529889090158392,0.9702107955409863,0.9835651372363698,0.9929986997786696,0.9984738782203788,0.9999688468941563,0.9974776464163388,0.9910102074427921,0.9805923110824041,0.9662654861260218,0.9480868435005095,0.9261288486078413,0.9004790324567516,0.8712396427384597,0.8385272362373773,0.802472214201578,0.7632183025251686,0.7209219788147163,0.6757518486236088,0.6278879733408583,0.5775211524135886,0.5248521627644684,0.47009095843600296,0.4134558336521342,0.3551725526334286,0.29547344963467004,0.23459650279236888,0.17278438547409986,0.11028349891127508,0.047342989971558204,-0.015786242013637018,-0.07885254540747635,-0.14160451942495134,-0.20379201629015212,-0.2651671383986785,-0.3254852265102114,-0.38450583503201075,-0.4419936905055789,-0.49771962947568316,-0.5514615120031073,-0.6030051071796143,-0.6521449471151866,-0.6986851459933063,-0.7424401809292829,-0.7832356315188904,-0.8209088751292625,-0.8553097351604116,-0.8863010796932084,-0.9137593681374367,-0.9375751437008251,-0.9576534697159295,-0.9739143080855377,-0.9862928383380026,-0.994739716020657,-0.9992212694012756,-0.9997196336934779,-0.9962328222710067,-0.9887747345870026,-0.9773751007667072,-0.9620793630944628,-0.942948494867437,-0.9200587573381745,-0.8935013957148743,-0.8633822754312237,-0.8298214601357258,-0.7929527330827786,-0.7529230638333771,-0.7098920223913332,-0.6640311431104317,-0.615523240908179,-0.5645616825119181,-0.5113496156423268,-0.45609915920701627,-0.3990305577323414,-0.3403713034041135,-0.28035522921701433,-0.21922157684769145,-0.15721404296725106,-0.09457980779484539,-0.03156854976481113,0.03156854976481064,0.09457980779484489,0.15721404296725056,0.21922157684769095,0.2803552292170139,0.340371303404113,0.399030557732341,0.4560991592070158,0.5113496156423264,0.5645616825119176,0.6155232409081787,0.6640311431104313,0.7098920223913328,0.7529230638333768,0.7929527330827784,0.8298214601357254,0.8633822754312235,0.8935013957148741,0.9200587573381744,0.9429484948674369,0.9620793630944627,0.9773751007667071,0.9887747345870026,0.9962328222710067,0.9997196336934779,0.9992212694012756,0.994739716020657,0.9862928383380029,0.9739143080855378,0.9576534697159299,0.9375751437008252,0.9137593681374366,0.886301079693209,0.8553097351604119,0.8209088751292632,0.7832356315188906,0.7424401809292829,0.698685145993307,0.6521449471151867,0.6030051071796154,0.5514615120031078,0.4977196294756828,0.44199369050557974,0.3845058350320108,0.32548522651021267,0.265167138398679,0.20379201629015173,0.14160451942495228,0.07885254540747641,0.015786242013637954,-0.04734298997155772,-0.11028349891127548,-0.17278438547409894,-0.23459650279236882,-0.29547344963466915,-0.3551725526334282,-0.41345583365213456,-0.4700909584360025,-0.5248521627644684,-0.5775211524135879,-0.6278879733408582,-0.6757518486236078,-0.7209219788147161,-0.7632183025251686,-0.8024722142015774,-0.8385272362373773,-0.871239642738459,-0.9004790324567514,-0.9261288486078413,-0.9480868435005093,-0.9662654861260218,-0.9805923110824039,-0.9910102074427921,-0.9974776464163388,-0.9999688468941563,-0.9984738782203788,-0.9929986997786697,-0.98356513723637,-0.9702107955409862,-0.9529889090158394,-0.9319681291524349,-0.9072322509454818,-0.8788798788614605,-0.8470240337722986,-0.8117917024210212,-0.773323331215339,-0.7317722663670775,-0.6873041426091845,-0.6400962229271082,-0.5903366919365288,-0.5382239057242885,-0.48396560114283954,-0.42777806771020976,-0.369885285416548,-0.3105180318741693,-0.2499129623703082,-0.18831166648971873,-0.1259597050677177,-0.06310563131267485,-4.898587196589413e-16],"z":[0.0,0.06314759102693052,0.12629518205386103,0.18944277308079155,0.25259036410772207,0.3157379551346526,0.3788855461615831,0.4420331371885136,0.5051807282154441,0.5683283192423746,0.6314759102693052,0.6946235012962356,0.7577710923231662,0.8209186833500967,0.8840662743770272,0.9472138654039577,1.0103614564308883,1.0735090474578188,1.1366566384847492,1.1998042295116798,1.2629518205386103,1.326099411565541,1.3892470025924712,1.4523945936194018,1.5155421846463324,1.578689775673263,1.6418373667001933,1.7049849577271239,1.7681325487540545,1.831280139780985,1.8944277308079154,1.957575321834846,2.0207229128617765,2.083870503888707,2.1470180949156377,2.210165685942568,2.2733132769694984,2.336460867996429,2.3996084590233595,2.4627560500502903,2.5259036410772207,2.589051232104151,2.652198823131082,2.715346414158012,2.7784940051849425,2.8416415962118733,2.9047891872388036,2.967936778265734,3.031084369292665,3.094231960319595,3.157379551346526,3.2205271423734563,3.2836747334003866,3.3468223244273174,3.4099699154542478,3.473117506481178,3.536265097508109,3.5994126885350393,3.66256027956197,3.7257078705889004,3.7888554616158308,3.8520030526427615,3.915150643669692,3.9782982346966222,4.041445825723553,4.104593416750483,4.167741007777414,4.230888598804344,4.294036189831275,4.357183780858206,4.420331371885136,4.483478962912066,4.546626553938997,4.609774144965928,4.672921735992858,4.736069327019789,4.799216918046719,4.862364509073649,4.925512100100581,4.988659691127511,5.051807282154441,5.114954873181372,5.178102464208302,5.241250055235232,5.304397646262164,5.367545237289094,5.430692828316024,5.493840419342955,5.556988010369885,5.620135601396816,5.683283192423747,5.746430783450677,5.809578374477607,5.872725965504538,5.935873556531468,5.999021147558399,6.06216873858533,6.12531632961226,6.18846392063919,6.251611511666121,6.314759102693052,6.377906693719982,6.4410542847469126,6.504201875773843,6.567349466800773,6.6304970578277045,6.693644648854635,6.756792239881565,6.8199398309084955,6.883087421935426,6.946235012962356,7.0093826039892875,7.072530195016218,7.135677786043148,7.1988253770700785,7.261972968097009,7.32512055912394,7.3882681501508705,7.451415741177801,7.514563332204731,7.5777109232316615,7.640858514258592,7.704006105285523,7.7671536963124534,7.830301287339384,7.893448878366314,7.9565964693932445,8.019744060420175,8.082891651447106,8.146039242474036,8.209186833500967,8.272334424527898,8.335482015554827,8.398629606581759,8.461777197608688,8.52492478863562,8.58807237966255,8.65121997068948,8.714367561716411,8.77751515274334,8.840662743770272,8.903810334797203,8.966957925824133,9.030105516851064,9.093253107877993,9.156400698904925,9.219548289931856,9.282695880958785,9.345843471985717,9.408991063012646,9.472138654039577,9.535286245066509,9.598433836093438,9.66158142712037,9.724729018147299,9.78787660917423,9.851024200201161,9.91417179122809,9.977319382255022,10.040466973281951,10.103614564308883,10.166762155335812,10.229909746362743,10.293057337389675,10.356204928416604,10.419352519443535,10.482500110470465,10.545647701497396,10.608795292524327,10.671942883551257,10.735090474578188,10.798238065605117,10.861385656632049,10.92453324765898,10.98768083868591,11.05082842971284,11.11397602073977,11.177123611766701,11.240271202793632,11.303418793820562,11.366566384847493,11.429713975874423,11.492861566901354,11.556009157928285,11.619156748955215,11.682304339982146,11.745451931009075,11.808599522036006,11.871747113062936,11.934894704089867,11.998042295116798,12.061189886143728,12.12433747717066,12.187485068197589,12.25063265922452,12.313780250251451,12.37692784127838,12.440075432305312,12.503223023332241,12.566370614359172],"type":"scatter3d","mode":"lines","line":{"width":2,"color":"red"}}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The main difference is the chart type, as this is a <span class="math inline">\(3\)</span>-dimensional plot, “scatter3d” is used.</p>
<section id="quiver-plots" class="level3" data-number="64.8.1">
<h3 data-number="64.8.1" class="anchored" data-anchor-id="quiver-plots"><span class="header-section-number">64.8.1</span> Quiver plots</h3>
<p>There is no <code>quiver</code> plot for <code>plotly</code> using JavaScript. In <span class="math inline">\(2\)</span>-dimensions a text-less annotation could be employed. In <span class="math inline">\(3\)</span>-dimensions, the following (from <a href="https://stackoverflow.com/questions/43164909/plotlypython-how-to-plot-arrows-in-3d">stackoverflow.com</a>) is a possible workaround where a line segment is drawn and capped with a small cone. Somewhat opaquely, we use <code>NamedTuple</code> for an iterator to create the keys for the data below:</p>
<div class="cell" data-hold="true" data-execution_count="26">
<div class="sourceCode cell-code" id="cb29"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb29-1"><a href="#cb29-1" aria-hidden="true" tabindex="-1"></a><span class="fu">helix</span>(t) <span class="op">=</span> [<span class="fu">cos</span>(t), <span class="fu">sin</span>(t), t]</span>
<span id="cb29-2"><a href="#cb29-2" aria-hidden="true" tabindex="-1"></a><span class="fu">helix</span>(t) <span class="op">=</span> [<span class="fu">-sin</span>(t), <span class="fu">cos</span>(t), <span class="fl">1</span>]</span>
<span id="cb29-3"><a href="#cb29-3" aria-hidden="true" tabindex="-1"></a>ts <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>, <span class="fl">4</span>pi, length<span class="op">=</span><span class="fl">200</span>)</span>
<span id="cb29-4"><a href="#cb29-4" aria-hidden="true" tabindex="-1"></a>xs, ys, zs <span class="op">=</span> <span class="fu">unzip</span>(<span class="fu">helix</span>.(ts))</span>
<span id="cb29-5"><a href="#cb29-5" aria-hidden="true" tabindex="-1"></a>helix_trace <span class="op">=</span> <span class="fu">Config</span>(; <span class="fu">NamedTuple</span>(<span class="fu">zip</span>((<span class="op">:</span>x,<span class="op">:</span>y,<span class="op">:</span>z), <span class="fu">unzip</span>(<span class="fu">helix</span>.(ts))))<span class="op">...</span>,</span>
<span id="cb29-6"><a href="#cb29-6" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span> <span class="op">=</span> <span class="st">"scatter3d"</span>, <span class="co"># &lt;&lt;- note the 3d</span></span>
<span id="cb29-7"><a href="#cb29-7" aria-hidden="true" tabindex="-1"></a> mode <span class="op">=</span> <span class="st">"lines"</span>,</span>
<span id="cb29-8"><a href="#cb29-8" aria-hidden="true" tabindex="-1"></a> line<span class="op">=</span>(width<span class="op">=</span><span class="fl">2</span>,</span>
<span id="cb29-9"><a href="#cb29-9" aria-hidden="true" tabindex="-1"></a> color<span class="op">=:</span>red)</span>
<span id="cb29-10"><a href="#cb29-10" aria-hidden="true" tabindex="-1"></a> )</span>
<span id="cb29-11"><a href="#cb29-11" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb29-12"><a href="#cb29-12" aria-hidden="true" tabindex="-1"></a>tss <span class="op">=</span> <span class="cn">pi</span><span class="op">/</span><span class="fl">2</span><span class="op">:</span><span class="cn">pi</span><span class="op">/</span><span class="fl">2</span><span class="op">:</span><span class="fl">7</span>pi<span class="op">/</span><span class="fl">2</span></span>
<span id="cb29-13"><a href="#cb29-13" aria-hidden="true" tabindex="-1"></a>rs, rs <span class="op">=</span> <span class="fu">helix</span>.(tss), <span class="fu">helix</span>.(tss)</span>
<span id="cb29-14"><a href="#cb29-14" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb29-15"><a href="#cb29-15" aria-hidden="true" tabindex="-1"></a>arrows <span class="op">=</span> [</span>
<span id="cb29-16"><a href="#cb29-16" aria-hidden="true" tabindex="-1"></a> <span class="fu">Config</span>(x <span class="op">=</span> [x[<span class="fl">1</span>], x[<span class="fl">1</span>]<span class="op">+</span>x[<span class="fl">1</span>]],</span>
<span id="cb29-17"><a href="#cb29-17" aria-hidden="true" tabindex="-1"></a> y <span class="op">=</span> [x[<span class="fl">2</span>], x[<span class="fl">2</span>]<span class="op">+</span>x[<span class="fl">2</span>]],</span>
<span id="cb29-18"><a href="#cb29-18" aria-hidden="true" tabindex="-1"></a> z <span class="op">=</span> [x[<span class="fl">3</span>], x[<span class="fl">3</span>]<span class="op">+</span>x[<span class="fl">3</span>]],</span>
<span id="cb29-19"><a href="#cb29-19" aria-hidden="true" tabindex="-1"></a> mode<span class="op">=</span><span class="st">"lines"</span>, type<span class="op">=</span><span class="st">"scatter3d"</span>)</span>
<span id="cb29-20"><a href="#cb29-20" aria-hidden="true" tabindex="-1"></a> for (x, x) <span class="op"></span> <span class="fu">zip</span>(rs, rs)</span>
<span id="cb29-21"><a href="#cb29-21" aria-hidden="true" tabindex="-1"></a>]</span>
<span id="cb29-22"><a href="#cb29-22" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb29-23"><a href="#cb29-23" aria-hidden="true" tabindex="-1"></a>tips <span class="op">=</span> rs <span class="op">.+</span> rs</span>
<span id="cb29-24"><a href="#cb29-24" aria-hidden="true" tabindex="-1"></a>lengths <span class="op">=</span> <span class="fl">0.1</span> <span class="op">*</span> rs</span>
<span id="cb29-25"><a href="#cb29-25" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb29-26"><a href="#cb29-26" aria-hidden="true" tabindex="-1"></a>caps <span class="op">=</span> <span class="fu">Config</span>(;</span>
<span id="cb29-27"><a href="#cb29-27" aria-hidden="true" tabindex="-1"></a> <span class="fu">NamedTuple</span>(<span class="fu">zip</span>([<span class="op">:</span>x,<span class="op">:</span>y,<span class="op">:</span>z], <span class="fu">unzip</span>(tips)))<span class="op">...</span>,</span>
<span id="cb29-28"><a href="#cb29-28" aria-hidden="true" tabindex="-1"></a> <span class="fu">NamedTuple</span>(<span class="fu">zip</span>([<span class="op">:</span>u,<span class="op">:</span>v,<span class="op">:</span>w], <span class="fu">unzip</span>(lengths)))<span class="op">...</span>,</span>
<span id="cb29-29"><a href="#cb29-29" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"cone"</span>, anchor<span class="op">=</span><span class="st">"tail"</span>)</span>
<span id="cb29-30"><a href="#cb29-30" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb29-31"><a href="#cb29-31" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">vcat</span>(helix_trace, arrows, caps)</span>
<span id="cb29-32"><a href="#cb29-32" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb29-33"><a href="#cb29-33" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="26">
<div class="" style="height: 100vh;" id="parent-of-HzVUxaVN0s">
<div class="" style="height: 100%;" id="HzVUxaVN0s"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("HzVUxaVN0s", [{"x":[1.0,0.9980068533314934,0.9920353585932578,0.9821093199149804,0.9682683053985072,0.9505674893877829,0.9290774325277306,0.9038838004888236,0.8750870224785937,0.8428018909013506,0.8071571037619854,0.7682947516379708,0.7263697512646394,0.6815492279916339,0.6340118495722387,0.5839471139413063,0.5315545938209014,0.47704314116488955,0.4206300546137844,0.3625402132786245,0.30300518030687273,0.24226227980378318,0.18055365078890231,0.11812528195890805,0.05522603110450817,-0.00789336690971331,-0.07098129964801578,-0.13378628010447904,-0.196057949203978,-0.2575480738068967,-0.3180115362392381,-0.37720731140357594,-0.434899427575793,-0.4908579070575935,-0.5448596829350705,-0.5966894882888559,-0.6461407143112096,-0.6930162339093318,-0.7371291875117788,-0.77830372794553,-0.8163757214143991,-0.8511934017844945,-0.8826179755685469,-0.9105241751974622,-0.9348007583735982,-0.9553509515151948,-0.972092835524257,-0.9849596723401104,-0.9939001709768878,-0.9988786919844436,-0.9998753895176573,-0.9968862904477932,-0.9899233102005572,-0.9790142052577145,-0.9642024625116118,-0.9455471259136672,-0.9231225611078607,-0.8970181589874636,-0.8673379793567146,-0.8342003361179176,-0.7977373256375195,-0.7580943001712456,-0.7154292884473714,-0.6699123657178554,-0.6217249757884953,-0.571059207730695,-0.5181170301580778,-0.4631094861203483,-0.40625585182378887,-0.3477827625319824,-0.28792330913116665,-0.22691610896159048,-0.16500435461879978,-0.1024348445166131,-0.03945699907625272,0.023678133536623857,0.08671887816355048,0.14941393590426047,0.21151338586781926,0.27276968143060315,0.332938637029761,0.3917804015584929,0.4490604144829198,0.5045503408691769,0.5580289815934403,0.6092831551065166,0.6581085472380375,0.7043105256526719,0.7477049157117087,0.7881187346471925,0.8253908811219762,0.8593727774269119,0.8899289617551801,0.9169376281927886,0.9402911122726754,0.959896320156857,0.9756750997357736,0.9875645521655236,0.9955172826011058,0.9995015891261737,0.9995015891261738,0.995517282601106,0.9875645521655237,0.9756750997357737,0.9598963201568571,0.9402911122726755,0.9169376281927888,0.8899289617551803,0.8593727774269122,0.8253908811219764,0.7881187346471927,0.747704915711709,0.7043105256526723,0.6581085472380379,0.6092831551065171,0.5580289815934407,0.5045503408691774,0.44906041448292017,0.39178040155849336,0.3329386370297615,0.27276968143060365,0.21151338586781973,0.14941393590426097,0.08671887816355096,0.023678133536624346,-0.03945699907625223,-0.10243484451661261,-0.16500435461879842,-0.22691610896159,-0.2879233091311653,-0.3477827625319819,-0.4062558518237892,-0.4631094861203471,-0.5181170301580773,-0.5710592077306939,-0.6217249757884948,-0.6699123657178554,-0.7154292884473707,-0.7580943001712455,-0.7977373256375186,-0.8342003361179173,-0.8673379793567149,-0.8970181589874632,-0.9231225611078607,-0.9455471259136667,-0.9642024625116117,-0.9790142052577147,-0.989923310200557,-0.9968862904477932,-0.9998753895176573,-0.9988786919844436,-0.9939001709768878,-0.9849596723401106,-0.972092835524257,-0.9553509515151951,-0.9348007583735984,-0.910524175197462,-0.8826179755685472,-0.8511934017844945,-0.8163757214143996,-0.77830372794553,-0.7371291875117798,-0.6930162339093321,-0.6461407143112096,-0.5966894882888566,-0.5448596829350706,-0.49085790705759474,-0.4348994275757934,-0.3772073114035758,-0.318011536239239,-0.2575480738068967,-0.19605794920397915,-0.13378628010447952,-0.0709812996480156,-0.007893366909714023,0.05522603110450812,0.1181252819589069,0.18055365078890184,0.24226227980378354,0.30300518030687207,0.3625402132786245,0.42063005461378333,0.47704314116488933,0.5315545938209018,0.5839471139413057,0.6340118495722388,0.6815492279916331,0.7263697512646392,0.7682947516379699,0.807157103761985,0.8428018909013507,0.8750870224785933,0.9038838004888234,0.9290774325277301,0.9505674893877827,0.9682683053985073,0.9821093199149802,0.9920353585932578,0.9980068533314933,1.0],"y":[0.0,0.06310563131267365,0.12595970506771756,0.18831166648971787,0.24991296237030836,0.3105180318741688,0.3698852854165468,0.4277780677102096,0.48396560114283876,0.5382239057242885,0.5903366919365284,0.6400962229271071,0.6873041426091843,0.7317722663670767,0.773323331215339,0.8117917024210207,0.8470240337722988,0.8788798788614604,0.9072322509454813,0.9319681291524348,0.9529889090158392,0.9702107955409863,0.9835651372363698,0.9929986997786696,0.9984738782203788,0.9999688468941563,0.9974776464163388,0.9910102074427921,0.9805923110824041,0.9662654861260218,0.9480868435005095,0.9261288486078413,0.9004790324567516,0.8712396427384597,0.8385272362373773,0.802472214201578,0.7632183025251686,0.7209219788147163,0.6757518486236088,0.6278879733408583,0.5775211524135886,0.5248521627644684,0.47009095843600296,0.4134558336521342,0.3551725526334286,0.29547344963467004,0.23459650279236888,0.17278438547409986,0.11028349891127508,0.047342989971558204,-0.015786242013637018,-0.07885254540747635,-0.14160451942495134,-0.20379201629015212,-0.2651671383986785,-0.3254852265102114,-0.38450583503201075,-0.4419936905055789,-0.49771962947568316,-0.5514615120031073,-0.6030051071796143,-0.6521449471151866,-0.6986851459933063,-0.7424401809292829,-0.7832356315188904,-0.8209088751292625,-0.8553097351604116,-0.8863010796932084,-0.9137593681374367,-0.9375751437008251,-0.9576534697159295,-0.9739143080855377,-0.9862928383380026,-0.994739716020657,-0.9992212694012756,-0.9997196336934779,-0.9962328222710067,-0.9887747345870026,-0.9773751007667072,-0.9620793630944628,-0.942948494867437,-0.9200587573381745,-0.8935013957148743,-0.8633822754312237,-0.8298214601357258,-0.7929527330827786,-0.7529230638333771,-0.7098920223913332,-0.6640311431104317,-0.615523240908179,-0.5645616825119181,-0.5113496156423268,-0.45609915920701627,-0.3990305577323414,-0.3403713034041135,-0.28035522921701433,-0.21922157684769145,-0.15721404296725106,-0.09457980779484539,-0.03156854976481113,0.03156854976481064,0.09457980779484489,0.15721404296725056,0.21922157684769095,0.2803552292170139,0.340371303404113,0.399030557732341,0.4560991592070158,0.5113496156423264,0.5645616825119176,0.6155232409081787,0.6640311431104313,0.7098920223913328,0.7529230638333768,0.7929527330827784,0.8298214601357254,0.8633822754312235,0.8935013957148741,0.9200587573381744,0.9429484948674369,0.9620793630944627,0.9773751007667071,0.9887747345870026,0.9962328222710067,0.9997196336934779,0.9992212694012756,0.994739716020657,0.9862928383380029,0.9739143080855378,0.9576534697159299,0.9375751437008252,0.9137593681374366,0.886301079693209,0.8553097351604119,0.8209088751292632,0.7832356315188906,0.7424401809292829,0.698685145993307,0.6521449471151867,0.6030051071796154,0.5514615120031078,0.4977196294756828,0.44199369050557974,0.3845058350320108,0.32548522651021267,0.265167138398679,0.20379201629015173,0.14160451942495228,0.07885254540747641,0.015786242013637954,-0.04734298997155772,-0.11028349891127548,-0.17278438547409894,-0.23459650279236882,-0.29547344963466915,-0.3551725526334282,-0.41345583365213456,-0.4700909584360025,-0.5248521627644684,-0.5775211524135879,-0.6278879733408582,-0.6757518486236078,-0.7209219788147161,-0.7632183025251686,-0.8024722142015774,-0.8385272362373773,-0.871239642738459,-0.9004790324567514,-0.9261288486078413,-0.9480868435005093,-0.9662654861260218,-0.9805923110824039,-0.9910102074427921,-0.9974776464163388,-0.9999688468941563,-0.9984738782203788,-0.9929986997786697,-0.98356513723637,-0.9702107955409862,-0.9529889090158394,-0.9319681291524349,-0.9072322509454818,-0.8788798788614605,-0.8470240337722986,-0.8117917024210212,-0.773323331215339,-0.7317722663670775,-0.6873041426091845,-0.6400962229271082,-0.5903366919365288,-0.5382239057242885,-0.48396560114283954,-0.42777806771020976,-0.369885285416548,-0.3105180318741693,-0.2499129623703082,-0.18831166648971873,-0.1259597050677177,-0.06310563131267485,-4.898587196589413e-16],"z":[0.0,0.06314759102693052,0.12629518205386103,0.18944277308079155,0.25259036410772207,0.3157379551346526,0.3788855461615831,0.4420331371885136,0.5051807282154441,0.5683283192423746,0.6314759102693052,0.6946235012962356,0.7577710923231662,0.8209186833500967,0.8840662743770272,0.9472138654039577,1.0103614564308883,1.0735090474578188,1.1366566384847492,1.1998042295116798,1.2629518205386103,1.326099411565541,1.3892470025924712,1.4523945936194018,1.5155421846463324,1.578689775673263,1.6418373667001933,1.7049849577271239,1.7681325487540545,1.831280139780985,1.8944277308079154,1.957575321834846,2.0207229128617765,2.083870503888707,2.1470180949156377,2.210165685942568,2.2733132769694984,2.336460867996429,2.3996084590233595,2.4627560500502903,2.5259036410772207,2.589051232104151,2.652198823131082,2.715346414158012,2.7784940051849425,2.8416415962118733,2.9047891872388036,2.967936778265734,3.031084369292665,3.094231960319595,3.157379551346526,3.2205271423734563,3.2836747334003866,3.3468223244273174,3.4099699154542478,3.473117506481178,3.536265097508109,3.5994126885350393,3.66256027956197,3.7257078705889004,3.7888554616158308,3.8520030526427615,3.915150643669692,3.9782982346966222,4.041445825723553,4.104593416750483,4.167741007777414,4.230888598804344,4.294036189831275,4.357183780858206,4.420331371885136,4.483478962912066,4.546626553938997,4.609774144965928,4.672921735992858,4.736069327019789,4.799216918046719,4.862364509073649,4.925512100100581,4.988659691127511,5.051807282154441,5.114954873181372,5.178102464208302,5.241250055235232,5.304397646262164,5.367545237289094,5.430692828316024,5.493840419342955,5.556988010369885,5.620135601396816,5.683283192423747,5.746430783450677,5.809578374477607,5.872725965504538,5.935873556531468,5.999021147558399,6.06216873858533,6.12531632961226,6.18846392063919,6.251611511666121,6.314759102693052,6.377906693719982,6.4410542847469126,6.504201875773843,6.567349466800773,6.6304970578277045,6.693644648854635,6.756792239881565,6.8199398309084955,6.883087421935426,6.946235012962356,7.0093826039892875,7.072530195016218,7.135677786043148,7.1988253770700785,7.261972968097009,7.32512055912394,7.3882681501508705,7.451415741177801,7.514563332204731,7.5777109232316615,7.640858514258592,7.704006105285523,7.7671536963124534,7.830301287339384,7.893448878366314,7.9565964693932445,8.019744060420175,8.082891651447106,8.146039242474036,8.209186833500967,8.272334424527898,8.335482015554827,8.398629606581759,8.461777197608688,8.52492478863562,8.58807237966255,8.65121997068948,8.714367561716411,8.77751515274334,8.840662743770272,8.903810334797203,8.966957925824133,9.030105516851064,9.093253107877993,9.156400698904925,9.219548289931856,9.282695880958785,9.345843471985717,9.408991063012646,9.472138654039577,9.535286245066509,9.598433836093438,9.66158142712037,9.724729018147299,9.78787660917423,9.851024200201161,9.91417179122809,9.977319382255022,10.040466973281951,10.103614564308883,10.166762155335812,10.229909746362743,10.293057337389675,10.356204928416604,10.419352519443535,10.482500110470465,10.545647701497396,10.608795292524327,10.671942883551257,10.735090474578188,10.798238065605117,10.861385656632049,10.92453324765898,10.98768083868591,11.05082842971284,11.11397602073977,11.177123611766701,11.240271202793632,11.303418793820562,11.366566384847493,11.429713975874423,11.492861566901354,11.556009157928285,11.619156748955215,11.682304339982146,11.745451931009075,11.808599522036006,11.871747113062936,11.934894704089867,11.998042295116798,12.061189886143728,12.12433747717066,12.187485068197589,12.25063265922452,12.313780250251451,12.37692784127838,12.440075432305312,12.503223023332241,12.566370614359172],"type":"scatter3d","mode":"lines","line":{"width":2,"color":"red"}},{"x":[6.123233995736766e-17,-0.9999999999999999],"y":[1.0,1.0],"z":[1.5707963267948966,2.5707963267948966],"mode":"lines","type":"scatter3d"},{"x":[-1.0,-1.0000000000000002],"y":[1.2246467991473532e-16,-0.9999999999999999],"z":[3.141592653589793,4.141592653589793],"mode":"lines","type":"scatter3d"},{"x":[-1.8369701987210297e-16,0.9999999999999998],"y":[-1.0,-1.0000000000000002],"z":[4.71238898038469,5.71238898038469],"mode":"lines","type":"scatter3d"},{"x":[1.0,1.0000000000000002],"y":[-2.4492935982947064e-16,0.9999999999999998],"z":[6.283185307179586,7.283185307179586],"mode":"lines","type":"scatter3d"},{"x":[3.061616997868383e-16,-0.9999999999999997],"y":[1.0,1.0000000000000002],"z":[7.853981633974483,8.853981633974483],"mode":"lines","type":"scatter3d"},{"x":[-1.0,-1.0000000000000004],"y":[3.6739403974420594e-16,-0.9999999999999997],"z":[9.42477796076938,10.42477796076938],"mode":"lines","type":"scatter3d"},{"x":[-4.286263797015736e-16,0.9999999999999996],"y":[-1.0,-1.0000000000000004],"z":[10.995574287564276,11.995574287564276],"mode":"lines","type":"scatter3d"},{"x":[-0.9999999999999999,-1.0000000000000002,0.9999999999999998,1.0000000000000002,-0.9999999999999997,-1.0000000000000004,0.9999999999999996],"y":[1.0,-0.9999999999999999,-1.0000000000000002,0.9999999999999998,1.0000000000000002,-0.9999999999999997,-1.0000000000000004],"z":[2.5707963267948966,4.141592653589793,5.71238898038469,7.283185307179586,8.853981633974483,10.42477796076938,11.995574287564276],"u":[-0.1,-1.2246467991473533e-17,0.1,2.4492935982947065e-17,-0.1,-3.6739403974420595e-17,0.1],"v":[6.123233995736766e-18,-0.1,-1.8369701987210297e-17,0.1,3.061616997868383e-17,-0.1,-4.2862637970157366e-17],"w":[0.1,0.1,0.1,0.1,0.1,0.1,0.1],"type":"cone","anchor":"tail"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>If several arrows are to be drawn, it might be more efficient to pass multiple values in for the <code>x</code>, <code>y</code>, … values. They expect a vector. In the above, we create <span class="math inline">\(1\)</span>-element vectors.</p>
</section>
</section>
<section id="contour-plots" class="level2" data-number="64.9">
<h2 data-number="64.9" class="anchored" data-anchor-id="contour-plots"><span class="header-section-number">64.9</span> Contour plots</h2>
<p>A contour plot is created by the “contour” trace type. The data is prepared as a vector of vectors, not a matrix. The following has the interior vector corresponding to slices ranging over <span class="math inline">\(x\)</span> for a fixed <span class="math inline">\(y\)</span>. With this, the construction is straightforward using a comprehension:</p>
<div class="cell" data-hold="true" data-execution_count="27">
<div class="sourceCode cell-code" id="cb30"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb30-1"><a href="#cb30-1" aria-hidden="true" tabindex="-1"></a><span class="fu">f</span>(x,y) <span class="op">=</span> x<span class="op">^</span><span class="fl">2</span> <span class="op">-</span> <span class="fl">2</span>y<span class="op">^</span><span class="fl">2</span></span>
<span id="cb30-2"><a href="#cb30-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb30-3"><a href="#cb30-3" aria-hidden="true" tabindex="-1"></a>xs <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>,<span class="fl">2</span>,length<span class="op">=</span><span class="fl">25</span>)</span>
<span id="cb30-4"><a href="#cb30-4" aria-hidden="true" tabindex="-1"></a>ys <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>,<span class="fl">2</span>, length<span class="op">=</span><span class="fl">50</span>)</span>
<span id="cb30-5"><a href="#cb30-5" aria-hidden="true" tabindex="-1"></a>zs <span class="op">=</span> [[<span class="fu">f</span>(x,y) for x <span class="kw">in</span> xs] for y <span class="kw">in</span> ys]</span>
<span id="cb30-6"><a href="#cb30-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb30-7"><a href="#cb30-7" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(</span>
<span id="cb30-8"><a href="#cb30-8" aria-hidden="true" tabindex="-1"></a> x<span class="op">=</span>xs, y<span class="op">=</span>ys, z<span class="op">=</span>zs,</span>
<span id="cb30-9"><a href="#cb30-9" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"contour"</span></span>
<span id="cb30-10"><a href="#cb30-10" aria-hidden="true" tabindex="-1"></a>)</span>
<span id="cb30-11"><a href="#cb30-11" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb30-12"><a href="#cb30-12" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="27">
<div class="" style="height: 100vh;" id="parent-of-e4JZad1v0w">
<div class="" style="height: 100%;" id="e4JZad1v0w"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("e4JZad1v0w", [{"x":[0.0,0.08333333333333333,0.16666666666666666,0.25,0.3333333333333333,0.4166666666666667,0.5,0.5833333333333334,0.6666666666666666,0.75,0.8333333333333334,0.9166666666666666,1.0,1.0833333333333333,1.1666666666666667,1.25,1.3333333333333333,1.4166666666666667,1.5,1.5833333333333333,1.6666666666666667,1.75,1.8333333333333333,1.9166666666666667,2.0],"y":[0.0,0.04081632653061224,0.08163265306122448,0.12244897959183673,0.16326530612244897,0.20408163265306123,0.24489795918367346,0.2857142857142857,0.32653061224489793,0.3673469387755102,0.40816326530612246,0.4489795918367347,0.4897959183673469,0.5306122448979592,0.5714285714285714,0.6122448979591837,0.6530612244897959,0.6938775510204082,0.7346938775510204,0.7755102040816326,0.8163265306122449,0.8571428571428571,0.8979591836734694,0.9387755102040817,0.9795918367346939,1.0204081632653061,1.0612244897959184,1.1020408163265305,1.1428571428571428,1.183673469387755,1.2244897959183674,1.2653061224489797,1.3061224489795917,1.346938775510204,1.3877551020408163,1.4285714285714286,1.469387755102041,1.510204081632653,1.5510204081632653,1.5918367346938775,1.6326530612244898,1.6734693877551021,1.7142857142857142,1.7551020408163265,1.7959183673469388,1.836734693877551,1.8775510204081634,1.9183673469387754,1.9591836734693877,2.0],"z":[[0.0,0.006944444444444444,0.027777777777777776,0.0625,0.1111111111111111,0.17361111111111113,0.25,0.34027777777777785,0.4444444444444444,0.5625,0.6944444444444445,0.8402777777777777,1.0,1.173611111111111,1.3611111111111114,1.5625,1.7777777777777777,2.0069444444444446,2.25,2.506944444444444,2.777777777777778,3.0625,3.3611111111111107,3.6736111111111116,4.0],[-0.0033319450229071213,0.0036124994215373228,0.024445832754870656,0.05916805497709288,0.10777916608820398,0.170279166088204,0.24666805497709288,0.3369458327548707,0.4411124994215373,0.5591680549770929,0.6911124994215374,0.8369458327548706,0.9966680549770929,1.170279166088204,1.3577791660882044,1.559168054977093,1.7744458327548707,2.0036124994215374,2.2466680549770928,2.503612499421537,2.774445832754871,3.0591680549770928,3.3577791660882035,3.6702791660882044,3.9966680549770928],[-0.013327780091628485,-0.006383335647184041,0.014449997686149291,0.04917221990837151,0.09778333101948262,0.16028333101948264,0.2366722199083715,0.32694999768614935,0.4311166643528159,0.5491722199083715,0.681116664352816,0.8269499976861492,0.9866722199083715,1.1602833310194824,1.3477833310194829,1.5491722199083715,1.7644499976861492,1.9936166643528161,2.2366722199083715,2.4936166643528157,2.7644499976861496,3.0491722199083715,3.3477833310194822,3.660283331019483,3.9866722199083715],[-0.029987505206164097,-0.023043060761719653,-0.002209727428386321,0.0325124947938359,0.08112360590494701,0.14362360590494705,0.2200124947938359,0.31029027257161373,0.4144569392382803,0.5325124947938359,0.6644569392382804,0.8102902725716136,0.9700124947938359,1.143623605904947,1.3311236059049474,1.532512494793836,1.7477902725716137,1.9769569392382806,2.2200124947938358,2.47695693923828,2.747790272571614,3.0325124947938358,3.3311236059049465,3.6436236059049474,3.9700124947938358],[-0.05331112036651394,-0.0463666759220695,-0.025533342588736165,0.00918887963348606,0.057799990744597164,0.12029999074459718,0.19668887963348605,0.2869666574112639,0.3911333240779305,0.509188879633486,0.6411333240779306,0.7869666574112637,0.946688879633486,1.120299990744597,1.3077999907445974,1.509188879633486,1.7244666574112637,1.9536333240779307,2.196688879633486,2.4536333240779302,2.724466657411264,3.009188879633486,3.3077999907445967,3.6202999907445976,3.946688879633486],[-0.08329862557267806,-0.07635418112823361,-0.05552084779490028,-0.02079862557267806,0.027812485538433046,0.09031248553843307,0.16670137442732194,0.2569791522050998,0.36114581887176633,0.4792013744273219,0.6111458188717664,0.7569791522050996,0.9167013744273219,1.090312485538433,1.2778124855384334,1.479201374427322,1.6944791522050997,1.9236458188717667,2.166701374427322,2.423645818871766,2.6944791522051,2.979201374427322,3.2778124855384325,3.5903124855384334,3.916701374427322],[-0.11995002082465639,-0.11300557638021194,-0.09217224304687861,-0.05745002082465639,-0.008838909713545284,0.05366109028645474,0.1300499791753436,0.22032775695312146,0.32449442361978803,0.4425499791753436,0.5744944236197882,0.7203277569531212,0.8800499791753436,1.0536610902864545,1.241161090286455,1.4425499791753436,1.6578277569531212,1.8869944236197882,2.1300499791753436,2.3869944236197878,2.6578277569531217,2.9425499791753436,3.2411610902864543,3.553661090286455,3.8800499791753436],[-0.16326530612244897,-0.15632086167800452,-0.1354875283446712,-0.10076530612244897,-0.05215419501133786,0.010345804988662166,0.08673469387755103,0.17701247165532888,0.2811791383219955,0.39923469387755106,0.5311791383219956,0.6770124716553287,0.8367346938775511,1.010345804988662,1.1978458049886624,1.399234693877551,1.6145124716553287,1.8436791383219957,2.086734693877551,2.343679138321995,2.614512471655329,2.899234693877551,3.1978458049886616,3.5103458049886624,3.836734693877551],[-0.21324448146605576,-0.20630003702161132,-0.185466703688278,-0.15074448146605576,-0.10213337035494466,-0.03963337035494463,0.03675551853394424,0.12703329631172208,0.23119996297838866,0.3492555185339442,0.48119996297838874,0.6270332963117219,0.7867555185339442,0.9603666296450551,1.1478666296450557,1.3492555185339443,1.564533296311722,1.793699962978389,2.036755518533944,2.2936999629783883,2.564533296311722,2.849255518533944,3.147866629645055,3.4603666296450557,3.786755518533944],[-0.2698875468554769,-0.26294310241103247,-0.2421097690776991,-0.2073875468554769,-0.15877643574436578,-0.09627643574436576,-0.01988754685547689,0.07039023092230096,0.17455689758896753,0.2926124531445231,0.42455689758896764,0.5703902309223008,0.7301124531445231,0.903723564255634,1.0912235642556345,1.292612453144523,1.5078902309223008,1.7370568975889678,1.980112453144523,2.2370568975889675,2.5078902309223015,2.792612453144523,3.0912235642556336,3.4037235642556345,3.730112453144523],[-0.33319450229071224,-0.3262500578462678,-0.30541672451293445,-0.27069450229071224,-0.22208339117960113,-0.1595833911796011,-0.08319450229071224,0.00708327548706561,0.11124994215373218,0.22930549770928776,0.3612499421537323,0.5070832754870654,0.6668054977092878,0.8404166088203987,1.0279166088203993,1.2293054977092877,1.4445832754870653,1.6737499421537323,1.9168054977092877,2.173749942153732,2.4445832754870658,2.7293054977092877,3.0279166088203984,3.3404166088203993,3.6668054977092877],[-0.4031653477717618,-0.39622090332731735,-0.375387569993984,-0.3406653477717618,-0.29205423666065067,-0.22955423666065064,-0.15316534777176177,-0.06288756999398393,0.04127909667268265,0.15933465222823823,0.29127909667268276,0.4371124300060159,0.5968346522282382,0.7704457633393491,0.9579457633393496,1.1593346522282382,1.3746124300060159,1.6037790966726828,1.8468346522282382,2.1037790966726826,2.3746124300060165,2.6593346522282384,2.957945763339349,3.27044576333935,3.5968346522282384],[-0.47980008329862556,-0.47285563885418114,-0.45202230552084777,-0.41730008329862556,-0.36868897218751445,-0.3061889721875144,-0.22980008329862556,-0.1395223055208477,-0.03535563885418114,0.08269991670137444,0.21464436114581897,0.3604776944791521,0.5201999167013744,0.6938110278124854,0.8813110278124858,1.0826999167013744,1.2979776944791521,1.527144361145819,1.7701999167013744,2.027144361145819,2.297977694479153,2.582699916701374,2.881311027812485,3.193811027812486,3.520199916701374],[-0.5630987088713036,-0.5561542644268592,-0.5353209310935259,-0.5005987088713036,-0.45198759776019254,-0.3894875977601925,-0.31309870887130364,-0.2228209310935258,-0.11865426442685922,-0.0005987088713036437,0.1313457355731409,0.27717906890647404,0.43690129112869636,0.6105124022398073,0.7980124022398077,0.9994012911286964,1.2146790689064741,1.443845735573141,1.6869012911286965,1.9438457355731407,2.2146790689064746,2.4994012911286965,2.798012402239807,3.110512402239808,3.4369012911286965],[-0.6530612244897959,-0.6461167800453514,-0.6252834467120181,-0.5905612244897959,-0.5419501133786848,-0.4794501133786847,-0.40306122448979587,-0.312783446712018,-0.20861678004535145,-0.09056122448979587,0.041383219954648665,0.1872165532879818,0.34693877551020413,0.5205498866213151,0.7080498866213155,0.9094387755102041,1.124716553287982,1.3538832199546489,1.5969387755102042,1.8538832199546484,2.1247165532879824,2.4094387755102042,2.708049886621315,3.020549886621316,3.3469387755102042],[-0.7496876301541024,-0.742743185709658,-0.7219098523763247,-0.6871876301541024,-0.6385765190429913,-0.5760765190429913,-0.49968763015410245,-0.4094098523763246,-0.305243185709658,-0.18718763015410245,-0.055243185709657916,0.09059014762367523,0.25031236984589755,0.4239234809570085,0.6114234809570089,0.8128123698458976,1.0280901476236752,1.2572568142903422,1.5003123698458976,1.7572568142903418,2.0280901476236757,2.3128123698458976,2.6114234809570083,2.923923480957009,3.2503123698458976],[-0.852977925864223,-0.8460334814197786,-0.8252001480864453,-0.790477925864223,-0.741866814753112,-0.6793668147531119,-0.602977925864223,-0.5127001480864453,-0.40853348141977863,-0.29047792586422305,-0.15853348141977852,-0.012700148086445373,0.14702207413577695,0.3206331852468879,0.5081331852468883,0.709522074135777,0.9247998519135546,1.1539665185802215,1.3970220741357768,1.653966518580221,1.924799851913555,2.209522074135777,2.5081331852468876,2.8206331852468884,3.147022074135777],[-0.9629321116201582,-0.9559876671757138,-0.9351543338423804,-0.9004321116201582,-0.8518210005090472,-0.7893210005090471,-0.7129321116201582,-0.6226543338423804,-0.5184876671757138,-0.40043211162015824,-0.2684876671757137,-0.12265433384238056,0.03706788837984176,0.2106789994909527,0.39817899949095314,0.5995678883798418,0.8148456661576194,1.0440123328242863,1.2870678883798417,1.5440123328242858,1.8148456661576198,2.0995678883798417,2.3981789994909524,2.7106789994909533,3.0370678883798417],[-1.0795501874219076,-1.0726057429774631,-1.0517724096441299,-1.0170501874219076,-0.9684390763107964,-0.9059390763107964,-0.8295501874219076,-0.7392724096441297,-0.6351057429774631,-0.5170501874219076,-0.38510574297746303,-0.23927240964412988,-0.07955018742190756,0.09406092368920338,0.2815609236892038,0.48294981257809244,0.6982275903558701,0.9273942570225371,1.1704498125780924,1.4273942570225366,1.6982275903558706,1.9829498125780924,2.281560923689203,2.594060923689204,2.9204498125780924],[-1.202832153269471,-1.1958877088250266,-1.1750543754916933,-1.140332153269471,-1.0917210421583599,-1.0292210421583599,-0.952832153269471,-0.8625543754916931,-0.7583877088250266,-0.640332153269471,-0.5083877088250265,-0.36255437549169334,-0.20283215326947102,-0.029221042158360078,0.15827895784164037,0.359667846730529,0.5749456245083067,0.8041122911749736,1.047167846730529,1.3041122911749732,1.574945624508307,1.859667846730529,2.15827895784164,2.470778957841641,2.797167846730529],[-1.332778009162849,-1.3258335647184045,-1.3050002313850713,-1.270278009162849,-1.2216668980517378,-1.1591668980517378,-1.082778009162849,-0.992500231385071,-0.8883335647184045,-0.7702780091628489,-0.6383335647184044,-0.49250023138507126,-0.33277800916284894,-0.159166898051738,0.02833310194826244,0.22972199083715106,0.44499976861492874,0.6741664352815957,0.9172219908371511,1.1741664352815953,1.4449997686149292,1.729721990837151,2.0283331019482618,2.3408331019482627,2.667221990837151],[-1.4693877551020407,-1.4624433106575963,-1.441609977324263,-1.4068877551020407,-1.3582766439909295,-1.2957766439909295,-1.2193877551020407,-1.1291099773242628,-1.0249433106575963,-0.9068877551020407,-0.7749433106575961,-0.629109977324263,-0.46938775510204067,-0.29577664399092973,-0.10827664399092929,0.09311224489795933,0.308390022675737,0.537556689342404,0.7806122448979593,1.0375566893424035,1.3083900226757375,1.5931122448979593,1.89172335600907,2.204223356009071,2.5306122448979593],[-1.612661391087047,-1.6057169466426027,-1.5848836133092694,-1.550161391087047,-1.501550279975936,-1.439050279975936,-1.362661391087047,-1.2723836133092692,-1.1682169466426027,-1.050161391087047,-0.9182169466426026,-0.7723836133092694,-0.6126613910870471,-0.43905027997593615,-0.2515502799759357,-0.05016139108704709,0.1651163866907306,0.39428305335739755,0.6373386089129529,0.8942830533573971,1.165116386690731,1.449838608912953,1.7484497200240636,2.0609497200240643,2.3873386089129527],[-1.7625989171178678,-1.7556544726734233,-1.73482113934009,-1.7000989171178678,-1.6514878060067566,-1.5889878060067566,-1.5125989171178678,-1.4223211393400899,-1.3181544726734233,-1.2000989171178678,-1.0681544726734233,-0.9223211393400901,-0.7625989171178678,-0.5889878060067568,-0.4014878060067564,-0.20009891711786776,0.01517886065990992,0.24434552732657688,0.48740108288213224,0.7443455273265764,1.0151788606599104,1.2999010828821322,1.598512193993243,1.9110121939932438,2.2374010828821325],[-1.9192003331945022,-1.9122558887500578,-1.8914225554167245,-1.8567003331945022,-1.808089222083391,-1.745589222083391,-1.6692003331945022,-1.5789225554167243,-1.4747558887500578,-1.3567003331945022,-1.2247558887500576,-1.0789225554167245,-0.9192003331945022,-0.7455892220833913,-0.5580892220833908,-0.35670033319450223,-0.14142255541672455,0.08774411124994241,0.33079966680549777,0.587744111249942,0.8585774445832759,1.1432996668054978,1.4419107779166085,1.7544107779166094,2.0807996668054978],[-2.0824656393169514,-2.0755211948725067,-2.0546878615391737,-2.0199656393169514,-1.9713545282058402,-1.9088545282058402,-1.8324656393169514,-1.7421878615391735,-1.638021194872507,-1.5199656393169514,-1.3880211948725067,-1.2421878615391737,-1.0824656393169514,-0.9088545282058405,-0.72135452820584,-0.5199656393169514,-0.3046878615391737,-0.07552119487250675,0.1675343606830486,0.4244788051274928,0.6953121384608267,0.9800343606830486,1.2786454717941593,1.5911454717941602,1.9175343606830486],[-2.2523948354852146,-2.24545039104077,-2.224617057707437,-2.1898948354852146,-2.1412837243741034,-2.0787837243741034,-2.0023948354852146,-1.9121170577074367,-1.8079503910407702,-1.6898948354852146,-1.55795039104077,-1.412117057707437,-1.2523948354852146,-1.0787837243741036,-0.8912837243741032,-0.6898948354852146,-0.4746170577074369,-0.24545039104076993,-0.002394835485214575,0.2545496089592296,0.5253829422925635,0.8101051645147854,1.1087162756258961,1.421216275625897,1.7476051645147854],[-2.4289879216992913,-2.4220434772548467,-2.4012101439215137,-2.3664879216992913,-2.31787681058818,-2.25537681058818,-2.1789879216992913,-2.0887101439215137,-1.984543477254847,-1.8664879216992913,-1.7345434772548467,-1.5887101439215137,-1.4289879216992913,-1.2553768105881804,-1.06787681058818,-0.8664879216992913,-0.6512101439215137,-0.4220434772548467,-0.17898792169929134,0.07795652274515286,0.3487898560784868,0.6335120783007087,0.9321231894118194,1.2446231894118203,1.5710120783007087],[-2.6122448979591835,-2.605300453514739,-2.584467120181406,-2.5497448979591835,-2.5011337868480723,-2.4386337868480723,-2.3622448979591835,-2.271967120181406,-2.1678004535147393,-2.0497448979591835,-1.9178004535147388,-1.7719671201814058,-1.6122448979591835,-1.4386337868480725,-1.251133786848072,-1.0497448979591835,-0.8344671201814058,-0.6053004535147388,-0.36224489795918347,-0.10530045351473927,0.16553287981859466,0.45025510204081653,0.7488662131519273,1.0613662131519281,1.3877551020408165],[-2.8021657642648896,-2.795221319820445,-2.774387986487112,-2.7396657642648896,-2.6910546531537785,-2.6285546531537785,-2.5521657642648896,-2.461887986487112,-2.3577213198204454,-2.2396657642648896,-2.107721319820445,-1.961887986487112,-1.8021657642648896,-1.6285546531537787,-1.4410546531537782,-1.2396657642648896,-1.024387986487112,-0.795221319820445,-0.5521657642648896,-0.2952213198204454,-0.02438798648711149,0.2603342357351104,0.5589453468462211,0.871445346846222,1.1978342357351104],[-2.99875052061641,-2.991806076171965,-2.970972742838632,-2.93625052061641,-2.8876394095052986,-2.8251394095052986,-2.74875052061641,-2.658472742838632,-2.554306076171965,-2.43625052061641,-2.304306076171965,-2.158472742838632,-1.9987505206164098,-1.8251394095052988,-1.6376394095052984,-1.4362505206164098,-1.220972742838632,-0.9918060761719651,-0.7487505206164098,-0.4918060761719656,-0.22097274283863166,0.06374947938359021,0.36236059049470093,0.6748605904947018,1.0012494793835902],[-3.2019991670137444,-3.1950547225693,-3.1742213892359668,-3.1394991670137444,-3.0908880559026333,-3.0283880559026333,-2.9519991670137444,-2.8617213892359668,-2.7575547225693002,-2.6394991670137444,-2.5075547225693,-2.3617213892359668,-2.2019991670137444,-2.0283880559026333,-1.840888055902633,-1.6394991670137444,-1.4242213892359668,-1.1950547225692998,-0.9519991670137444,-0.6950547225693002,-0.4242213892359663,-0.13949916701374443,0.1591119440973663,0.4716119440973672,0.7980008329862556],[-3.411911703456892,-3.4049672590124476,-3.3841339256791145,-3.349411703456892,-3.300800592345781,-3.238300592345781,-3.161911703456892,-3.0716339256791145,-2.967467259012448,-2.849411703456892,-2.7174672590124476,-2.5716339256791145,-2.411911703456892,-2.238300592345781,-2.050800592345781,-1.8494117034568922,-1.6341339256791145,-1.4049672590124476,-1.1619117034568922,-0.904967259012448,-0.6341339256791141,-0.3494117034568922,-0.05080059234578149,0.2616994076542194,0.5880882965431078],[-3.628488129945856,-3.621543685501411,-3.600710352168078,-3.565988129945856,-3.5173770188347446,-3.4548770188347446,-3.378488129945856,-3.288210352168078,-3.184043685501411,-3.065988129945856,-2.934043685501411,-2.788210352168078,-2.628488129945856,-2.454877018834745,-2.267377018834744,-2.065988129945856,-1.850710352168078,-1.6215436855014111,-1.3784881299458558,-1.1215436855014116,-0.8507103521680777,-0.5659881299458558,-0.2673770188347451,0.045122981165255815,0.3715118700541442],[-3.851728446480633,-3.8447840020361883,-3.8239506687028553,-3.789228446480633,-3.740617335369522,-3.678117335369522,-3.601728446480633,-3.5114506687028553,-3.4072840020361888,-3.289228446480633,-3.1572840020361883,-3.0114506687028553,-2.851728446480633,-2.678117335369522,-2.490617335369522,-2.289228446480633,-2.0739506687028553,-1.8447840020361883,-1.601728446480633,-1.3447840020361888,-1.0739506687028548,-0.789228446480633,-0.49061733536952223,-0.17811733536952135,0.14827155351936705],[-4.081632653061225,-4.07468820861678,-4.053854875283447,-4.019132653061225,-3.9705215419501134,-3.9080215419501134,-3.8316326530612246,-3.741354875283447,-3.63718820861678,-3.5191326530612246,-3.38718820861678,-3.241354875283447,-3.0816326530612246,-2.908021541950114,-2.720521541950113,-2.5191326530612246,-2.303854875283447,-2.07468820861678,-1.8316326530612246,-1.5746882086167804,-1.3038548752834465,-1.0191326530612246,-0.7205215419501139,-0.408021541950113,-0.08163265306122458],[-4.31820074968763,-4.311256305243186,-4.290422971909853,-4.25570074968763,-4.2070896385765195,-4.1445896385765195,-4.06820074968763,-3.9779229719098526,-3.8737563052431856,-3.7557007496876302,-3.6237563052431856,-3.4779229719098526,-3.3182007496876302,-3.1445896385765195,-2.9570896385765186,-2.7557007496876302,-2.5404229719098526,-2.3112563052431856,-2.0682007496876302,-1.811256305243186,-1.5404229719098521,-1.2557007496876302,-0.9570896385765195,-0.6445896385765186,-0.31820074968763024],[-4.5614327363598495,-4.554488291915405,-4.533654958582072,-4.4989327363598495,-4.450321625248739,-4.387821625248739,-4.3114327363598495,-4.221154958582072,-4.116988291915405,-3.9989327363598495,-3.866988291915405,-3.721154958582072,-3.5614327363598495,-3.3878216252487388,-3.200321625248738,-2.9989327363598495,-2.783654958582072,-2.554488291915405,-2.3114327363598495,-2.0544882919154053,-1.7836549585820713,-1.4989327363598495,-1.2003216252487388,-0.8878216252487379,-0.5614327363598495],[-4.811328613077884,-4.804384168633439,-4.783550835300106,-4.748828613077884,-4.700217501966773,-4.637717501966773,-4.561328613077884,-4.471050835300106,-4.366884168633439,-4.248828613077884,-4.116884168633439,-3.9710508353001064,-3.811328613077884,-3.6377175019667733,-3.4502175019667725,-3.248828613077884,-3.0335508353001064,-2.8043841686334394,-2.561328613077884,-2.30438416863344,-2.033550835300106,-1.748828613077884,-1.4502175019667733,-1.1377175019667725,-0.8113286130778841],[-5.067888379841732,-5.060943935397288,-5.040110602063955,-5.005388379841732,-4.9567772687306215,-4.8942772687306215,-4.817888379841732,-4.727610602063955,-4.623443935397288,-4.505388379841732,-4.373443935397288,-4.227610602063955,-4.067888379841732,-3.8942772687306215,-3.7067772687306206,-3.5053883798417322,-3.2901106020639546,-3.0609439353972876,-2.8178883798417322,-2.560943935397288,-2.290110602063954,-2.0053883798417322,-1.7067772687306215,-1.3942772687306206,-1.0678883798417322],[-5.331112036651396,-5.324167592206951,-5.303334258873618,-5.268612036651396,-5.220000925540285,-5.157500925540285,-5.081112036651396,-4.990834258873618,-4.886667592206951,-4.768612036651396,-4.636667592206951,-4.490834258873618,-4.331112036651396,-4.157500925540285,-3.970000925540284,-3.7686120366513958,-3.553334258873618,-3.324167592206951,-3.0811120366513958,-2.8241675922069516,-2.5533342588736176,-2.2686120366513958,-1.970000925540285,-1.6575009255402842,-1.3311120366513958],[-5.600999583506873,-5.594055139062428,-5.573221805729095,-5.538499583506873,-5.489888472395762,-5.427388472395762,-5.350999583506873,-5.260721805729095,-5.156555139062428,-5.038499583506873,-4.906555139062428,-4.760721805729095,-4.600999583506873,-4.427388472395762,-4.239888472395761,-4.038499583506873,-3.823221805729095,-3.5940551390624282,-3.350999583506873,-3.0940551390624287,-2.8232218057290948,-2.538499583506873,-2.239888472395762,-1.9273884723957613,-1.6009995835068729],[-5.877551020408163,-5.870606575963718,-5.849773242630385,-5.815051020408163,-5.766439909297052,-5.703939909297052,-5.627551020408163,-5.537273242630385,-5.433106575963718,-5.315051020408163,-5.183106575963718,-5.037273242630385,-4.877551020408163,-4.703939909297052,-4.516439909297051,-4.315051020408163,-4.099773242630385,-3.870606575963718,-3.6275510204081627,-3.3706065759637185,-3.0997732426303846,-2.8150510204081627,-2.516439909297052,-2.203939909297051,-1.8775510204081627],[-6.160766347355268,-6.153821902910823,-6.13298856957749,-6.098266347355268,-6.049655236244157,-5.987155236244157,-5.910766347355268,-5.82048856957749,-5.716321902910823,-5.598266347355268,-5.466321902910823,-5.32048856957749,-5.160766347355268,-4.987155236244157,-4.799655236244156,-4.598266347355268,-4.38298856957749,-4.153821902910823,-3.910766347355268,-3.6538219029108236,-3.3829885695774897,-3.098266347355268,-2.799655236244157,-2.4871552362441562,-2.160766347355268],[-6.450645564348188,-6.443701119903744,-6.422867786570411,-6.388145564348188,-6.339534453237078,-6.277034453237078,-6.200645564348188,-6.110367786570411,-6.006201119903744,-5.888145564348188,-5.756201119903744,-5.610367786570411,-5.450645564348188,-5.277034453237078,-5.089534453237077,-4.888145564348188,-4.672867786570411,-4.443701119903744,-4.200645564348188,-3.943701119903744,-3.6728677865704102,-3.3881455643481884,-3.0895344532370776,-2.7770344532370768,-2.4506455643481884],[-6.7471886713869225,-6.740244226942478,-6.719410893609145,-6.6846886713869225,-6.636077560275812,-6.573577560275812,-6.4971886713869225,-6.406910893609145,-6.302744226942478,-6.1846886713869225,-6.052744226942478,-5.906910893609145,-5.7471886713869225,-5.573577560275812,-5.386077560275811,-5.1846886713869225,-4.969410893609145,-4.740244226942478,-4.4971886713869225,-4.240244226942478,-3.9694108936091443,-3.6846886713869225,-3.3860775602758117,-3.073577560275811,-2.7471886713869225],[-7.050395668471471,-7.043451224027026,-7.022617890693693,-6.987895668471471,-6.93928455736036,-6.87678455736036,-6.800395668471471,-6.710117890693693,-6.605951224027026,-6.487895668471471,-6.355951224027026,-6.210117890693693,-6.050395668471471,-5.87678455736036,-5.689284557360359,-5.487895668471471,-5.272617890693693,-5.043451224027026,-4.800395668471471,-4.543451224027027,-4.272617890693693,-3.987895668471471,-3.6892845573603603,-3.3767845573603594,-3.050395668471471],[-7.360266555601832,-7.353322111157388,-7.332488777824055,-7.297766555601832,-7.249155444490722,-7.186655444490722,-7.110266555601832,-7.019988777824055,-6.915822111157388,-6.797766555601832,-6.665822111157388,-6.519988777824055,-6.360266555601832,-6.186655444490722,-5.999155444490721,-5.797766555601832,-5.582488777824055,-5.353322111157388,-5.110266555601832,-4.853322111157388,-4.582488777824054,-4.297766555601832,-3.9991554444907216,-3.6866554444907207,-3.3602665556018323],[-7.676801332778009,-7.669856888333564,-7.649023555000231,-7.614301332778009,-7.565690221666898,-7.503190221666898,-7.426801332778009,-7.336523555000231,-7.232356888333564,-7.114301332778009,-6.982356888333564,-6.836523555000231,-6.676801332778009,-6.503190221666898,-6.315690221666897,-6.114301332778009,-5.899023555000231,-5.669856888333564,-5.426801332778009,-5.169856888333564,-4.89902355500023,-4.614301332778009,-4.315690221666898,-4.003190221666897,-3.676801332778009],[-8.0,-7.993055555555555,-7.972222222222222,-7.9375,-7.888888888888889,-7.826388888888889,-7.75,-7.659722222222222,-7.555555555555555,-7.4375,-7.305555555555555,-7.159722222222222,-7.0,-6.826388888888889,-6.638888888888888,-6.4375,-6.222222222222222,-5.993055555555555,-5.75,-5.493055555555555,-5.222222222222221,-4.9375,-4.638888888888889,-4.326388888888888,-4.0]],"type":"contour"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The same <code>zs</code> data can be achieved by broadcasting and then collecting as follows:</p>
<div class="cell" data-hold="true" data-execution_count="28">
<div class="sourceCode cell-code" id="cb31"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb31-1"><a href="#cb31-1" aria-hidden="true" tabindex="-1"></a><span class="fu">f</span>(x,y) <span class="op">=</span> x<span class="op">^</span><span class="fl">2</span> <span class="op">-</span> <span class="fl">2</span>y<span class="op">^</span><span class="fl">2</span></span>
<span id="cb31-2"><a href="#cb31-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb31-3"><a href="#cb31-3" aria-hidden="true" tabindex="-1"></a>xs <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>,<span class="fl">2</span>,length<span class="op">=</span><span class="fl">25</span>)</span>
<span id="cb31-4"><a href="#cb31-4" aria-hidden="true" tabindex="-1"></a>ys <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>,<span class="fl">2</span>, length<span class="op">=</span><span class="fl">50</span>)</span>
<span id="cb31-5"><a href="#cb31-5" aria-hidden="true" tabindex="-1"></a>zs <span class="op">=</span> <span class="fu">collect</span>(<span class="fu">eachrow</span>(<span class="fu">f</span>.(xs<span class="op">'</span>, ys)))</span>
<span id="cb31-6"><a href="#cb31-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb31-7"><a href="#cb31-7" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(</span>
<span id="cb31-8"><a href="#cb31-8" aria-hidden="true" tabindex="-1"></a> x<span class="op">=</span>xs, y<span class="op">=</span>ys, z<span class="op">=</span>zs,</span>
<span id="cb31-9"><a href="#cb31-9" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"contour"</span></span>
<span id="cb31-10"><a href="#cb31-10" aria-hidden="true" tabindex="-1"></a>)</span>
<span id="cb31-11"><a href="#cb31-11" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb31-12"><a href="#cb31-12" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="28">
<div class="" style="height: 100vh;" id="parent-of-3RWJxNlyhC">
<div class="" style="height: 100%;" id="3RWJxNlyhC"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("3RWJxNlyhC", [{"x":[0.0,0.08333333333333333,0.16666666666666666,0.25,0.3333333333333333,0.4166666666666667,0.5,0.5833333333333334,0.6666666666666666,0.75,0.8333333333333334,0.9166666666666666,1.0,1.0833333333333333,1.1666666666666667,1.25,1.3333333333333333,1.4166666666666667,1.5,1.5833333333333333,1.6666666666666667,1.75,1.8333333333333333,1.9166666666666667,2.0],"y":[0.0,0.04081632653061224,0.08163265306122448,0.12244897959183673,0.16326530612244897,0.20408163265306123,0.24489795918367346,0.2857142857142857,0.32653061224489793,0.3673469387755102,0.40816326530612246,0.4489795918367347,0.4897959183673469,0.5306122448979592,0.5714285714285714,0.6122448979591837,0.6530612244897959,0.6938775510204082,0.7346938775510204,0.7755102040816326,0.8163265306122449,0.8571428571428571,0.8979591836734694,0.9387755102040817,0.9795918367346939,1.0204081632653061,1.0612244897959184,1.1020408163265305,1.1428571428571428,1.183673469387755,1.2244897959183674,1.2653061224489797,1.3061224489795917,1.346938775510204,1.3877551020408163,1.4285714285714286,1.469387755102041,1.510204081632653,1.5510204081632653,1.5918367346938775,1.6326530612244898,1.6734693877551021,1.7142857142857142,1.7551020408163265,1.7959183673469388,1.836734693877551,1.8775510204081634,1.9183673469387754,1.9591836734693877,2.0],"z":[[0.0,0.006944444444444444,0.027777777777777776,0.0625,0.1111111111111111,0.17361111111111113,0.25,0.34027777777777785,0.4444444444444444,0.5625,0.6944444444444445,0.8402777777777777,1.0,1.173611111111111,1.3611111111111114,1.5625,1.7777777777777777,2.0069444444444446,2.25,2.506944444444444,2.777777777777778,3.0625,3.3611111111111107,3.6736111111111116,4.0],[-0.0033319450229071213,0.0036124994215373228,0.024445832754870656,0.05916805497709288,0.10777916608820398,0.170279166088204,0.24666805497709288,0.3369458327548707,0.4411124994215373,0.5591680549770929,0.6911124994215374,0.8369458327548706,0.9966680549770929,1.170279166088204,1.3577791660882044,1.559168054977093,1.7744458327548707,2.0036124994215374,2.2466680549770928,2.503612499421537,2.774445832754871,3.0591680549770928,3.3577791660882035,3.6702791660882044,3.9966680549770928],[-0.013327780091628485,-0.006383335647184041,0.014449997686149291,0.04917221990837151,0.09778333101948262,0.16028333101948264,0.2366722199083715,0.32694999768614935,0.4311166643528159,0.5491722199083715,0.681116664352816,0.8269499976861492,0.9866722199083715,1.1602833310194824,1.3477833310194829,1.5491722199083715,1.7644499976861492,1.9936166643528161,2.2366722199083715,2.4936166643528157,2.7644499976861496,3.0491722199083715,3.3477833310194822,3.660283331019483,3.9866722199083715],[-0.029987505206164097,-0.023043060761719653,-0.002209727428386321,0.0325124947938359,0.08112360590494701,0.14362360590494705,0.2200124947938359,0.31029027257161373,0.4144569392382803,0.5325124947938359,0.6644569392382804,0.8102902725716136,0.9700124947938359,1.143623605904947,1.3311236059049474,1.532512494793836,1.7477902725716137,1.9769569392382806,2.2200124947938358,2.47695693923828,2.747790272571614,3.0325124947938358,3.3311236059049465,3.6436236059049474,3.9700124947938358],[-0.05331112036651394,-0.0463666759220695,-0.025533342588736165,0.00918887963348606,0.057799990744597164,0.12029999074459718,0.19668887963348605,0.2869666574112639,0.3911333240779305,0.509188879633486,0.6411333240779306,0.7869666574112637,0.946688879633486,1.120299990744597,1.3077999907445974,1.509188879633486,1.7244666574112637,1.9536333240779307,2.196688879633486,2.4536333240779302,2.724466657411264,3.009188879633486,3.3077999907445967,3.6202999907445976,3.946688879633486],[-0.08329862557267806,-0.07635418112823361,-0.05552084779490028,-0.02079862557267806,0.027812485538433046,0.09031248553843307,0.16670137442732194,0.2569791522050998,0.36114581887176633,0.4792013744273219,0.6111458188717664,0.7569791522050996,0.9167013744273219,1.090312485538433,1.2778124855384334,1.479201374427322,1.6944791522050997,1.9236458188717667,2.166701374427322,2.423645818871766,2.6944791522051,2.979201374427322,3.2778124855384325,3.5903124855384334,3.916701374427322],[-0.11995002082465639,-0.11300557638021194,-0.09217224304687861,-0.05745002082465639,-0.008838909713545284,0.05366109028645474,0.1300499791753436,0.22032775695312146,0.32449442361978803,0.4425499791753436,0.5744944236197882,0.7203277569531212,0.8800499791753436,1.0536610902864545,1.241161090286455,1.4425499791753436,1.6578277569531212,1.8869944236197882,2.1300499791753436,2.3869944236197878,2.6578277569531217,2.9425499791753436,3.2411610902864543,3.553661090286455,3.8800499791753436],[-0.16326530612244897,-0.15632086167800452,-0.1354875283446712,-0.10076530612244897,-0.05215419501133786,0.010345804988662166,0.08673469387755103,0.17701247165532888,0.2811791383219955,0.39923469387755106,0.5311791383219956,0.6770124716553287,0.8367346938775511,1.010345804988662,1.1978458049886624,1.399234693877551,1.6145124716553287,1.8436791383219957,2.086734693877551,2.343679138321995,2.614512471655329,2.899234693877551,3.1978458049886616,3.5103458049886624,3.836734693877551],[-0.21324448146605576,-0.20630003702161132,-0.185466703688278,-0.15074448146605576,-0.10213337035494466,-0.03963337035494463,0.03675551853394424,0.12703329631172208,0.23119996297838866,0.3492555185339442,0.48119996297838874,0.6270332963117219,0.7867555185339442,0.9603666296450551,1.1478666296450557,1.3492555185339443,1.564533296311722,1.793699962978389,2.036755518533944,2.2936999629783883,2.564533296311722,2.849255518533944,3.147866629645055,3.4603666296450557,3.786755518533944],[-0.2698875468554769,-0.26294310241103247,-0.2421097690776991,-0.2073875468554769,-0.15877643574436578,-0.09627643574436576,-0.01988754685547689,0.07039023092230096,0.17455689758896753,0.2926124531445231,0.42455689758896764,0.5703902309223008,0.7301124531445231,0.903723564255634,1.0912235642556345,1.292612453144523,1.5078902309223008,1.7370568975889678,1.980112453144523,2.2370568975889675,2.5078902309223015,2.792612453144523,3.0912235642556336,3.4037235642556345,3.730112453144523],[-0.33319450229071224,-0.3262500578462678,-0.30541672451293445,-0.27069450229071224,-0.22208339117960113,-0.1595833911796011,-0.08319450229071224,0.00708327548706561,0.11124994215373218,0.22930549770928776,0.3612499421537323,0.5070832754870654,0.6668054977092878,0.8404166088203987,1.0279166088203993,1.2293054977092877,1.4445832754870653,1.6737499421537323,1.9168054977092877,2.173749942153732,2.4445832754870658,2.7293054977092877,3.0279166088203984,3.3404166088203993,3.6668054977092877],[-0.4031653477717618,-0.39622090332731735,-0.375387569993984,-0.3406653477717618,-0.29205423666065067,-0.22955423666065064,-0.15316534777176177,-0.06288756999398393,0.04127909667268265,0.15933465222823823,0.29127909667268276,0.4371124300060159,0.5968346522282382,0.7704457633393491,0.9579457633393496,1.1593346522282382,1.3746124300060159,1.6037790966726828,1.8468346522282382,2.1037790966726826,2.3746124300060165,2.6593346522282384,2.957945763339349,3.27044576333935,3.5968346522282384],[-0.47980008329862556,-0.47285563885418114,-0.45202230552084777,-0.41730008329862556,-0.36868897218751445,-0.3061889721875144,-0.22980008329862556,-0.1395223055208477,-0.03535563885418114,0.08269991670137444,0.21464436114581897,0.3604776944791521,0.5201999167013744,0.6938110278124854,0.8813110278124858,1.0826999167013744,1.2979776944791521,1.527144361145819,1.7701999167013744,2.027144361145819,2.297977694479153,2.582699916701374,2.881311027812485,3.193811027812486,3.520199916701374],[-0.5630987088713036,-0.5561542644268592,-0.5353209310935259,-0.5005987088713036,-0.45198759776019254,-0.3894875977601925,-0.31309870887130364,-0.2228209310935258,-0.11865426442685922,-0.0005987088713036437,0.1313457355731409,0.27717906890647404,0.43690129112869636,0.6105124022398073,0.7980124022398077,0.9994012911286964,1.2146790689064741,1.443845735573141,1.6869012911286965,1.9438457355731407,2.2146790689064746,2.4994012911286965,2.798012402239807,3.110512402239808,3.4369012911286965],[-0.6530612244897959,-0.6461167800453514,-0.6252834467120181,-0.5905612244897959,-0.5419501133786848,-0.4794501133786847,-0.40306122448979587,-0.312783446712018,-0.20861678004535145,-0.09056122448979587,0.041383219954648665,0.1872165532879818,0.34693877551020413,0.5205498866213151,0.7080498866213155,0.9094387755102041,1.124716553287982,1.3538832199546489,1.5969387755102042,1.8538832199546484,2.1247165532879824,2.4094387755102042,2.708049886621315,3.020549886621316,3.3469387755102042],[-0.7496876301541024,-0.742743185709658,-0.7219098523763247,-0.6871876301541024,-0.6385765190429913,-0.5760765190429913,-0.49968763015410245,-0.4094098523763246,-0.305243185709658,-0.18718763015410245,-0.055243185709657916,0.09059014762367523,0.25031236984589755,0.4239234809570085,0.6114234809570089,0.8128123698458976,1.0280901476236752,1.2572568142903422,1.5003123698458976,1.7572568142903418,2.0280901476236757,2.3128123698458976,2.6114234809570083,2.923923480957009,3.2503123698458976],[-0.852977925864223,-0.8460334814197786,-0.8252001480864453,-0.790477925864223,-0.741866814753112,-0.6793668147531119,-0.602977925864223,-0.5127001480864453,-0.40853348141977863,-0.29047792586422305,-0.15853348141977852,-0.012700148086445373,0.14702207413577695,0.3206331852468879,0.5081331852468883,0.709522074135777,0.9247998519135546,1.1539665185802215,1.3970220741357768,1.653966518580221,1.924799851913555,2.209522074135777,2.5081331852468876,2.8206331852468884,3.147022074135777],[-0.9629321116201582,-0.9559876671757138,-0.9351543338423804,-0.9004321116201582,-0.8518210005090472,-0.7893210005090471,-0.7129321116201582,-0.6226543338423804,-0.5184876671757138,-0.40043211162015824,-0.2684876671757137,-0.12265433384238056,0.03706788837984176,0.2106789994909527,0.39817899949095314,0.5995678883798418,0.8148456661576194,1.0440123328242863,1.2870678883798417,1.5440123328242858,1.8148456661576198,2.0995678883798417,2.3981789994909524,2.7106789994909533,3.0370678883798417],[-1.0795501874219076,-1.0726057429774631,-1.0517724096441299,-1.0170501874219076,-0.9684390763107964,-0.9059390763107964,-0.8295501874219076,-0.7392724096441297,-0.6351057429774631,-0.5170501874219076,-0.38510574297746303,-0.23927240964412988,-0.07955018742190756,0.09406092368920338,0.2815609236892038,0.48294981257809244,0.6982275903558701,0.9273942570225371,1.1704498125780924,1.4273942570225366,1.6982275903558706,1.9829498125780924,2.281560923689203,2.594060923689204,2.9204498125780924],[-1.202832153269471,-1.1958877088250266,-1.1750543754916933,-1.140332153269471,-1.0917210421583599,-1.0292210421583599,-0.952832153269471,-0.8625543754916931,-0.7583877088250266,-0.640332153269471,-0.5083877088250265,-0.36255437549169334,-0.20283215326947102,-0.029221042158360078,0.15827895784164037,0.359667846730529,0.5749456245083067,0.8041122911749736,1.047167846730529,1.3041122911749732,1.574945624508307,1.859667846730529,2.15827895784164,2.470778957841641,2.797167846730529],[-1.332778009162849,-1.3258335647184045,-1.3050002313850713,-1.270278009162849,-1.2216668980517378,-1.1591668980517378,-1.082778009162849,-0.992500231385071,-0.8883335647184045,-0.7702780091628489,-0.6383335647184044,-0.49250023138507126,-0.33277800916284894,-0.159166898051738,0.02833310194826244,0.22972199083715106,0.44499976861492874,0.6741664352815957,0.9172219908371511,1.1741664352815953,1.4449997686149292,1.729721990837151,2.0283331019482618,2.3408331019482627,2.667221990837151],[-1.4693877551020407,-1.4624433106575963,-1.441609977324263,-1.4068877551020407,-1.3582766439909295,-1.2957766439909295,-1.2193877551020407,-1.1291099773242628,-1.0249433106575963,-0.9068877551020407,-0.7749433106575961,-0.629109977324263,-0.46938775510204067,-0.29577664399092973,-0.10827664399092929,0.09311224489795933,0.308390022675737,0.537556689342404,0.7806122448979593,1.0375566893424035,1.3083900226757375,1.5931122448979593,1.89172335600907,2.204223356009071,2.5306122448979593],[-1.612661391087047,-1.6057169466426027,-1.5848836133092694,-1.550161391087047,-1.501550279975936,-1.439050279975936,-1.362661391087047,-1.2723836133092692,-1.1682169466426027,-1.050161391087047,-0.9182169466426026,-0.7723836133092694,-0.6126613910870471,-0.43905027997593615,-0.2515502799759357,-0.05016139108704709,0.1651163866907306,0.39428305335739755,0.6373386089129529,0.8942830533573971,1.165116386690731,1.449838608912953,1.7484497200240636,2.0609497200240643,2.3873386089129527],[-1.7625989171178678,-1.7556544726734233,-1.73482113934009,-1.7000989171178678,-1.6514878060067566,-1.5889878060067566,-1.5125989171178678,-1.4223211393400899,-1.3181544726734233,-1.2000989171178678,-1.0681544726734233,-0.9223211393400901,-0.7625989171178678,-0.5889878060067568,-0.4014878060067564,-0.20009891711786776,0.01517886065990992,0.24434552732657688,0.48740108288213224,0.7443455273265764,1.0151788606599104,1.2999010828821322,1.598512193993243,1.9110121939932438,2.2374010828821325],[-1.9192003331945022,-1.9122558887500578,-1.8914225554167245,-1.8567003331945022,-1.808089222083391,-1.745589222083391,-1.6692003331945022,-1.5789225554167243,-1.4747558887500578,-1.3567003331945022,-1.2247558887500576,-1.0789225554167245,-0.9192003331945022,-0.7455892220833913,-0.5580892220833908,-0.35670033319450223,-0.14142255541672455,0.08774411124994241,0.33079966680549777,0.587744111249942,0.8585774445832759,1.1432996668054978,1.4419107779166085,1.7544107779166094,2.0807996668054978],[-2.0824656393169514,-2.0755211948725067,-2.0546878615391737,-2.0199656393169514,-1.9713545282058402,-1.9088545282058402,-1.8324656393169514,-1.7421878615391735,-1.638021194872507,-1.5199656393169514,-1.3880211948725067,-1.2421878615391737,-1.0824656393169514,-0.9088545282058405,-0.72135452820584,-0.5199656393169514,-0.3046878615391737,-0.07552119487250675,0.1675343606830486,0.4244788051274928,0.6953121384608267,0.9800343606830486,1.2786454717941593,1.5911454717941602,1.9175343606830486],[-2.2523948354852146,-2.24545039104077,-2.224617057707437,-2.1898948354852146,-2.1412837243741034,-2.0787837243741034,-2.0023948354852146,-1.9121170577074367,-1.8079503910407702,-1.6898948354852146,-1.55795039104077,-1.412117057707437,-1.2523948354852146,-1.0787837243741036,-0.8912837243741032,-0.6898948354852146,-0.4746170577074369,-0.24545039104076993,-0.002394835485214575,0.2545496089592296,0.5253829422925635,0.8101051645147854,1.1087162756258961,1.421216275625897,1.7476051645147854],[-2.4289879216992913,-2.4220434772548467,-2.4012101439215137,-2.3664879216992913,-2.31787681058818,-2.25537681058818,-2.1789879216992913,-2.0887101439215137,-1.984543477254847,-1.8664879216992913,-1.7345434772548467,-1.5887101439215137,-1.4289879216992913,-1.2553768105881804,-1.06787681058818,-0.8664879216992913,-0.6512101439215137,-0.4220434772548467,-0.17898792169929134,0.07795652274515286,0.3487898560784868,0.6335120783007087,0.9321231894118194,1.2446231894118203,1.5710120783007087],[-2.6122448979591835,-2.605300453514739,-2.584467120181406,-2.5497448979591835,-2.5011337868480723,-2.4386337868480723,-2.3622448979591835,-2.271967120181406,-2.1678004535147393,-2.0497448979591835,-1.9178004535147388,-1.7719671201814058,-1.6122448979591835,-1.4386337868480725,-1.251133786848072,-1.0497448979591835,-0.8344671201814058,-0.6053004535147388,-0.36224489795918347,-0.10530045351473927,0.16553287981859466,0.45025510204081653,0.7488662131519273,1.0613662131519281,1.3877551020408165],[-2.8021657642648896,-2.795221319820445,-2.774387986487112,-2.7396657642648896,-2.6910546531537785,-2.6285546531537785,-2.5521657642648896,-2.461887986487112,-2.3577213198204454,-2.2396657642648896,-2.107721319820445,-1.961887986487112,-1.8021657642648896,-1.6285546531537787,-1.4410546531537782,-1.2396657642648896,-1.024387986487112,-0.795221319820445,-0.5521657642648896,-0.2952213198204454,-0.02438798648711149,0.2603342357351104,0.5589453468462211,0.871445346846222,1.1978342357351104],[-2.99875052061641,-2.991806076171965,-2.970972742838632,-2.93625052061641,-2.8876394095052986,-2.8251394095052986,-2.74875052061641,-2.658472742838632,-2.554306076171965,-2.43625052061641,-2.304306076171965,-2.158472742838632,-1.9987505206164098,-1.8251394095052988,-1.6376394095052984,-1.4362505206164098,-1.220972742838632,-0.9918060761719651,-0.7487505206164098,-0.4918060761719656,-0.22097274283863166,0.06374947938359021,0.36236059049470093,0.6748605904947018,1.0012494793835902],[-3.2019991670137444,-3.1950547225693,-3.1742213892359668,-3.1394991670137444,-3.0908880559026333,-3.0283880559026333,-2.9519991670137444,-2.8617213892359668,-2.7575547225693002,-2.6394991670137444,-2.5075547225693,-2.3617213892359668,-2.2019991670137444,-2.0283880559026333,-1.840888055902633,-1.6394991670137444,-1.4242213892359668,-1.1950547225692998,-0.9519991670137444,-0.6950547225693002,-0.4242213892359663,-0.13949916701374443,0.1591119440973663,0.4716119440973672,0.7980008329862556],[-3.411911703456892,-3.4049672590124476,-3.3841339256791145,-3.349411703456892,-3.300800592345781,-3.238300592345781,-3.161911703456892,-3.0716339256791145,-2.967467259012448,-2.849411703456892,-2.7174672590124476,-2.5716339256791145,-2.411911703456892,-2.238300592345781,-2.050800592345781,-1.8494117034568922,-1.6341339256791145,-1.4049672590124476,-1.1619117034568922,-0.904967259012448,-0.6341339256791141,-0.3494117034568922,-0.05080059234578149,0.2616994076542194,0.5880882965431078],[-3.628488129945856,-3.621543685501411,-3.600710352168078,-3.565988129945856,-3.5173770188347446,-3.4548770188347446,-3.378488129945856,-3.288210352168078,-3.184043685501411,-3.065988129945856,-2.934043685501411,-2.788210352168078,-2.628488129945856,-2.454877018834745,-2.267377018834744,-2.065988129945856,-1.850710352168078,-1.6215436855014111,-1.3784881299458558,-1.1215436855014116,-0.8507103521680777,-0.5659881299458558,-0.2673770188347451,0.045122981165255815,0.3715118700541442],[-3.851728446480633,-3.8447840020361883,-3.8239506687028553,-3.789228446480633,-3.740617335369522,-3.678117335369522,-3.601728446480633,-3.5114506687028553,-3.4072840020361888,-3.289228446480633,-3.1572840020361883,-3.0114506687028553,-2.851728446480633,-2.678117335369522,-2.490617335369522,-2.289228446480633,-2.0739506687028553,-1.8447840020361883,-1.601728446480633,-1.3447840020361888,-1.0739506687028548,-0.789228446480633,-0.49061733536952223,-0.17811733536952135,0.14827155351936705],[-4.081632653061225,-4.07468820861678,-4.053854875283447,-4.019132653061225,-3.9705215419501134,-3.9080215419501134,-3.8316326530612246,-3.741354875283447,-3.63718820861678,-3.5191326530612246,-3.38718820861678,-3.241354875283447,-3.0816326530612246,-2.908021541950114,-2.720521541950113,-2.5191326530612246,-2.303854875283447,-2.07468820861678,-1.8316326530612246,-1.5746882086167804,-1.3038548752834465,-1.0191326530612246,-0.7205215419501139,-0.408021541950113,-0.08163265306122458],[-4.31820074968763,-4.311256305243186,-4.290422971909853,-4.25570074968763,-4.2070896385765195,-4.1445896385765195,-4.06820074968763,-3.9779229719098526,-3.8737563052431856,-3.7557007496876302,-3.6237563052431856,-3.4779229719098526,-3.3182007496876302,-3.1445896385765195,-2.9570896385765186,-2.7557007496876302,-2.5404229719098526,-2.3112563052431856,-2.0682007496876302,-1.811256305243186,-1.5404229719098521,-1.2557007496876302,-0.9570896385765195,-0.6445896385765186,-0.31820074968763024],[-4.5614327363598495,-4.554488291915405,-4.533654958582072,-4.4989327363598495,-4.450321625248739,-4.387821625248739,-4.3114327363598495,-4.221154958582072,-4.116988291915405,-3.9989327363598495,-3.866988291915405,-3.721154958582072,-3.5614327363598495,-3.3878216252487388,-3.200321625248738,-2.9989327363598495,-2.783654958582072,-2.554488291915405,-2.3114327363598495,-2.0544882919154053,-1.7836549585820713,-1.4989327363598495,-1.2003216252487388,-0.8878216252487379,-0.5614327363598495],[-4.811328613077884,-4.804384168633439,-4.783550835300106,-4.748828613077884,-4.700217501966773,-4.637717501966773,-4.561328613077884,-4.471050835300106,-4.366884168633439,-4.248828613077884,-4.116884168633439,-3.9710508353001064,-3.811328613077884,-3.6377175019667733,-3.4502175019667725,-3.248828613077884,-3.0335508353001064,-2.8043841686334394,-2.561328613077884,-2.30438416863344,-2.033550835300106,-1.748828613077884,-1.4502175019667733,-1.1377175019667725,-0.8113286130778841],[-5.067888379841732,-5.060943935397288,-5.040110602063955,-5.005388379841732,-4.9567772687306215,-4.8942772687306215,-4.817888379841732,-4.727610602063955,-4.623443935397288,-4.505388379841732,-4.373443935397288,-4.227610602063955,-4.067888379841732,-3.8942772687306215,-3.7067772687306206,-3.5053883798417322,-3.2901106020639546,-3.0609439353972876,-2.8178883798417322,-2.560943935397288,-2.290110602063954,-2.0053883798417322,-1.7067772687306215,-1.3942772687306206,-1.0678883798417322],[-5.331112036651396,-5.324167592206951,-5.303334258873618,-5.268612036651396,-5.220000925540285,-5.157500925540285,-5.081112036651396,-4.990834258873618,-4.886667592206951,-4.768612036651396,-4.636667592206951,-4.490834258873618,-4.331112036651396,-4.157500925540285,-3.970000925540284,-3.7686120366513958,-3.553334258873618,-3.324167592206951,-3.0811120366513958,-2.8241675922069516,-2.5533342588736176,-2.2686120366513958,-1.970000925540285,-1.6575009255402842,-1.3311120366513958],[-5.600999583506873,-5.594055139062428,-5.573221805729095,-5.538499583506873,-5.489888472395762,-5.427388472395762,-5.350999583506873,-5.260721805729095,-5.156555139062428,-5.038499583506873,-4.906555139062428,-4.760721805729095,-4.600999583506873,-4.427388472395762,-4.239888472395761,-4.038499583506873,-3.823221805729095,-3.5940551390624282,-3.350999583506873,-3.0940551390624287,-2.8232218057290948,-2.538499583506873,-2.239888472395762,-1.9273884723957613,-1.6009995835068729],[-5.877551020408163,-5.870606575963718,-5.849773242630385,-5.815051020408163,-5.766439909297052,-5.703939909297052,-5.627551020408163,-5.537273242630385,-5.433106575963718,-5.315051020408163,-5.183106575963718,-5.037273242630385,-4.877551020408163,-4.703939909297052,-4.516439909297051,-4.315051020408163,-4.099773242630385,-3.870606575963718,-3.6275510204081627,-3.3706065759637185,-3.0997732426303846,-2.8150510204081627,-2.516439909297052,-2.203939909297051,-1.8775510204081627],[-6.160766347355268,-6.153821902910823,-6.13298856957749,-6.098266347355268,-6.049655236244157,-5.987155236244157,-5.910766347355268,-5.82048856957749,-5.716321902910823,-5.598266347355268,-5.466321902910823,-5.32048856957749,-5.160766347355268,-4.987155236244157,-4.799655236244156,-4.598266347355268,-4.38298856957749,-4.153821902910823,-3.910766347355268,-3.6538219029108236,-3.3829885695774897,-3.098266347355268,-2.799655236244157,-2.4871552362441562,-2.160766347355268],[-6.450645564348188,-6.443701119903744,-6.422867786570411,-6.388145564348188,-6.339534453237078,-6.277034453237078,-6.200645564348188,-6.110367786570411,-6.006201119903744,-5.888145564348188,-5.756201119903744,-5.610367786570411,-5.450645564348188,-5.277034453237078,-5.089534453237077,-4.888145564348188,-4.672867786570411,-4.443701119903744,-4.200645564348188,-3.943701119903744,-3.6728677865704102,-3.3881455643481884,-3.0895344532370776,-2.7770344532370768,-2.4506455643481884],[-6.7471886713869225,-6.740244226942478,-6.719410893609145,-6.6846886713869225,-6.636077560275812,-6.573577560275812,-6.4971886713869225,-6.406910893609145,-6.302744226942478,-6.1846886713869225,-6.052744226942478,-5.906910893609145,-5.7471886713869225,-5.573577560275812,-5.386077560275811,-5.1846886713869225,-4.969410893609145,-4.740244226942478,-4.4971886713869225,-4.240244226942478,-3.9694108936091443,-3.6846886713869225,-3.3860775602758117,-3.073577560275811,-2.7471886713869225],[-7.050395668471471,-7.043451224027026,-7.022617890693693,-6.987895668471471,-6.93928455736036,-6.87678455736036,-6.800395668471471,-6.710117890693693,-6.605951224027026,-6.487895668471471,-6.355951224027026,-6.210117890693693,-6.050395668471471,-5.87678455736036,-5.689284557360359,-5.487895668471471,-5.272617890693693,-5.043451224027026,-4.800395668471471,-4.543451224027027,-4.272617890693693,-3.987895668471471,-3.6892845573603603,-3.3767845573603594,-3.050395668471471],[-7.360266555601832,-7.353322111157388,-7.332488777824055,-7.297766555601832,-7.249155444490722,-7.186655444490722,-7.110266555601832,-7.019988777824055,-6.915822111157388,-6.797766555601832,-6.665822111157388,-6.519988777824055,-6.360266555601832,-6.186655444490722,-5.999155444490721,-5.797766555601832,-5.582488777824055,-5.353322111157388,-5.110266555601832,-4.853322111157388,-4.582488777824054,-4.297766555601832,-3.9991554444907216,-3.6866554444907207,-3.3602665556018323],[-7.676801332778009,-7.669856888333564,-7.649023555000231,-7.614301332778009,-7.565690221666898,-7.503190221666898,-7.426801332778009,-7.336523555000231,-7.232356888333564,-7.114301332778009,-6.982356888333564,-6.836523555000231,-6.676801332778009,-6.503190221666898,-6.315690221666897,-6.114301332778009,-5.899023555000231,-5.669856888333564,-5.426801332778009,-5.169856888333564,-4.89902355500023,-4.614301332778009,-4.315690221666898,-4.003190221666897,-3.676801332778009],[-8.0,-7.993055555555555,-7.972222222222222,-7.9375,-7.888888888888889,-7.826388888888889,-7.75,-7.659722222222222,-7.555555555555555,-7.4375,-7.305555555555555,-7.159722222222222,-7.0,-6.826388888888889,-6.638888888888888,-6.4375,-6.222222222222222,-5.993055555555555,-5.75,-5.493055555555555,-5.222222222222221,-4.9375,-4.638888888888889,-4.326388888888888,-4.0]],"type":"contour"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
<p>The use of just <code>f.(xs', ys)</code> or <code>f.(xs, ys')</code>, as with other plotting packages, is not effective, as <code>JSON3</code> writes matrices as vectors (with linear indexing).</p>
</section>
<section id="surface-plots" class="level2" data-number="64.10">
<h2 data-number="64.10" class="anchored" data-anchor-id="surface-plots"><span class="header-section-number">64.10</span> Surface plots</h2>
<p>The chart type “surface” allows surfaces in <span class="math inline">\(3\)</span> dimensions to be plotted.</p>
<section id="surfaces-defined-by-z-fxy" class="level3" data-number="64.10.1">
<h3 data-number="64.10.1" class="anchored" data-anchor-id="surfaces-defined-by-z-fxy"><span class="header-section-number">64.10.1</span> Surfaces defined by <span class="math inline">\(z = f(x,y)\)</span></h3>
<p>Surfaces defined through a scalar-valued function are drawn quite naturally, save for needing to express the height data (<span class="math inline">\(z\)</span> axis) using a vector of vectors, and not a matrix.</p>
<div class="cell" data-hold="true" data-execution_count="29">
<div class="sourceCode cell-code" id="cb32"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb32-1"><a href="#cb32-1" aria-hidden="true" tabindex="-1"></a><span class="fu">peaks</span>(x,y) <span class="op">=</span> <span class="fl">3</span> <span class="op">*</span> (<span class="fl">1</span><span class="op">-</span>x)<span class="op">^</span><span class="fl">2</span> <span class="op">*</span> <span class="fu">exp</span>(<span class="fu">-</span>(x<span class="op">^</span><span class="fl">2</span>) <span class="op">-</span> (y<span class="op">+</span><span class="fl">1</span>)<span class="op">^</span><span class="fl">2</span>) <span class="op">-</span></span>
<span id="cb32-2"><a href="#cb32-2" aria-hidden="true" tabindex="-1"></a> <span class="fl">10</span><span class="fu">*</span>(x<span class="op">/</span><span class="fl">5</span> <span class="op">-</span> x<span class="op">^</span><span class="fl">3</span> <span class="op">-</span> y<span class="op">^</span><span class="fl">5</span>) <span class="op">*</span> <span class="fu">exp</span>(<span class="op">-</span>x<span class="op">^</span><span class="fl">2</span><span class="op">-</span>y<span class="op">^</span><span class="fl">2</span>) <span class="op">-</span> <span class="fl">1</span><span class="op">/</span><span class="fl">3</span> <span class="op">*</span> <span class="fu">exp</span>(<span class="fu">-</span>(x<span class="op">+</span><span class="fl">1</span>)<span class="op">^</span><span class="fl">2</span> <span class="op">-</span> y<span class="op">^</span><span class="fl">2</span>)</span>
<span id="cb32-3"><a href="#cb32-3" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb32-4"><a href="#cb32-4" aria-hidden="true" tabindex="-1"></a>xs <span class="op">=</span> <span class="fu">range</span>(<span class="op">-</span><span class="fl">3</span>,<span class="fl">3</span>, length<span class="op">=</span><span class="fl">50</span>)</span>
<span id="cb32-5"><a href="#cb32-5" aria-hidden="true" tabindex="-1"></a>ys <span class="op">=</span> <span class="fu">range</span>(<span class="op">-</span><span class="fl">3</span>,<span class="fl">3</span>, length<span class="op">=</span><span class="fl">50</span>)</span>
<span id="cb32-6"><a href="#cb32-6" aria-hidden="true" tabindex="-1"></a>zs <span class="op">=</span> [[<span class="fu">peaks</span>(x,y) for x <span class="kw">in</span> xs] for y <span class="kw">in</span> ys]</span>
<span id="cb32-7"><a href="#cb32-7" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb32-8"><a href="#cb32-8" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(x<span class="op">=</span>xs, y<span class="op">=</span>ys, z<span class="op">=</span>zs,</span>
<span id="cb32-9"><a href="#cb32-9" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"surface"</span>)</span>
<span id="cb32-10"><a href="#cb32-10" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb32-11"><a href="#cb32-11" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="29">
<div class="" style="height: 100vh;" id="parent-of-fnliGAAqn2">
<div class="" style="height: 100%;" id="fnliGAAqn2"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("fnliGAAqn2", [{"x":[-3.0,-2.877551020408163,-2.7551020408163267,-2.63265306122449,-2.510204081632653,-2.3877551020408165,-2.2653061224489797,-2.142857142857143,-2.020408163265306,-1.8979591836734695,-1.7755102040816326,-1.653061224489796,-1.530612244897959,-1.4081632653061225,-1.2857142857142858,-1.163265306122449,-1.0408163265306123,-0.9183673469387755,-0.7959183673469388,-0.673469387755102,-0.5510204081632653,-0.42857142857142855,-0.30612244897959184,-0.1836734693877551,-0.061224489795918366,0.061224489795918366,0.1836734693877551,0.30612244897959184,0.42857142857142855,0.5510204081632653,0.673469387755102,0.7959183673469388,0.9183673469387755,1.0408163265306123,1.163265306122449,1.2857142857142858,1.4081632653061225,1.530612244897959,1.653061224489796,1.7755102040816326,1.8979591836734695,2.020408163265306,2.142857142857143,2.2653061224489797,2.3877551020408165,2.510204081632653,2.63265306122449,2.7551020408163267,2.877551020408163,3.0],"y":[-3.0,-2.877551020408163,-2.7551020408163267,-2.63265306122449,-2.510204081632653,-2.3877551020408165,-2.2653061224489797,-2.142857142857143,-2.020408163265306,-1.8979591836734695,-1.7755102040816326,-1.653061224489796,-1.530612244897959,-1.4081632653061225,-1.2857142857142858,-1.163265306122449,-1.0408163265306123,-0.9183673469387755,-0.7959183673469388,-0.673469387755102,-0.5510204081632653,-0.42857142857142855,-0.30612244897959184,-0.1836734693877551,-0.061224489795918366,0.061224489795918366,0.1836734693877551,0.30612244897959184,0.42857142857142855,0.5510204081632653,0.673469387755102,0.7959183673469388,0.9183673469387755,1.0408163265306123,1.163265306122449,1.2857142857142858,1.4081632653061225,1.530612244897959,1.653061224489796,1.7755102040816326,1.8979591836734695,2.020408163265306,2.142857142857143,2.2653061224489797,2.3877551020408165,2.510204081632653,2.63265306122449,2.7551020408163267,2.877551020408163,3.0],"z":[[6.671280296717442e-5,0.00012490300575890932,0.00022533226130643124,0.00039126024887531526,0.0006529014092122933,0.0010449405706283964,0.0015995004096462364,0.0023323058159038053,0.003220140581289721,0.004169089947353639,0.0049757961717750415,0.0052879434240668405,0.004574746880661751,0.002121952313397327,-0.002933173123415858,-0.011515079175175875,-0.024469054390106586,-0.042378361819682096,-0.0653680842769219,-0.09293810928149034,-0.12387297209433662,-0.1562688325191677,-0.18769681146636175,-0.21549099398360566,-0.2371165400757632,-0.2505484257382039,-0.2545828627970222,-0.2490152837930344,-0.23464842035638958,-0.2131331586923167,-0.1866822296661692,-0.15772197770259702,-0.12855438267886188,-0.10109013441698173,-0.07668926248217162,-0.05611700034539311,-0.039597509850889126,-0.026932446838838085,-0.017646903889676307,-0.011130301697154834,-0.006750476770916997,-0.0039312761726842055,-0.0021941051942159597,-0.0011703550684178156,-0.000594278058408063,-0.0002855313307546331,-0.00012854863071525414,-5.3296863738783214e-5,-1.964134578546261e-5,-5.864187872589529e-6],[0.00010291010008244918,0.00019247399083686955,0.0003466964293913655,0.00060068783535371,0.0009994191765933464,0.001593163157159712,0.0024255056202278345,0.0035103520380327436,0.004794971031787223,0.006108430579519711,0.0070992449893400355,0.007172514510463965,0.005444175316719652,0.0007359106212601833,-0.008364323518093797,-0.02335742328938684,-0.04560069770820867,-0.0760082931295326,-0.11473183338055662,-0.16089079774658827,-0.21243044476182738,-0.26617255683069263,-0.3180895749046522,-0.3637819890709384,-0.3990851417530687,-0.420691061586321,-0.4266574409400103,-0.41669566027475785,-0.3921786718685114,-0.3558739449788622,-0.311468006244446,-0.2629903238888069,-0.21425545179763644,-0.16842342929808934,-0.12773829900047315,-0.09345707782113072,-0.0659402468417206,-0.04484908648423292,-0.02938791708120716,-0.018537670510689126,-0.01124488218463101,-0.006550136609724857,-0.003656753622816468,-0.001951215495677296,-0.000991197527164297,-0.00047648782134596313,-0.00021466425315643588,-8.908484439415757e-5,-3.2879767615910676e-5,-9.84806938359872e-6],[0.00015363350254360054,0.00028724603379276243,0.0005169696738184358,0.000894413877116951,0.001484870015238033,0.0023595472479223025,0.0035761174794450524,0.0051420607767395715,0.006956318064646649,0.008728427687995805,0.009881342573066637,0.009454250534833439,0.006033169118129147,-0.002253716287091205,-0.01763696095495026,-0.04247396008360293,-0.078879743558974,-0.12825325989729966,-0.19077430933699296,-0.26498106796847753,-0.34755095560069427,-0.4333875254546458,-0.5160609855996827,-0.5885696802018909,-0.6443049126883275,-0.6780374704476029,-0.686723046910432,-0.6699553620610006,-0.6299735362379744,-0.5712325492869155,-0.49964300617409707,-0.4216518440306871,-0.3433532673438616,-0.2697890045677937,-0.20453303548312773,-0.14958022212537525,-0.10549252087092387,-0.07171544012913882,-0.04696584344694653,-0.029605568877483276,-0.017943549367164562,-0.010440979425416072,-0.005820843468619723,-0.0031002413355570254,-0.001570915184892025,-0.0007524512027153746,-0.0003371535158928382,-0.00013868078533206782,-5.034006446580413e-5,-1.4471659186555063e-5],[0.00022174822848074357,0.00041486950624771974,0.0007467818077032432,0.0012915161808429744,0.0021418846430849205,0.0033971569299999227,0.005133042731536983,0.007345728100510683,0.009863274372224378,0.01222325568512615,0.013526140154275623,0.012289243598932088,0.006343410511758957,-0.007171506676161903,-0.03165323136709149,-0.07068171167346736,-0.1274551812859858,-0.20406771442229124,-0.3007428816201263,-0.4151911650238717,-0.5422784225862399,-0.6741621793970091,-0.8009685378428011,-0.9119598515428541,-0.997013327903793,-1.0481325468902818,-1.060681178821671,-1.0340763012936938,-0.9717976998665198,-0.8807263707738362,-0.7699750427315394,-0.6494742463243225,-0.5286048845091055,-0.41512209739096395,-0.31451700857483644,-0.2298464437995502,-0.16195939981500024,-0.10998574889380314,-0.07193473202462002,-0.04527133613603746,-0.027382139215523252,-0.015891371016591545,-0.008829273117966089,-0.004681286534884134,-0.0023573553198979334,-0.0011191815833405587,-0.0004947850580169592,-0.00019902719019151461,-6.917160383967986e-5,-1.7654916033676668e-5],[0.0003088994186536544,0.0005790884650954345,0.0010439999562184671,0.0018074686860542718,0.0029991577975433783,0.00475633655972237,0.007179943035990268,0.010252913698403282,0.013710985941613232,0.016864238286884155,0.0183830964260228,0.016084915819552115,0.006782671346483236,-0.013722140134871516,-0.05041545543498937,-0.10855033489908546,-0.19281972403222244,-0.30629482456232726,-0.4492966931376752,-0.6184473927220243,-0.8061769360778851,-1.0009184334587478,-1.188100917995942,-1.351868679230842,-1.477263567203111,-1.5524604946486034,-1.5705964099070213,-1.5308026381307323,-1.4382255686347776,-1.3030527088241155,-1.1387833894603367,-0.9601338602981043,-0.7810084766316098,-0.6129011961640455,-0.4639463190388801,-0.3386643562259747,-0.23829797877992748,-0.16153838847232363,-0.10541533307726944,-0.0661542924202287,-0.039869024109858014,-0.023030924239909965,-0.012718332340187393,-0.0066883888314993095,-0.003330111485867081,-0.001555161791889622,-0.0006700693356141399,-0.0002576823747215107,-8.127936971232348e-5,-1.4480430051966401e-5],[0.0004140573329402085,0.0007792616858748184,0.0014097088257758914,0.0024479882651297787,0.004072674046206016,0.006473342468068045,0.009789786294541374,0.013998403824346847,0.018731649445578726,0.02302751831424869,0.025027610180801442,0.021673838019442265,0.008489997758498305,-0.0204358292143742,-0.07214415928745606,-0.15407795226850246,-0.27291910446815026,-0.43308674391851426,-0.635131995427807,-0.8743775210194542,-1.140195549216527,-1.4162589997005757,-1.6819279082709218,-1.9146770487215563,-2.0931953299189123,-2.200575870921333,-2.226940122958871,-2.170934724341836,-2.0397871923434274,-1.8479376557746718,-1.6145832288097348,-1.3606898313489515,-1.1060895771604584,-0.8671877582297655,-0.6555965489516359,-0.477764436698498,-0.33545295471295705,-0.22677524731764243,-0.14747096189414782,-0.09213482912633582,-0.05520901781175855,-0.031654794011336224,-0.01730793527897073,-0.008979322239140351,-0.004385294732095942,-0.001989145846556417,-0.0008167300351354395,-0.00028601832385394895,-6.973149977532766e-5,4.651802098780139e-6],[0.0005313937035379477,0.0010066781493811463,0.0018320952047837236,0.003199373251966675,0.005351290178099947,0.008550274648977877,0.012999391955817686,0.018692273130629076,0.025171944352991506,0.031192926281159352,0.03430975379495709,0.0304578096876082,0.013642189217452683,-0.024107562967146216,-0.09234570164492462,-0.20124772073245578,-0.36004440898925927,-0.574979429180956,-0.8471040875314134,-1.1703827361953754,-1.5306508815517617,-1.9058940714580672,-2.2680845660836004,-2.586462763025804,-2.831769308419381,-2.980635853244167,-3.019229313450405,-2.945367067811734,-2.768655839259913,-2.5086624599119443,-2.191568736812651,-1.8460700975169524,-1.4993719863028658,-1.174013282563279,-0.8859625536112155,-0.6440895734365528,-0.45081155379692917,-0.3035210440223,-0.19634467244868442,-0.12183996822329358,-0.07236572714956,-0.04100797047676557,-0.022067479918621867,-0.011194396951179476,-0.005287688788109962,-0.0022727207167252783,-0.0008443909456890135,-0.00023090523170942015,-4.366501717064435e-6,5.6281381051026296e-5],[0.0006474126986082598,0.0012394713399555713,0.0022777765177807324,0.004014318723054395,0.0067745531367839175,0.010922082279657972,0.016763108454741948,0.024359279944183576,0.033220882450919684,0.04186987717396246,0.047298871489003955,0.04440782986844178,0.025566862756322216,-0.01948815703900504,-0.10319796826277056,-0.23897431036023353,-0.43918844012449787,-0.7125037769100278,-1.0609515181484124,-1.4773669978734063,-1.9439075992367836,-2.432288836515867,-2.9060801686231783,-3.3249424101593457,-3.650178559835289,-3.8505615639923803,-3.907234959002809,-3.8166286190180227,-3.590766881411145,-3.254950161258687,-2.84338860554728,-2.3937877094093016,-1.9420244158577762,-1.5178959538216454,-1.1425503058251352,-0.8277483871289644,-0.5766993358858977,-0.3859478678628046,-0.24771100079798172,-0.15213662981479018,-0.08912746867456188,-0.04957082910424677,-0.025981815767699833,-0.012674895926340033,-0.005622427816546033,-0.002152438351225916,-0.0006029339898020734,-6.168484506704805e-6,0.0001627457408767309,0.0001662329425403443],[0.0007374108049214827,0.0014361862035054767,0.0026805010947145696,0.004792750686396835,0.008201347193855266,0.013407167420997538,0.020877995780802818,0.030830175984534268,0.04285883964540397,0.05539778445825738,0.06503413977323827,0.06577264596200752,0.04843042361518416,0.00042246277505837183,-0.09376468665828441,-0.2511576397861966,-0.48783900537352726,-0.815607703631536,-1.2382366943271474,-1.748100650199468,-2.3240992088355346,-2.9317183630866768,-3.525715236021795,-4.055331488783032,-4.471279990768256,-4.73320409749187,-4.81606362799784,-4.71405998945363,-4.441252090025776,-4.028786258029659,-3.5194421492834644,-2.960759138088362,-2.398208647202388,-1.8696941883709748,-1.4021882843761504,-1.0107231888197743,-0.6994180964855705,-0.46387764643603724,-0.29418339758344236,-0.17779276954902712,-0.1018801331737451,-0.054910794698523266,-0.02745686834173031,-0.012404591091970018,-0.004759706072117481,-0.0012490867105682112,0.0001293487279233605,0.000513998330600862,0.0005008647250009296,0.0003714870372941816],[0.0007616210485579025,0.00152855816561944,0.002928026108738713,0.005358693518943616,0.009370341481825072,0.015641803499321524,0.024878388165949946,0.03757735398669103,0.05360918119676532,0.07158215543751197,0.08800763471096903,0.0963667461150949,0.08628702481230222,0.043143120460813485,-0.051544156916562306,-0.21857208812540255,-0.47821627217116874,-0.8462296485567006,-1.3292223420644131,-1.92034622566818,-2.596432269933327,-3.3176670306984155,-4.030487059914512,-4.673667714152939,-5.186754218270494,-5.519272009699039,-5.638799651200152,-5.536135348410154,-5.226424675929788,-4.746067629505611,-4.146207938401111,-3.4843404420635693,-2.815859428090272,-2.1871710557621564,-1.6314182421320258,-1.167126901110448,-0.7994044549563525,-0.5228722260598966,-0.3253594037385389,-0.1914952259743616,-0.10560996911646077,-0.0536780147649702,-0.02431292252557521,-0.009003117877342913,-0.0018493057708559087,0.0009463742975753745,0.0016485498315116393,0.0014968400267522705,0.0011016864462439636,0.0007208268682442101],[0.0006618113087850997,0.0014148461429058486,0.002849416658680641,0.005436753435852823,0.009857672507415413,0.017006130277007293,0.027910119672566666,0.043507110240017,0.0642048078353154,0.08917439661982163,0.1153756205049271,0.13640809003785262,0.14141382941468977,0.11439373597913807,0.03439438649625423,-0.12299209455634665,-0.38254793677353954,-0.764855119409886,-1.2807928689858694,-1.9261610082014218,-2.6778050665756847,-3.492609592245629,-4.310293170528617,-5.06012339634873,-5.67066220605127,-6.080745808063418,-6.249401903114336,-6.162508036041541,-5.834708005494132,-5.306233095710687,-4.6354856209961435,-3.8891763013737233,-3.1322105040233543,-2.4193225784951866,-1.7897858595133214,-1.2656310521609846,-0.8529682657123888,-0.5454410038152329,-0.32863447466706774,-0.18438167649124848,-0.09424079502602904,-0.04181263388238446,-0.013908140763360543,-0.0007973237441456392,0.00413946094786576,0.005051146743882747,0.004313761300648709,0.003145245102291938,0.0020764876091994545,0.0012734758783719343],[0.0003595857436294907,0.0009560034469523048,0.0022068128995483636,0.00463516334569543,0.009043401096857926,0.016560277341056997,0.028613260234091133,0.0467518860890878,0.07223260789575871,0.10528367894465161,0.14401767489766204,0.1830617897642934,0.21212921912291952,0.2149305761854514,0.16896493429202764,0.04675775029569292,-0.18104655308584272,-0.5407102595543232,-1.0490798248961644,-1.707056885246203,-2.494457419498487,-3.367938573440273,-4.263253243025704,-5.1021863817738105,-5.803336010492707,-6.294769923653982,-6.525891678860303,-6.4758539248443885,-6.156610748583251,-5.6099985628257025,-4.8996861984846305,-4.100002447290025,-3.2842064098414987,-2.5146034202705425,-1.8361545067960865,-1.2741747474397616,-0.835705608668497,-0.5134450712008124,-0.29084802903191553,-0.14713614985681853,-0.061342783677135,-0.01499061042920274,0.0065888145613121445,0.014016647860383319,0.014324061473174431,0.011737941321476507,0.008518305672013178,0.005682464183791942,0.003548234430438264,0.00209513659704352],[-0.00024198216173468507,-2.223910310899819e-5,0.0006973101869368324,0.0024454702358259507,0.0061042544196430685,0.013020201141514882,0.02506198899122039,0.044540254584174654,0.0738768498821324,0.11490423546756456,0.16771415811444396,0.22907838326659197,0.29063789729789663,0.3372762170590836,0.34629526224490303,0.288105160682988,0.12902329718642902,-0.16360841023908318,-0.6144121976603886,-1.2322374666703246,-2.0034875906835325,-2.888531512907713,-3.822867124126923,-4.723740447398481,-5.501553626243522,-6.074006011759327,-6.379963469925919,-6.389895974042664,-6.110468206171337,-5.582312228891815,-4.871713126656822,-4.058374090084166,-3.2221818348949816,-2.4318013069148146,-1.7371114417528386,-1.1662852754235444,-0.7271224096097656,-0.41138840467840687,-0.20056345916043955,-0.07152640301500297,-0.0011415074901199194,0.03073161651605765,0.039797875165763656,0.037130695274443674,0.029765798036316876,0.02165304047802576,0.014644041561538777,0.009327322146631312,0.005638505340718388,0.003251282420836025],[-0.0012517228681525622,-0.0017181455124231431,-0.0020289250606254977,-0.0017298406014677253,5.294015832353529e-5,0.004808715610712989,0.014822016853826645,0.03324479233984394,0.063923104697708,0.11081190084527294,0.17683005106743382,0.2621040422124044,0.36173883308647237,0.4635219465556262,0.5462481486450509,0.579537406709623,0.5259787895740309,0.3460691692568702,0.005721836761563945,-0.5147733075858703,-1.2122861351124612,-2.0552649688814237,-2.9831961192781815,-3.912286032833391,-4.747005113055512,-5.395455679656849,-5.785263982094558,-5.876309730885497,-5.667283667700944,-5.1946268176417,-4.524366243472382,-3.7391028363704097,-2.9234073997079415,-2.1509028845641525,-1.4754556076475005,-0.9275369782479412,-0.5154237098234107,-0.22987894490047997,-0.050506043976889216,0.04792236514996702,0.09036223107423051,0.09818708595563082,0.0876639569848885,0.06983805638485499,0.051297212292874726,0.035315190670463945,0.023003749353624314,0.014262295189866476,0.008450298333265554,0.004798160535827964],[-0.002777652522471319,-0.0043313493341981014,-0.006329809648486193,-0.008513073774655499,-0.010159565015195755,-0.009788284748066013,-0.004821157518727588,0.008699738043379642,0.03617659328660251,0.08408008117603699,0.15889998927752413,0.26526750970265417,0.4032952218899979,0.5655000413284574,0.7340500418328795,0.8793821361158978,0.9613089062371867,0.9334234362323482,0.7508722334360765,0.380512472811282,-0.18860924072927698,-0.9372249503466411,-1.8129937616879537,-2.734620489256004,-3.6030309197954153,-4.31769445013303,-4.794545124478689,-4.9812591985209265,-4.866195677339154,-4.478959913109089,-3.8827811637456344,-3.160981057130311,-2.4011088624842025,-1.680498937127096,-1.0561365979334227,-0.5602049081007703,-0.20107633456598514,0.031707415499502054,0.1604923491063799,0.21254248325642883,0.21443071970700817,0.1884478459923164,0.15102869958850998,0.11275905597739914,0.07935137641394281,0.053012383939063545,0.033780538365368276,0.020598992496446457,0.012048955407162172,0.006772569181537479],[-0.0049083541183701455,-0.008028965857499164,-0.012511570980854574,-0.01844920068515467,-0.025475082486816226,-0.03235137367917164,-0.03644338461032279,-0.03317167545956655,-0.01562955798749121,0.025350496616517358,0.10034583351835595,0.21942225957740807,0.3890608439927906,0.6082236870780566,0.864333401004455,1.1303946460071852,1.3647034159942268,1.514367164773132,1.5230925185685293,1.3424748097595158,0.9446581995542549,0.3332029781166588,-0.45122360879442647,-1.3328515746488803,-2.2111720716132854,-2.977980709996469,-3.5373418813837425,-3.8236452316966334,-3.8132888970348673,-3.52724524345865,-3.024279935646989,-2.3870690003360386,-1.7051071648951792,-1.0586790879279167,-0.5073003066139498,-0.08436290509165721,0.2021244600889755,0.3642543777642484,0.42665417818201085,0.4188349612835792,0.3690493682180588,0.30041976667224907,0.22933884598221532,0.16563950147240514,0.11382785828236708,0.07471607665395535,0.04697495670454638,0.028346717791294405,0.01644413633235536,0.009181882340180999],[-0.007690525756511732,-0.012904134238724189,-0.020754413121257514,-0.031876463590623856,-0.04650957096840259,-0.06396888920852488,-0.08191057919936734,-0.09547374259643185,-0.09650727812654136,-0.07323005152367174,-0.010775543182956843,0.10693834089726356,0.29377301426145086,0.5565498531857009,0.8896337699260852,1.2703294049153748,1.6568936579071216,1.9908623739387477,2.2046126184412596,2.2336861493084297,2.0317175977309296,1.5844026202587447,0.9184124893189347,0.10190982664394937,-0.7646832896206703,-1.5662923500413235,-2.1952301547850914,-2.572219118816904,-2.6610802180623048,-2.473547597733596,-2.063486749960128,-1.5126979516601478,-0.9125314215404858,-0.34615103172179995,0.12456721949058004,0.46535860089876885,0.6690803728240873,0.7500662014432724,0.7358424746723681,0.6587024897927668,0.5489637455512191,0.4307867694124783,0.3205592625957266,0.22726493935266293,0.15402206766659582,0.10002888896187698,0.0623691666376727,0.03738941643325743,0.021575759929578716,0.01199587919273352],[-0.011106760041947309,-0.018934517361223483,-0.03103716424892507,-0.048793366803430535,-0.07332487702497698,-0.10485610303760655,-0.141760811876476,-0.17936308343576174,-0.20871601419586555,-0.21577130951339524,-0.18151438536641912,-0.08367839949198387,0.09953558546125178,0.3837789418005699,0.7716901706339945,1.246427401285008,1.767776319768931,2.273046324201636,2.6841974721937105,2.9210714754890863,2.9185815320205646,2.6438964981607445,2.1087788420489892,1.3728394340942145,0.5356062339280719,-0.2815776012938711,-0.9597098059033043,-1.4062356528708366,-1.5728782320205934,-1.4627908089447554,-1.125774233008765,-0.643673040974936,-0.11054128721873686,0.38696657694164993,0.7843604801834835,1.046648345885628,1.168052368276978,1.1658882416877503,1.0714216075495648,0.9205315330608843,0.7462665351148866,0.5743013297543842,0.42129796911829165,0.2955011344200482,0.19862767996076525,0.12817344804062938,0.0795136467684497,0.047474616429709716,0.027306155070505246,0.015141699705589677],[-0.015059012062449292,-0.025951003390813514,-0.04307960923116695,-0.06875527200372783,-0.10524828038383413,-0.15404870417967786,-0.2146974875610807,-0.28323272791850246,-0.35048362247774667,-0.40068645213285803,-0.4111227318762656,-0.35357534504220217,-0.19823325613579765,0.07984244401842275,0.4924304218352187,1.0297811780569686,1.654719829531179,2.3019631574074078,2.8846443482486444,3.3083014280408776,3.490224234802699,3.3798079316595215,2.9743171733489433,2.32490800887726,1.5300217977558697,0.7167907640350569,0.014746008265686415,-0.4713943781814362,-0.6826877748491328,-0.6153907057171752,-0.31704270373813676,0.12872825627683881,0.62368631363706,1.076634965277632,1.4199401070646964,1.6178795355495952,1.6664862103536742,1.5868149707042725,1.4147789643300406,1.1907543486701826,0.9513239501102357,0.7243086220730189,0.5270875048100077,0.3674361652915807,0.24580317446129474,0.1580204767275142,0.09773718876537343,0.058215772130514966,0.03341968432931279,0.01850283675440693],[-0.019363269263168986,-0.03362702134604964,-0.05632164848880498,-0.09083484892575483,-0.14079949607413675,-0.20927177440613742,-0.29736068358240786,-0.402324172577032,-0.515366609689668,-0.619666707697618,-0.6894573759947796,-0.6911361685096213,-0.5872472467563874,-0.3436209619062042,0.061014059212396,0.6248257981702156,1.3149854424263707,2.0653493772888156,2.782261680319066,3.3591286991922074,3.6977228147436825,3.731502506839061,3.4446230637133017,2.880589358832189,2.1368954168810403,1.345920918255865,0.6465507657937195,0.15396547707565503,-0.06429482437069484,0.0001693929578027928,0.2998763862059995,0.7474468829075215,1.238891818479178,1.677399209841163,1.9916463478104331,2.1451272319632753,2.1360302400252644,1.989767752308591,1.7476610770020442,1.4553696861343823,1.1537348802662866,0.873332603241055,0.6327318236140543,0.4395792738658553,0.2932822048081347,0.18814809784424102,0.11617773737402134,0.06910778129637456,0.039630295305423946,0.021922688995062584],[-0.023759244234022907,-0.0414957033715406,-0.06995261770793777,-0.11367032689197148,-0.17776701919413992,-0.26705563278780664,-0.38449516113009596,-0.5289591739488724,-0.6925521588587196,-0.8580487036591491,-0.9973880952342271,-1.0723766318702193,-1.0386442143482164,-0.8533184695262632,-0.4858007437471028,0.0703453880340999,0.7876160437448853,1.6006459363588856,2.4112129702200016,3.1032072759827845,3.565602146091096,3.7183977099593224,3.5345447816508053,3.0509708338320434,2.364335400290961,1.6114394537803536,0.9389195911660436,0.47030377838548476,0.2794057944712079,0.377033109221392,0.7138081992754598,1.197071097820459,1.7160153159112803,2.167585352614322,2.4765062469781336,2.6055008576179524,2.555117145862913,2.355449757550895,2.053619105118553,1.700985431352526,1.343063796072602,1.0135775558191564,0.7326401151912758,0.5080767892320951,0.3385092288723449,0.21692451654399528,0.13383128431360924,0.07955502038694648,0.04559710269402494,0.025212953688875335],[-0.02793566207714313,-0.048995971981770664,-0.08299275957012921,-0.1356051480328963,-0.21344019040051235,-0.3231096156414203,-0.4695338566866039,-0.6534225767187503,-0.8681529263091845,-1.0966557952674505,-1.309337779470635,-1.464345900194017,-1.5114106248022525,-1.399900530250647,-1.0905525796560986,-0.568810941953013,0.1437142297462224,0.9838345231975199,1.8509540691721549,2.622221468753389,3.17679706156085,3.423955144024632,3.327463324073342,2.9186427952010794,2.293106455937596,1.5907878084932339,0.9640246628411373,0.5423157776609961,0.4034865290666925,0.5589443460020692,0.956234102769922,1.4968537773966906,2.063095663528799,2.545845117053784,2.8661251364831513,2.9860616686088517,2.9086009064560825,2.6684368133327485,2.31834382675221,1.9152473602506612,1.509267149571815,1.1372999172059957,0.8211234750041186,0.5689330880779869,0.37879484485266135,0.24261179457230994,0.1496180446657041,0.08891175179469593,0.05094806571683137,0.02816696383895053],[-0.03156775573420733,-0.05554115095964676,-0.09441508174157176,-0.15489799452474437,-0.24496044101128037,-0.3728920449167191,-0.5454953830669328,-0.7653339884136634,-1.0272424133805846,-1.3147317890688108,-1.5973925132987747,-1.830727726086137,-1.95981376566305,-1.927573168115752,-1.6872085554690608,-1.2166888555693791,-0.5316014861785641,0.30812884643574023,1.2015775822632953,2.0219257185833746,2.6415799969979554,2.9618619156283743,2.939281857857648,2.6002378812557536,2.038624060901984,1.395689684628886,0.8269902975565443,0.4654534890592498,0.3908821768471672,0.614131123024372,1.0794948609010528,1.6832672883982902,2.3019367376206605,2.821478734602353,3.160074466482036,3.2796293464107014,3.185353964369052,2.9160089670088825,2.5292785726631464,2.0868932339833104,1.642954109565887,1.2371292875827042,0.8926961845893541,0.6182572460282604,0.41150018408818445,0.2634944245410462,0.16246705072178536,0.09653501084846303,0.05531155123592686,0.030577727107708588],[-0.03436017240318377,-0.060597323869350884,-0.10328423988426616,-0.1699616371590903,-0.2697198179168296,-0.41225534426328586,-0.6059972565908075,-0.85519215286565,-1.1561401654818886,-1.4932252084056223,-1.835889159775551,-2.138073872311477,-2.341648945303899,-2.384735270149534,-2.2145566020414447,-1.8027085976303712,-1.1590423722544274,-0.33943872169703093,0.5567313503477577,1.4014234357207518,2.0633880478839175,2.4387824707102177,2.478689043507869,2.2050068906838716,1.7088361995236188,1.130470193803788,0.6258347878088484,0.32862354616639,0.31881461258897703,0.6061698530434517,1.1324860039039881,1.7905814912785942,2.45330671842664,3.003746597572423,3.3586480562644794,3.4802505990870953,3.3757354029077105,3.086987328956272,2.675311830901396,2.2059174661516163,1.7357605612727416,1.306489712057082,0.942457718187834,0.6525701599374786,0.434263977432697,0.27803648599453334,0.17141900353164097,0.10184865326517563,0.05835444086368963,0.03225965206307286],[-0.036086817313407786,-0.06375565588564258,-0.1088838534934954,-0.1795802391923269,-0.28572050449519615,-0.4380225255102602,-0.6461517603275015,-0.9157242622044831,-1.2443818926443686,-1.6175789339348283,-2.0052482961162896,-2.3609185459452986,-2.624874114100186,-2.732357326246381,-2.6265234502408967,-2.2740777464669284,-1.6797662838519396,-0.8948972382906426,-0.01553024623871646,0.8318060443548785,1.515382083149581,1.9290667254884266,2.0203642976718856,1.8070047569882968,1.376009388846534,0.8641733435075746,0.4247124217905429,0.18933596407998735,0.23653669944566177,0.5748417217108015,1.1449172994320955,1.8385677177841953,2.5278930686040093,3.09569317829803,3.4590514536102392,3.5812024675153773,3.470874910785982,3.1718328895895946,2.7473206619012323,2.26429215522766,1.78107594664698,1.340237949889645,0.9666041298293185,0.6691864567165191,0.4452715236781022,0.2850615544142682,0.17574109622549516,0.10441350528336704,0.059823251351568976,0.033071715280355046],[-0.03661982893325625,-0.06478436696771489,-0.11080676866433627,-0.1830610412511623,-0.2918213164197798,-0.44837430268475675,-0.6631531050557652,-0.9427455404165799,-1.2859332852436098,-1.6793824395064414,-2.0941407841432174,-2.484513666150443,-2.79093291825637,-2.9478651283920176,-2.8965410011054864,-2.6005160745471505,-2.060305446583733,-1.322304067898831,-0.4776067592466998,0.3515029264562879,1.0360568307335651,1.4706179808493656,1.601066841664681,1.4413581354420753,1.0731570940210786,0.6271816960068468,0.250810709141146,0.07101028696341702,0.16319688256661105,0.5346882475514924,1.1266413984426062,1.8326098004041582,2.5271264927343076,3.095546762039761,3.4571964725190623,3.576986673808447,3.464686228769262,3.1645337514935075,2.739832868909924,2.257352911161337,1.775142447890038,1.3354957626350032,0.9630312189854731,0.6666336845942836,0.4435345043624285,0.28393231941763586,0.175038006031989,0.10399344232610391,0.05958206324812937,0.03293846396188852],[-0.03594265381994373,-0.0636514480244735,-0.10899302716173268,-0.18029525857170076,-0.28783110109105625,-0.44298541637114613,-0.6564654242021317,-0.9354013252045916,-1.2794749592639145,-1.6766646307924353,-2.099717468960573,-2.5048753967990036,-2.834438217131602,-3.024215465631552,-3.0157088223433366,-2.77115583613552,-2.287842385973415,-1.6070632340139201,-0.813456444616388,-0.022477388545423804,0.6428015618572984,1.080571900081081,1.2370652855166664,1.1229436408313451,0.8133812591040973,0.43061266011455146,0.11322854236496654,-0.01915385833010364,0.1043265931084839,0.4898654296057904,1.080744870395982,1.775005563798926,2.4527472992684567,3.0046627007081956,3.354170403813744,3.4684944220407807,3.3579052934689417,3.0656932554920684,2.65333370290187,2.1854794460536913,1.7182476654363295,1.2924733869154794,0.931887093837579,0.6450123408801117,0.4291185961112337,0.27469012837095946,0.1693348187640047,0.10060313817854145,0.05763915573639465,0.031864405838194554],[-0.03414608218887925,-0.06051656770588809,-0.10371383014299874,-0.1717272398488256,-0.2744511667365074,-0.4229203246251413,-0.6276393359076183,-0.8958539520016389,-1.227883690202423,-1.613059608520568,-2.026307033256014,-2.4268113447597077,-2.7602709882500167,-2.965755210726771,-2.9870571198790454,-2.7868267751856672,-2.3601396252808238,-1.743166645605446,-1.0129058055865112,-0.27581784889059546,0.3536007412616099,0.7797018388071123,0.9507791934707694,0.8746170443361261,0.6189059532631813,0.29530323160444877,0.031063010717081466,-0.0637586877698097,0.07595960988554239,0.4555182842195744,1.021934493039508,1.680318584137404,2.3192473660093276,2.837311248824762,3.1637099831217377,3.268546051708185,3.162075717701956,2.8853131863195633,2.4961524470922156,2.0553368642720247,1.6155173676263048,1.214960967301603,0.8758678753331437,0.6061685808975462,0.40324138270870014,0.2581088655721934,0.15910580733859134,0.09452298530046384,0.0541545150557568,0.02993767675074974],[-0.03140981334074538,-0.05569739968031423,-0.09551183024153485,-0.15825170700608865,-0.25310363805340197,-0.3903549352726028,-0.5798740243395722,-0.8286135673512729,-1.1372390387194131,-1.496373332890072,-1.8834042140063123,-2.2611713162881597,-2.5799184084327496,-2.7834616005696544,-2.819502136675581,-2.6525469972041034,-2.276404699846662,-1.7223029887845087,-1.0589182748711106,-0.3823010084562434,0.20342401028936732,0.6104437107469122,0.790161976447412,0.7475610023570278,0.5418923209324135,0.2725189544397262,0.05340806166277219,-0.016500440174722714,0.12154895208564413,0.4725357666392756,0.9889199033011075,1.585348463634377,2.161544684220463,2.626297487374712,2.916088552200449,3.004401594832349,2.9010318579881273,2.6435605610974195,2.2847681120054277,1.879913411238306,1.4768198526725644,1.1101848815595716,0.8000739999879197,0.5535728755327309,0.3681799853372025,0.23562978655411132,0.14523120971265846,0.08627191554119996,0.04942354366816624,0.027320699530995387],[-0.02797457216007129,-0.04961981877371564,-0.08511505186041166,-0.14106989801809536,-0.2256991759264505,-0.3482145468180982,-0.51747293808112,-0.7397497062117966,-1.0157242189477649,-1.3371108014377582,-1.683775706902983,-2.0225137885313544,-2.308725896144386,-2.491857907999478,-2.5245587383563883,-2.3742124159672944,-2.0341629374319004,-1.531117431730933,-0.9254084620703908,-0.3022805215300066,0.24507644675337592,0.6371277981364684,0.8284352778136534,0.8206705819885403,0.6636125556506061,0.4430093522127924,0.25832204758324484,0.19668014100662312,0.3106271177934614,0.6059403417499528,1.0424734150218833,1.5468485743691227,2.032403768255615,2.420180928782099,2.655265509277095,2.7149808803701796,2.6083170564071763,2.368480549881913,2.041873692297731,1.6769526370668966,1.3155490242145382,0.9879014007825088,0.7113617771448051,0.49187390986185364,0.32697570235109885,0.20917317229791513,0.1288814753492791,0.0765387973589109,0.04383783160415092,0.024228530954891504],[-0.02411054654092727,-0.04276235525210294,-0.07334256456036085,-0.12153523415141197,-0.19439413858658727,-0.29980723976916096,-0.4453143931412091,-0.6361631525456014,-0.8726781102186647,-1.147319175476659,-1.4421592633424447,-1.7278034335494377,-1.9648339158129873,-2.1085402051108413,-2.1169128219899234,-1.9607490816679787,-1.6335529298005675,-1.1581734499175649,-0.5872751189429295,0.004001725827462638,0.5326282900490444,0.9264484891544523,1.1421316084756983,1.1768814726173198,1.0698705721964796,0.8923286197938449,0.7287738181231861,0.6547547693792493,0.7175935844908008,0.9255640011257436,1.2481163490215597,1.6262435401320656,1.9891382723647086,2.2718762878469683,2.429272682852613,2.4429040570989593,2.3207298671097116,2.0908842260940226,1.79242887616233,1.465988372696051,1.1464611504734217,0.8588656612787998,0.6172932433340483,0.4262009904989151,0.28298544135723563,0.18085921176655004,0.11134923363504506,0.06608457853950463,0.03783002787100003,0.020898818478648676],[-0.020087198182625485,-0.03560358508732044,-0.06101620640203678,-0.10101101932839758,-0.1613708603432758,-0.2485002089059583,-0.36839933369155675,-0.5249919724355343,-0.717873152145379,-0.9397991824031436,-1.17454441018134,-1.3959986285578299,-1.5694345007401254,-1.6556008702631486,-1.617636323740701,-1.4298350286702388,-1.086297211715917,-0.6068528986595368,-0.03774942872636933,0.5543571667280345,1.0947116782060238,1.5165377073082673,1.776700275752776,1.8663274733248925,1.8128855765763208,1.6726510712189215,1.5155093792903185,1.406466578699977,1.3892746769432978,1.4767702442139423,1.6502346691082501,1.8671789114268065,2.0744904752457485,2.2226583372393014,2.277076385492444,2.223906042413315,2.069968747685386,1.8378981773258674,1.5587975289668603,1.2647712761788028,0.9831184634405861,0.7330536798258568,0.5249352255390987,0.3613769494516936,0.23938150799478,0.1526999181406546,0.09386546920379743,0.05563605897862973,0.03181440025520913,0.017559598261317613],[-0.016147983669524798,-0.028578173963738275,-0.048887025937618636,-0.08075226356266633,-0.1286559642537356,-0.19745364644042915,-0.2914824249940458,-0.4131325459876901,-0.5609435985906162,-0.7275010659849934,-0.8976624560756707,-1.0478515123883247,-1.1472067272367865,-1.161143278086231,-1.057334693887249,-0.8133120502407561,-0.42403117396515794,0.09280119711295393,0.69579571808296,1.324649773373645,1.9103927597462629,2.3890892096022642,2.7155590877029554,2.873228526201071,2.8770643041855566,2.7685047894696955,2.603748984069975,2.438835301593205,2.315874607356421,2.254267065966002,2.2489626540596466,2.2755102807702148,2.299627925462777,2.2879756959291613,2.2169592161893883,2.077504111241683,1.8752886876001893,1.6273125665102866,1.3564994388022462,1.0861552665144059,0.8356673053523982,0.6181205378710765,0.4398200352447579,0.30123821114419386,0.19872019020915846,0.12633379257753638,0.07744140103809834,0.04579461750317191,0.026135812325125848,0.014401676923114098],[-0.012491915339399843,-0.022044458571198855,-0.03758028813489813,-0.06181581089881597,-0.097979140052434,-0.14940787130049754,-0.21876522090374337,-0.3068184851629818,-0.4108388485498407,-0.5228600063316435,-0.6282433662914686,-0.7051710405495066,-0.7257278703666025,-0.6590464011896531,-0.47653036081167044,-0.15849753513444603,0.2991325314628915,0.8799691966488932,1.5459519840261535,2.241010017339676,2.8995218509430716,3.4580249109928234,3.8673935804642245,4.10224003186548,4.164867392904278,4.082617345785407,3.8994224428292066,3.6641083724777332,3.4188714900131627,3.1910843501574577,2.9903019855597943,2.8105697159917553,2.6365282627157076,2.4509050488554207,2.240982631417521,2.002398394350567,1.7397597904553828,1.4646083511331152,1.1919084867931795,0.9363641120677498,0.7095706257564967,0.5185015607043665,0.36532792156311483,0.24822397479368552,0.162677267227616,0.10286107394065802,0.06276921239417076,0.036978355567545515,0.021037108612379746,0.011560847786397363],[-0.009262628432444594,-0.016264485347505152,-0.027560089001318826,-0.04499944374957583,-0.07067141049008369,-0.10651832418447854,-0.15363628188398545,-0.21122302505978907,-0.2752322169597215,-0.33694111993931236,-0.3818122575512658,-0.3891724290108159,-0.3332654082022615,-0.18608030020049948,0.07802174551231733,0.4764222924468682,1.012247272178246,1.6698320477403392,2.4132563800322044,3.189048205735946,3.933153361018459,4.581027129230666,5.078629336991894,5.391612588020238,5.510331271331288,5.449421387891015,5.242256841222988,4.932043059198493,4.562158101192038,4.168321956774893,3.7743315956032997,3.3918040044280056,3.0231160518555455,2.665939273780423,2.3176330266325005,1.9782061756488645,1.6513165859934973,1.3435246807080967,1.0625054683265795,0.81505713559595,0.6055761637357604,0.43534059446561535,0.3026086419073588,0.20330735682709003,0.13199444978879438,0.08280543754227174,0.05019641232474825,0.029405868758611575,0.01664933998563735,0.009112265260490566],[-0.00654478121853372,-0.011396322917290973,-0.01911351806735927,-0.030810372587664527,-0.047604535813180845,-0.07024286737650934,-0.09846835062365158,-0.13010567872903575,-0.1599248587402266,-0.1784654950343222,-0.17114762189075453,-0.11811221891099913,0.004738659102502783,0.22315976825256184,0.5604106559994043,1.0319762836202422,1.6401183315895265,2.3695995294530805,3.185987897527511,4.037570505226562,4.861105707338981,5.590608398265903,6.167415079919668,6.549257239766292,6.716209265340044,6.672173828040283,6.441781112514997,6.063804157344028,5.583021324886244,5.04263534789013,4.4788833976583735,3.918576415692446,3.3793449048857083,2.8716714789726328,2.4015375915245984,1.9726903784303438,1.5879818536622226,1.249726097960696,0.959379096757714,0.7169863316783418,0.5207832283180415,0.36715727404651843,0.25098701399365675,0.16623490352715725,0.10661683404505147,0.06619065008170914,0.03976737715079008,0.02311812355833496,0.013002959086469321,0.007076012207404489],[-0.004367042384704484,-0.007497757277023963,-0.012353723674764273,-0.019463803007638572,-0.0291760862897334,-0.041294861777767644,-0.05450457744998591,-0.06557043642142976,-0.06837504066044393,-0.05295337864935093,-0.00480673387228529,0.0951276348946347,0.2694525983964485,0.5419404110305853,0.9337839318257067,1.4588334638878548,2.1186236896730346,2.898339476717428,3.7649597888764,4.668545845738227,5.547002084958659,6.33377379849231,6.967104271899474,7.398940501734651,7.601557821325917,7.570510731031763,7.323454349561481,6.8954178722240265,6.331916864157771,5.681629479812638,4.99017681145936,4.295969289686914,3.6283555712846653,3.00769245141241,2.4466117389531505,1.9517284727047703,1.5252340838212182,1.1661100455160294,0.8709530615406872,0.6345473536855764,0.45034425486086116,0.3109528332708822,0.20866289821660913,0.13595803476131416,0.08595174563715817,0.052691671497664225,0.03130914476576095,0.018025821223737484,0.010053235092403006,0.0054303504925111165],[-0.0027104337836074037,-0.004539719057408239,-0.007240142093440932,-0.010910875052556243,-0.015343283491603897,-0.019674811479907843,-0.021867578905431895,-0.018010387619828237,-0.0015022080125134916,0.03773895589637154,0.11380029219159168,0.24471103443163594,0.4514542058597518,0.7558033664938977,1.176951926900783,1.7272340000125344,2.40761262466913,3.2039184245088896,4.084928152115837,5.003179935615964,5.898915772828336,6.7068189404171825,7.364469593023874,7.82091057181889,8.043586450922342,8.02225851216993,7.769216370795808,7.315984241696205,6.707488665048436,5.995097578641875,5.22996591519666,4.45778432761236,3.7154871615188547,3.029929250859388,2.4181434121897456,1.888610784268648,1.442995241346528,1.0779349362287052,0.7866598014986022,0.5603476495373405,0.3892155931027484,0.26337341410009585,0.17346407895805505,0.1111073423555509,0.06915941271816343,0.04180785078618507,0.0245316967078878,0.013965795375934911,0.007711048162424393,0.004128040478588853],[-0.0015203430771183767,-0.002426866693224724,-0.0036123168986513746,-0.004891737291448745,-0.005702105281332743,-0.004781369702862098,0.0002960430366497641,0.013722581994459106,0.042144935516460244,0.09530935066759254,0.18645867632728663,0.3322105177775725,0.5516321798631015,0.8643006851266142,1.2873160929982446,1.8315128976971848,2.497434028264137,3.271902392120258,4.1261371577985635,5.016229455754833,5.886392012795257,6.674796257492548,7.321159545660169,7.774737495894699,8.001181222977019,7.98691682355817,7.740250626768167,7.28914109643543,6.67629161427598,5.952711242733302,5.171051335051344,4.379856948218485,3.6194739839338195,2.9198753062383944,2.3002519550543132,1.769946964195454,1.3302105232177963,0.9762936636017296,0.6995143693449947,0.4890674572982764,0.33346882725920957,0.2216095092037271,0.1434461804229535,0.09038134079810126,0.05539752854490248,0.03301219851388962,0.019116312304009172,0.010751706867627851,0.005871077368396486,0.003111526539812005],[-0.0007201942960791935,-0.0010219075232597336,-0.001231755045021661,-0.0010051700579008988,0.0004008754873348389,0.004415334812196179,0.013556805740038879,0.03194551275281569,0.06587377263260738,0.12432680598230766,0.21928064785076395,0.3655519590309054,0.5799637715681107,0.8796505368287603,1.2794729989867526,1.7887412294130587,2.407711302782433,3.1245538773080312,3.9136021829915575,4.7355979383804785,5.540340030692196,6.271647339648399,6.873989652011134,7.299676379815509,7.515269319122177,7.505986956714192,7.277279771351265,6.8533672011683535,6.273165970851419,5.584533669798307,4.837983941714227,4.080971889391236,3.3535583754073848,2.685852935286026,2.097230324745153,1.597009459356828,1.1861199690567077,0.8592560009732567,0.607091588166032,0.41825761939343703,0.2809138599506717,0.1838622544859105,0.11722753378734041,0.07277752650388977,0.04397459460703945,0.025849354441349576,0.014775867817379407,0.008209823624425433,0.0044322800061856165,0.0023242496470297575],[-0.00022471585846144007,-0.00016987575104515193,0.00017492225375647004,0.0012169224046571377,0.0037435820285228526,0.009170223803531248,0.01988025194471048,0.03964869242114992,0.07410576274493132,0.13115024280363813,0.22117046306035618,0.3568894988873713,0.5526428257726138,0.8229443044720245,1.1803145081822604,1.6325294047415762,2.1796656794120266,2.811513692657314,3.5060285103877598,4.229431068111799,4.938328843887772,5.583827936017998,6.117143986118241,6.4958136151518655,6.689385585282713,6.683511536458121,6.481663443566244,6.10420116391241,5.58506399087125,4.96681834525873,4.295048492715172,3.613085035131981,2.9578571822524906,2.357314131815313,1.8294931076692384,1.3830073090282577,1.018539893065409,0.7308710908587273,0.5110114988078411,0.3481244990684213,0.23105208659881402,0.1493782148345621,0.09405339304984407,0.05765816655740014,0.03440503453165633,0.019976744106648008,0.01128317230614561,0.0061973111298673405,0.0033090667536466206,0.0017171488978134206],[4.893884384905114e-5,0.00028103763469471024,0.0008780052817168212,0.002242128970860134,0.005112042096384178,0.0107675277166891,0.021306364471173404,0.03998417513167102,0.07158122877288907,0.12272331730505884,0.20204331709908893,0.32003804902985394,0.4884687221329009,0.719190549124849,1.0223897069593615,1.404350706690139,1.86505069317043,2.396034741744836,2.9791116012332046,3.586371885035536,4.181846349879222,4.724809588624504,5.174359743470573,5.4945658498739975,5.6592727390019535,5.6556594159478815,5.485872746011755,5.166450640546941,4.725704212584352,4.1996265222370495,3.6271384857703324,3.0455231669114937,2.4867513673862707,1.9751266167610262,1.5263621916958952,1.1479271865578,0.8403165025516681,0.5988288981573798,0.4154643301449366,0.2806436565457111,0.1845720835145295,0.11818027383073167,0.07366352343438151,0.044692247532617635,0.026388431052794564,0.015160534857541274,0.008473137527419244,0.004605810405509646,0.0024344449499627075,0.0012509072990357958],[0.00017333271511890143,0.0004644323709782461,0.0011166125213440854,0.0024864990013927185,0.005210064292156939,0.010365075624695616,0.019688103547766605,0.03583811834710866,0.06267793889584537,0.10551672164843034,0.17122595318385428,0.2681172325991917,0.4054654358656016,0.5925892572528512,0.8374716303385996,1.1450132897413068,1.5151462761792653,1.9411571559928584,2.4086392443169298,2.895469613816756,3.373069789526335,3.8089706991175327,4.170410601888533,4.428423879821572,4.561708467842399,4.559548644635794,4.423232943496261,4.165707839494215,3.8095689732969213,3.3838184701641616,2.920028092151793,2.4485997471160754,1.9957111754764294,1.5813206195446365,1.2183475758667763,0.9129144084150327,0.6653734324013999,0.47177543505677155,0.32545083926622764,0.21844810507599458,0.14267336335373565,0.0906722288157461,0.05607042506343461,0.03373649261252651,0.019748714966113835,0.01124620834910489,0.006229426518692118,0.0033558563787873144,0.001757943267245312,0.0008953260491505678],[0.00020648679973794256,0.0004872975624279698,0.0010825533995363881,0.002284372267950621,0.004604345022593795,0.008897112272439856,0.01652401271755064,0.02955029252556724,0.05095393715635892,0.08480345915665254,0.13633938438828455,0.21187645528133559,0.31844018012262276,0.4630723073425023,0.6517918150251132,0.8882799495367523,1.1724571904173597,1.4992124529684219,1.8575987151223234,2.23079480652509,2.597034156422608,2.9315252054018166,3.209169160984104,3.4076736680302107,3.510525947820161,3.509271786862003,3.4046618231279586,3.2064497491019734,2.9319017331392048,2.6033310497934496,2.245142795772043,1.8809237994616477,1.5310416681180374,1.2110563129591139,0.9310484251081481,0.6957850427570933,0.5055118121536071,0.3571023710311366,0.24530341288791715,0.16387011796868856,0.1064653316022697,0.06727388787396847,0.04134497897251745,0.024713571567979757,0.014367263705598226,0.008123047595082028,0.004466247914285826,0.00238787087148503,0.001241315189757657,0.0006273506551236765],[0.00019085307416047084,0.000427735593022375,0.0009154999677703421,0.0018785427760837521,0.003705183389311135,0.007037850796446941,0.012891743134368144,0.022796968650959506,0.038948114467504,0.06433040160015333,0.10277551828464171,0.15888764844950465,0.237777836443935,0.3445597655682073,0.4835971119556469,0.6575511939656753,0.8663489303901696,1.1062579813804252,1.3692957963808603,1.6431905947615737,1.9120428868311663,2.157710434521356,2.3617813142837676,2.5078480189707713,2.58369398157717,2.5829866588703827,2.5061504698941497,2.360252674856456,2.157935733337383,1.9156188263935587,1.6513214455973093,1.382504439328647,1.1242761260580607,0.8881950603563269,0.681753974689802,0.508490806337837,0.3685727756962801,0.2596525558547819,0.17779964367393938,0.11835116519674863,0.07658543631666748,0.048180829893939556,0.02946949724107495,0.017524708559416857,0.010132370495990596,0.005695730614868391,0.0031128307293051918,0.0016539135191059942,0.00085427816392669,0.00042893158162475185],[0.00015467433254226992,0.00033730317026410566,0.0007068579540213779,0.001426387510000461,0.0027757308232860913,0.005214694393938894,0.009465772018457668,0.01661278511303559,0.028204175312385994,0.046339499210900144,0.07370664011304748,0.1135286305712499,0.16937736659984368,0.24482177350242806,0.34290350476382486,0.46547362678403026,0.6124730530389082,0.781286015232613,0.9663240521937969,1.1589928674870138,1.348147235131386,1.5210525366978733,1.664761506413968,1.767708174216397,1.821248281308265,1.8208609021600988,1.766778940906303,1.6639264964260956,1.5211815048894024,1.3501162762590453,1.16346263567873,0.9735811870935621,0.7911829153534153,0.6244706857320891,0.47876417336358856,0.3565725200169819,0.2580065622261027,0.18138764860996778,0.1239119427340493,0.08225799866347673,0.05306765334968623,0.03327296904690418,0.0202759838056014,0.012009231320719536,0.00691354561714987,0.00386850763227868,0.0021039865601078234,0.0011122298325710132,0.0005714640213770714,0.0002853727352412158],[0.00011471374340107766,0.00024605915379740816,0.0005088453885983873,0.0010157467039171178,0.0019590107979757087,0.0036529659412410835,0.0065894720605564295,0.011503815222497287,0.019443452557933075,0.031825254061134116,0.050459574657393036,0.07751378494154072,0.11538682992842232,0.16647320774527352,0.2328117000770775,0.3156410190951236,0.41491739262039135,0.5288802526455354,0.6537713018209581,0.783809269846392,0.9114916727135979,1.0282373671715606,1.1253101047459166,1.194891423803798,1.2311214948541818,1.2309155030689287,1.1943974903920762,1.1248669928321744,1.0283082788844742,0.9125431590898547,0.7861931034074191,0.6576400197642215,0.534155087968891,0.42131108954611957,0.3227231723292033,0.24009513876120434,0.17349836008321404,0.12178599581029174,0.08304596827312188,0.05501562280287775,0.03540987423374897,0.022143969863864976,0.013455451135775441,0.00794453589465019,0.004558046968453403,0.0025411959813518674,0.0013767410208051537,0.0007248083942872532,0.0003708085425283596,0.00018434319842885785],[7.94276357513285e-5,0.00016853676422224273,0.00034543822989974745,0.0006844570804525504,0.0013118642350558908,0.0024333633757807533,0.004369847033440323,0.007599773498200532,0.012803248986411457,0.020898572169965428,0.033057324270025945,0.05068044592136373,0.07531707008885656,0.10851224607424284,0.15158052953445184,0.20531960210597128,0.26969917295131707,0.3435804746859247,0.4245340923001754,0.5088221887981313,0.5915915103733886,0.66728672518215,0.7302462752277773,0.775396374657717,0.798926240970942,0.798819897268883,0.7751414588884111,0.7300178870805151,0.6673242789434296,0.5921361401364459,0.510055686290915,0.42653525156222405,0.34630851904852217,0.2730055541857945,0.2089817813343757,0.15534663573327184,0.1121446889748015,0.0786257648833707,0.05354081754530017,0.03541296123105144,0.02275192677857257,0.014199484030135816,0.00860881080588209,0.005070439630349467,0.002901304292748042,0.0016128616758449186,0.0008710952102688376,0.0004570931690846355,0.00023303320432550885,0.00011542653330209675],[5.1909447922021855e-5,0.00010932533847940737,0.00022267769702868418,0.00043888969430519074,0.00083742344707809,0.0015473734971323235,0.002769654356972046,0.004803241984336773,0.00807240959439023,0.013149228413431205,0.0207627237469639,0.03178383443209109,0.04717491208515216,0.06789518948276689,0.09476033380178886,0.12826481176990773,0.16838883265416058,0.21442407233830124,0.2648601423908039,0.31737284183626163,0.36894316479401756,0.41611330976620103,0.45535657612463565,0.4835090515504839,0.49819056551816626,0.4981372707013718,0.48338132974686693,0.4552422632234995,0.41613250191338097,0.3692168164584222,0.31799213318970104,0.26586457980569905,0.21579317587325125,0.17004805738793516,0.13010249673815416,0.09665010750958351,0.06971785017852629,0.04883509576827775,0.03321904647211315,0.021944669094997683,0.014079144792269032,0.008772962482669065,0.005309517768469595,0.0031211689941320238,0.0017821567672146462,0.0009884444800811495,0.0005325323495307037,0.00027869860755351164,0.0001416852245134142,6.997118718948676e-5],[3.2235359612692725e-5,6.752642715053398e-5,0.00013691561424368143,0.0002688099784423963,0.0005111981834974327,0.0009418796906925142,0.001681719851039108,0.0029103014396190973,0.004882140427606859,0.007940046007355308,0.012520493559257955,0.019144547910478326,0.028387630777223373,0.04082302754181928,0.05693800435950387,0.07702772039914826,0.10107988755970256,0.12867055529482638,0.1588960577602162,0.19036565996576083,0.2212723011537643,0.24954531473323588,0.2730714811754948,0.28995341017427045,0.29876193554539965,0.29873600924956656,0.28989128919723167,0.27301592687648324,0.24955479300727548,0.22140569408198743,0.19066735218312003,0.1593852748675077,0.1293373174647458,0.10188789318139398,0.0779225986268534,0.05785822410292342,0.04171055047542692,0.029196026392339345,0.019843390425497345,0.013096009113903814,0.008392840047651994,0.005223251172395429,0.0031568143669481684,0.0018528767245066982,0.001056198242047285,0.0005847317844543453,0.00031440538671350727,0.00016419261869493867,8.328267210297127e-5,4.1029727458267584e-5]],"type":"surface"}], {}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
</section>
<section id="parametrically-defined-surfaces" class="level3" data-number="64.10.2">
<h3 data-number="64.10.2" class="anchored" data-anchor-id="parametrically-defined-surfaces"><span class="header-section-number">64.10.2</span> Parametrically defined surfaces</h3>
<p>For parametrically defined surfaces, the <span class="math inline">\(x\)</span> and <span class="math inline">\(y\)</span> values also correspond to matrices. Her we see a pattern to plot a torus. The <a href="https://plotly.com/javascript/reference/layout/scene/#layout-scene-aspectmode"><code>aspectmode</code></a> instructs the scenes axes to be drawn in proportion with the axes ranges.</p>
<div class="cell" data-hold="true" data-execution_count="30">
<div class="sourceCode cell-code" id="cb33"><pre class="sourceCode julia code-with-copy"><code class="sourceCode julia"><span id="cb33-1"><a href="#cb33-1" aria-hidden="true" tabindex="-1"></a>r, R <span class="op">=</span> <span class="fl">1</span>, <span class="fl">5</span></span>
<span id="cb33-2"><a href="#cb33-2" aria-hidden="true" tabindex="-1"></a><span class="fu">X</span>(theta,phi) <span class="op">=</span> [(<span class="fu">r*cos</span>(theta)<span class="op">+</span>R)<span class="fu">*cos</span>(phi), (<span class="fu">r*cos</span>(theta)<span class="op">+</span>R)<span class="fu">*sin</span>(phi), <span class="fu">r*sin</span>(theta)]</span>
<span id="cb33-3"><a href="#cb33-3" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb33-4"><a href="#cb33-4" aria-hidden="true" tabindex="-1"></a>us <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>, <span class="fl">2</span>pi, length<span class="op">=</span><span class="fl">25</span>)</span>
<span id="cb33-5"><a href="#cb33-5" aria-hidden="true" tabindex="-1"></a>vs <span class="op">=</span> <span class="fu">range</span>(<span class="fl">0</span>, <span class="cn">pi</span>, length<span class="op">=</span><span class="fl">25</span>)</span>
<span id="cb33-6"><a href="#cb33-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb33-7"><a href="#cb33-7" aria-hidden="true" tabindex="-1"></a>xs <span class="op">=</span> [[<span class="fu">X</span>(u,v)[<span class="fl">1</span>] for u <span class="kw">in</span> us] for v <span class="kw">in</span> vs]</span>
<span id="cb33-8"><a href="#cb33-8" aria-hidden="true" tabindex="-1"></a>ys <span class="op">=</span> [[<span class="fu">X</span>(u,v)[<span class="fl">2</span>] for u <span class="kw">in</span> us] for v <span class="kw">in</span> vs]</span>
<span id="cb33-9"><a href="#cb33-9" aria-hidden="true" tabindex="-1"></a>zs <span class="op">=</span> [[<span class="fu">X</span>(u,v)[<span class="fl">3</span>] for u <span class="kw">in</span> us] for v <span class="kw">in</span> vs]</span>
<span id="cb33-10"><a href="#cb33-10" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb33-11"><a href="#cb33-11" aria-hidden="true" tabindex="-1"></a>data <span class="op">=</span> <span class="fu">Config</span>(</span>
<span id="cb33-12"><a href="#cb33-12" aria-hidden="true" tabindex="-1"></a> x <span class="op">=</span> xs, y <span class="op">=</span> ys, z <span class="op">=</span> zs,</span>
<span id="cb33-13"><a href="#cb33-13" aria-hidden="true" tabindex="-1"></a> <span class="kw">type</span><span class="op">=</span><span class="st">"surface"</span>,</span>
<span id="cb33-14"><a href="#cb33-14" aria-hidden="true" tabindex="-1"></a> mode<span class="op">=</span><span class="st">"scatter3d"</span></span>
<span id="cb33-15"><a href="#cb33-15" aria-hidden="true" tabindex="-1"></a>)</span>
<span id="cb33-16"><a href="#cb33-16" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb33-17"><a href="#cb33-17" aria-hidden="true" tabindex="-1"></a>lyt <span class="op">=</span> <span class="fu">Config</span>(scene<span class="op">=</span><span class="fu">Config</span>(aspectmode<span class="op">=</span><span class="st">"data"</span>))</span>
<span id="cb33-18"><a href="#cb33-18" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb33-19"><a href="#cb33-19" aria-hidden="true" tabindex="-1"></a><span class="fu">Plot</span>(data, lyt)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<div class="cell-output cell-output-display" data-execution_count="30">
<div class="" style="height: 100vh;" id="parent-of-92WvEpCSuz">
<div class="" style="height: 100%;" id="92WvEpCSuz"></div>
</div>
<script src="https://cdn.plot.ly/plotly-2.11.0.min.js"></script>
<script>
Plotly.newPlot("92WvEpCSuz", [{"x":[[6.0,5.965925826289069,5.866025403784438,5.707106781186548,5.5,5.258819045102521,5.0,4.741180954897479,4.5,4.292893218813452,4.133974596215562,4.034074173710932,4.0,4.034074173710931,4.133974596215561,4.292893218813452,4.5,4.741180954897479,5.0,5.25881904510252,5.5,5.707106781186547,5.866025403784438,5.965925826289069,6.0],[5.948669168242862,5.9148865038116005,5.8158407432703125,5.65828169151903,5.4529467375559575,5.213829119161622,4.957224306869052,4.700619494576482,4.4615018761821466,4.256166922219074,4.0986078704677915,3.999562109926504,3.9657794454952415,3.999562109926503,4.098607870467791,4.256166922219074,4.4615018761821466,4.700619494576482,4.957224306869052,5.2138291191616215,5.4529467375559575,5.658281691519029,5.8158407432703125,5.9148865038116005,5.948669168242862],[5.79555495773441,5.762641833337561,5.666145435183149,5.512641833337561,5.312592044589875,5.0796291314453415,4.8296291314453415,4.5796291314453415,4.346666218300808,4.146616429553122,3.993112827707534,3.8966164295531227,3.8637033051562732,3.896616429553122,3.993112827707533,4.146616429553122,4.346666218300808,4.5796291314453415,4.8296291314453415,5.079629131445341,5.312592044589875,5.51264183333756,5.666145435183149,5.762641833337561,5.79555495773441],[5.54327719506772,5.511796763388957,5.419500807747699,5.272679144994623,5.081337428812077,4.858515280950768,4.619397662556434,4.380280044162099,4.15745789630079,3.966116180118245,3.8192945173651682,3.7269985617239114,3.695518130045147,3.7269985617239105,3.819294517365168,3.966116180118245,4.15745789630079,4.380280044162099,4.619397662556434,4.858515280950767,5.081337428812077,5.272679144994622,5.419500807747699,5.511796763388957,5.54327719506772],[5.196152422706632,5.1666433226600015,5.080127018922194,4.942499454617988,4.763139720814413,4.554270886964207,4.330127018922194,4.1059831508801805,3.897114317029974,3.7177545832263985,3.5801270189221936,3.493610715184386,3.464101615137755,3.4936107151843854,3.5801270189221928,3.7177545832263985,3.897114317029974,4.1059831508801805,4.330127018922194,4.554270886964206,4.763139720814413,4.9424994546179875,5.080127018922194,5.1666433226600015,5.196152422706632],[4.760120041747411,4.73308718221618,4.653830848325626,4.5277522282531075,4.363443371601793,4.172101655419248,3.9667667014561756,3.761431747493103,3.570090031310558,3.4057811746592446,3.2797025545867258,3.2004462206961724,3.1734133611649407,3.200446220696172,3.2797025545867253,3.4057811746592446,3.570090031310558,3.761431747493103,3.9667667014561756,4.172101655419247,4.363443371601793,4.527752228253107,4.653830848325626,4.73308718221618,4.760120041747411],[4.242640687119286,4.218546607824957,4.1479063416285324,4.035533905932738,3.8890872965260117,3.7185466078249574,3.5355339059327378,3.3525212040405186,3.1819805153394642,3.0355339059327378,2.9231614702369435,2.852521204040519,2.8284271247461903,2.852521204040518,2.923161470236943,3.0355339059327378,3.1819805153394642,3.3525212040405186,3.5355339059327378,3.7185466078249565,3.8890872965260117,4.035533905932738,4.1479063416285324,4.218546607824957,4.242640687119286],[3.652568574052324,3.631825531371766,3.571010007409272,3.474266479620483,3.3481878595479637,3.2013661967948863,3.043807145043603,2.8862480932923202,2.739426430539243,2.6133478104667236,2.5166042826779345,2.4557887587154412,2.4350457160348826,2.455788758715441,2.5166042826779336,2.6133478104667236,2.739426430539243,2.8862480932923202,3.043807145043603,3.201366196794886,3.3481878595479637,3.4742664796204825,3.571010007409272,3.631825531371766,3.652568574052324],[3.000000000000001,2.9829629131445348,2.9330127018922196,2.8535533905932744,2.7500000000000004,2.629409522551261,2.5000000000000004,2.37059047744874,2.2500000000000004,2.1464466094067265,2.0669872981077813,2.0170370868554666,2.0000000000000004,2.017037086855466,2.066987298107781,2.1464466094067265,2.2500000000000004,2.37059047744874,2.5000000000000004,2.6294095225512604,2.7500000000000004,2.853553390593274,2.9330127018922196,2.9829629131445348,3.000000000000001],[2.296100594190539,2.2830609724398356,2.244830735861041,2.184015211898548,2.104758878007994,2.012462922366737,1.9134171618254492,1.8143714012841616,1.7220754456429042,1.6428191117523505,1.5820035877898575,1.5437733512110632,1.5307337294603593,1.543773351211063,1.582003587789857,1.6428191117523505,1.7220754456429042,1.8143714012841616,1.9134171618254492,2.0124629223667365,2.104758878007994,2.1840152118985476,2.244830735861041,2.2830609724398356,2.296100594190539],[1.5529142706151244,1.5440952255126037,1.518239093554617,1.477107927404823,1.423504748063864,1.3610825236203843,1.2940952255126037,1.227107927404823,1.1646857029613433,1.1110825236203843,1.0699513574705903,1.044095225512604,1.035276180410083,1.0440952255126037,1.0699513574705901,1.1110825236203843,1.1646857029613433,1.227107927404823,1.2940952255126037,1.361082523620384,1.423504748063864,1.4771079274048229,1.518239093554617,1.5440952255126037,1.5529142706151244],[0.7831571533203103,0.7787095811727778,0.765669959422074,0.744926916741516,0.7178940572102844,0.6864136255315204,0.6526309611002585,0.6188482966689967,0.5873678649902327,0.5603350054590012,0.539591962778443,0.5265523410277394,0.5221047688802068,0.5265523410277393,0.5395919627784429,0.5603350054590012,0.5873678649902327,0.6188482966689967,0.6526309611002585,0.6864136255315203,0.7178940572102844,0.7449269167415158,0.765669959422074,0.7787095811727778,0.7831571533203103],[3.6739403974420594e-16,3.653075983557718e-16,3.591904617230836e-16,3.49459502598613e-16,3.3677786976552215e-16,3.220097955439971e-16,3.061616997868383e-16,2.9031360402967946e-16,2.755455298081545e-16,2.6286389697506364e-16,2.5313293785059296e-16,2.4701580121790483e-16,2.4492935982947064e-16,2.470158012179048e-16,2.531329378505929e-16,2.6286389697506364e-16,2.755455298081545e-16,2.9031360402967946e-16,3.061616997868383e-16,3.2200979554399707e-16,3.3677786976552215e-16,3.4945950259861294e-16,3.591904617230836e-16,3.653075983557718e-16,3.6739403974420594e-16],[-0.7831571533203097,-0.7787095811727771,-0.7656699594220734,-0.7449269167415153,-0.7178940572102838,-0.6864136255315199,-0.652630961100258,-0.6188482966689962,-0.5873678649902322,-0.5603350054590007,-0.5395919627784426,-0.526552341027739,-0.5221047688802064,-0.5265523410277388,-0.5395919627784425,-0.5603350054590007,-0.5873678649902322,-0.6188482966689962,-0.652630961100258,-0.6864136255315197,-0.7178940572102838,-0.7449269167415152,-0.7656699594220734,-0.7787095811727771,-0.7831571533203097],[-1.5529142706151238,-1.544095225512603,-1.5182390935546164,-1.4771079274048224,-1.4235047480638634,-1.3610825236203838,-1.2940952255126033,-1.2271079274048224,-1.1646857029613429,-1.1110825236203838,-1.06995135747059,-1.0440952255126035,-1.0352761804100825,-1.0440952255126033,-1.0699513574705897,-1.1110825236203838,-1.1646857029613429,-1.2271079274048224,-1.2940952255126033,-1.3610825236203836,-1.4235047480638634,-1.4771079274048222,-1.5182390935546164,-1.544095225512603,-1.5529142706151238],[-2.2961005941905386,-2.2830609724398347,-2.2448307358610404,-2.184015211898547,-2.1047588780079933,-2.012462922366736,-1.9134171618254485,-1.814371401284161,-1.7220754456429037,-1.64281911175235,-1.582003587789857,-1.5437733512110627,-1.530733729460359,-1.5437733512110625,-1.5820035877898566,-1.64281911175235,-1.7220754456429037,-1.814371401284161,-1.9134171618254485,-2.012462922366736,-2.1047588780079933,-2.1840152118985467,-2.2448307358610404,-2.2830609724398347,-2.2961005941905386],[-2.9999999999999987,-2.982962913144533,-2.933012701892218,-2.8535533905932726,-2.7499999999999987,-2.629409522551259,-2.499999999999999,-2.3705904774487387,-2.249999999999999,-2.146446609406725,-2.06698729810778,-2.0170370868554652,-1.9999999999999991,-2.017037086855465,-2.0669872981077795,-2.146446609406725,-2.249999999999999,-2.3705904774487387,-2.499999999999999,-2.6294095225512586,-2.7499999999999987,-2.853553390593272,-2.933012701892218,-2.982962913144533,-2.9999999999999987],[-3.652568574052324,-3.631825531371766,-3.571010007409272,-3.474266479620483,-3.3481878595479637,-3.2013661967948863,-3.043807145043603,-2.8862480932923202,-2.739426430539243,-2.6133478104667236,-2.5166042826779345,-2.4557887587154412,-2.4350457160348826,-2.455788758715441,-2.5166042826779336,-2.6133478104667236,-2.739426430539243,-2.8862480932923202,-3.043807145043603,-3.201366196794886,-3.3481878595479637,-3.4742664796204825,-3.571010007409272,-3.631825531371766,-3.652568574052324],[-4.242640687119285,-4.2185466078249565,-4.147906341628532,-4.035533905932738,-3.889087296526011,-3.7185466078249565,-3.5355339059327373,-3.352521204040518,-3.181980515339464,-3.035533905932737,-2.923161470236943,-2.8525212040405186,-2.82842712474619,-2.8525212040405177,-2.9231614702369426,-3.035533905932737,-3.181980515339464,-3.352521204040518,-3.5355339059327373,-3.718546607824956,-3.889087296526011,-4.035533905932737,-4.147906341628532,-4.2185466078249565,-4.242640687119285],[-4.7601200417474105,-4.733087182216179,-4.653830848325625,-4.527752228253107,-4.363443371601793,-4.172101655419248,-3.966766701456175,-3.7614317474931025,-3.5700900313105577,-3.405781174659244,-3.2797025545867253,-3.200446220696172,-3.17341336116494,-3.2004462206961715,-3.279702554586725,-3.405781174659244,-3.5700900313105577,-3.7614317474931025,-3.966766701456175,-4.172101655419247,-4.363443371601793,-4.527752228253106,-4.653830848325625,-4.733087182216179,-4.7601200417474105],[-5.196152422706632,-5.1666433226600015,-5.080127018922194,-4.942499454617988,-4.763139720814413,-4.554270886964207,-4.330127018922194,-4.1059831508801805,-3.897114317029974,-3.7177545832263985,-3.5801270189221936,-3.493610715184386,-3.464101615137755,-3.4936107151843854,-3.5801270189221928,-3.7177545832263985,-3.897114317029974,-4.1059831508801805,-4.330127018922194,-4.554270886964206,-4.763139720814413,-4.9424994546179875,-5.080127018922194,-5.1666433226600015,-5.196152422706632],[-5.54327719506772,-5.511796763388957,-5.419500807747699,-5.272679144994623,-5.081337428812077,-4.858515280950768,-4.619397662556434,-4.380280044162099,-4.15745789630079,-3.966116180118245,-3.8192945173651682,-3.7269985617239114,-3.695518130045147,-3.7269985617239105,-3.819294517365168,-3.966116180118245,-4.15745789630079,-4.380280044162099,-4.619397662556434,-4.858515280950767,-5.081337428812077,-5.272679144994622,-5.419500807747699,-5.511796763388957,-5.54327719506772],[-5.795554957734409,-5.76264183333756,-5.666145435183148,-5.51264183333756,-5.312592044589875,-5.079629131445341,-4.829629131445341,-4.5796291314453415,-4.346666218300807,-4.146616429553122,-3.9931128277075336,-3.8966164295531223,-3.863703305156273,-3.8966164295531214,-3.9931128277075327,-4.146616429553122,-4.346666218300807,-4.5796291314453415,-4.829629131445341,-5.07962913144534,-5.312592044589875,-5.51264183333756,-5.666145435183148,-5.76264183333756,-5.795554957734409],[-5.948669168242862,-5.9148865038116005,-5.8158407432703125,-5.65828169151903,-5.4529467375559575,-5.213829119161622,-4.957224306869052,-4.700619494576482,-4.4615018761821466,-4.256166922219074,-4.0986078704677915,-3.999562109926504,-3.9657794454952415,-3.999562109926503,-4.098607870467791,-4.256166922219074,-4.4615018761821466,-4.700619494576482,-4.957224306869052,-5.2138291191616215,-5.4529467375559575,-5.658281691519029,-5.8158407432703125,-5.9148865038116005,-5.948669168242862],[-6.0,-5.965925826289069,-5.866025403784438,-5.707106781186548,-5.5,-5.258819045102521,-5.0,-4.741180954897479,-4.5,-4.292893218813452,-4.133974596215562,-4.034074173710932,-4.0,-4.034074173710931,-4.133974596215561,-4.292893218813452,-4.5,-4.741180954897479,-5.0,-5.25881904510252,-5.5,-5.707106781186547,-5.866025403784438,-5.965925826289069,-6.0]],"y":[[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0],[0.7831571533203094,0.778709581172777,0.7656699594220733,0.7449269167415151,0.7178940572102837,0.6864136255315196,0.6526309611002579,0.6188482966689961,0.5873678649902321,0.5603350054590006,0.5395919627784425,0.5265523410277388,0.5221047688802063,0.5265523410277387,0.5395919627784423,0.5603350054590006,0.5873678649902321,0.6188482966689961,0.6526309611002579,0.6864136255315195,0.7178940572102837,0.744926916741515,0.7656699594220733,0.778709581172777,0.7831571533203094],[1.5529142706151244,1.5440952255126037,1.518239093554617,1.477107927404823,1.423504748063864,1.3610825236203843,1.2940952255126037,1.227107927404823,1.1646857029613433,1.1110825236203843,1.0699513574705903,1.044095225512604,1.035276180410083,1.0440952255126037,1.0699513574705901,1.1110825236203843,1.1646857029613433,1.227107927404823,1.2940952255126037,1.361082523620384,1.423504748063864,1.4771079274048229,1.518239093554617,1.5440952255126037,1.5529142706151244],[2.2961005941905386,2.283060972439835,2.2448307358610404,2.1840152118985476,2.1047588780079938,2.0124629223667365,1.913417161825449,1.8143714012841612,1.722075445642904,1.6428191117523503,1.5820035877898573,1.543773351211063,1.5307337294603591,1.5437733512110627,1.5820035877898568,1.6428191117523503,1.722075445642904,1.8143714012841612,1.913417161825449,2.012462922366736,2.1047588780079938,2.184015211898547,2.2448307358610404,2.283060972439835,2.2961005941905386],[2.9999999999999996,2.982962913144534,2.9330127018922187,2.8535533905932735,2.7499999999999996,2.62940952255126,2.4999999999999996,2.370590477448739,2.2499999999999996,2.1464466094067256,2.0669872981077804,2.0170370868554657,1.9999999999999998,2.0170370868554652,2.06698729810778,2.1464466094067256,2.2499999999999996,2.370590477448739,2.4999999999999996,2.6294095225512595,2.7499999999999996,2.853553390593273,2.9330127018922187,2.982962913144534,2.9999999999999996],[3.652568574052324,3.631825531371766,3.571010007409272,3.474266479620483,3.3481878595479637,3.2013661967948863,3.043807145043603,2.8862480932923202,2.739426430539243,2.6133478104667236,2.5166042826779345,2.4557887587154412,2.4350457160348826,2.455788758715441,2.5166042826779336,2.6133478104667236,2.739426430539243,2.8862480932923202,3.043807145043603,3.201366196794886,3.3481878595479637,3.4742664796204825,3.571010007409272,3.631825531371766,3.652568574052324],[4.242640687119285,4.2185466078249565,4.147906341628532,4.035533905932738,3.889087296526011,3.7185466078249565,3.5355339059327373,3.352521204040518,3.181980515339464,3.035533905932737,2.923161470236943,2.8525212040405186,2.82842712474619,2.8525212040405177,2.9231614702369426,3.035533905932737,3.181980515339464,3.352521204040518,3.5355339059327373,3.718546607824956,3.889087296526011,4.035533905932737,4.147906341628532,4.2185466078249565,4.242640687119285],[4.760120041747411,4.73308718221618,4.653830848325626,4.5277522282531075,4.363443371601793,4.172101655419248,3.9667667014561756,3.761431747493103,3.570090031310558,3.4057811746592446,3.2797025545867258,3.2004462206961724,3.1734133611649407,3.200446220696172,3.2797025545867253,3.4057811746592446,3.570090031310558,3.761431747493103,3.9667667014561756,4.172101655419247,4.363443371601793,4.527752228253107,4.653830848325626,4.73308718221618,4.760120041747411],[5.196152422706632,5.1666433226600015,5.080127018922193,4.9424994546179875,4.763139720814412,4.554270886964206,4.330127018922193,4.10598315088018,3.8971143170299736,3.717754583226398,3.580127018922193,3.4936107151843854,3.4641016151377544,3.493610715184385,3.5801270189221923,3.717754583226398,3.8971143170299736,4.10598315088018,4.330127018922193,4.554270886964206,4.763139720814412,4.9424994546179875,5.080127018922193,5.1666433226600015,5.196152422706632],[5.54327719506772,5.511796763388957,5.419500807747699,5.272679144994623,5.081337428812077,4.858515280950768,4.619397662556434,4.380280044162099,4.15745789630079,3.966116180118245,3.8192945173651682,3.7269985617239114,3.695518130045147,3.7269985617239105,3.819294517365168,3.966116180118245,4.15745789630079,4.380280044162099,4.619397662556434,4.858515280950767,5.081337428812077,5.272679144994622,5.419500807747699,5.511796763388957,5.54327719506772],[5.79555495773441,5.762641833337561,5.666145435183149,5.512641833337561,5.312592044589875,5.0796291314453415,4.8296291314453415,4.5796291314453415,4.346666218300808,4.146616429553122,3.993112827707534,3.8966164295531227,3.8637033051562732,3.896616429553122,3.993112827707533,4.146616429553122,4.346666218300808,4.5796291314453415,4.8296291314453415,5.079629131445341,5.312592044589875,5.51264183333756,5.666145435183149,5.762641833337561,5.79555495773441],[5.948669168242862,5.9148865038116005,5.8158407432703125,5.65828169151903,5.4529467375559575,5.213829119161622,4.957224306869052,4.700619494576482,4.4615018761821466,4.256166922219074,4.0986078704677915,3.999562109926504,3.9657794454952415,3.999562109926503,4.098607870467791,4.256166922219074,4.4615018761821466,4.700619494576482,4.957224306869052,5.2138291191616215,5.4529467375559575,5.658281691519029,5.8158407432703125,5.9148865038116005,5.948669168242862],[6.0,5.965925826289069,5.866025403784438,5.707106781186548,5.5,5.258819045102521,5.0,4.741180954897479,4.5,4.292893218813452,4.133974596215562,4.034074173710932,4.0,4.034074173710931,4.133974596215561,4.292893218813452,4.5,4.741180954897479,5.0,5.25881904510252,5.5,5.707106781186547,5.866025403784438,5.965925826289069,6.0],[5.948669168242862,5.9148865038116005,5.8158407432703125,5.65828169151903,5.4529467375559575,5.213829119161622,4.957224306869052,4.700619494576482,4.4615018761821466,4.256166922219074,4.0986078704677915,3.999562109926504,3.9657794454952415,3.999562109926503,4.098607870467791,4.256166922219074,4.4615018761821466,4.700619494576482,4.957224306869052,5.2138291191616215,5.4529467375559575,5.658281691519029,5.8158407432703125,5.9148865038116005,5.948669168242862],[5.79555495773441,5.762641833337561,5.666145435183149,5.512641833337561,5.312592044589875,5.0796291314453415,4.8296291314453415,4.5796291314453415,4.346666218300808,4.146616429553122,3.993112827707534,3.8966164295531227,3.8637033051562732,3.896616429553122,3.993112827707533,4.146616429553122,4.346666218300808,4.5796291314453415,4.8296291314453415,5.079629131445341,5.312592044589875,5.51264183333756,5.666145435183149,5.762641833337561,5.79555495773441],[5.54327719506772,5.511796763388957,5.419500807747699,5.272679144994623,5.081337428812077,4.858515280950768,4.619397662556434,4.380280044162099,4.15745789630079,3.966116180118245,3.8192945173651682,3.7269985617239114,3.695518130045147,3.7269985617239105,3.819294517365168,3.966116180118245,4.15745789630079,4.380280044162099,4.619397662556434,4.858515280950767,5.081337428812077,5.272679144994622,5.419500807747699,5.511796763388957,5.54327719506772],[5.196152422706632,5.1666433226600015,5.080127018922194,4.942499454617988,4.763139720814413,4.554270886964207,4.330127018922194,4.1059831508801805,3.897114317029974,3.7177545832263985,3.5801270189221936,3.493610715184386,3.464101615137755,3.4936107151843854,3.5801270189221928,3.7177545832263985,3.897114317029974,4.1059831508801805,4.330127018922194,4.554270886964206,4.763139720814413,4.9424994546179875,5.080127018922194,5.1666433226600015,5.196152422706632],[4.760120041747411,4.73308718221618,4.653830848325626,4.5277522282531075,4.363443371601793,4.172101655419248,3.9667667014561756,3.761431747493103,3.570090031310558,3.4057811746592446,3.2797025545867258,3.2004462206961724,3.1734133611649407,3.200446220696172,3.2797025545867253,3.4057811746592446,3.570090031310558,3.761431747493103,3.9667667014561756,4.172101655419247,4.363443371601793,4.527752228253107,4.653830848325626,4.73308718221618,4.760120041747411],[4.242640687119286,4.218546607824957,4.1479063416285324,4.035533905932738,3.8890872965260117,3.7185466078249574,3.5355339059327378,3.3525212040405186,3.1819805153394642,3.0355339059327378,2.9231614702369435,2.852521204040519,2.8284271247461903,2.852521204040518,2.923161470236943,3.0355339059327378,3.1819805153394642,3.3525212040405186,3.5355339059327378,3.7185466078249565,3.8890872965260117,4.035533905932738,4.1479063416285324,4.218546607824957,4.242640687119286],[3.6525685740523253,3.631825531371767,3.5710100074092734,3.4742664796204843,3.3481878595479646,3.2013661967948877,3.0438071450436044,2.886248093292321,2.739426430539244,2.6133478104667245,2.5166042826779353,2.455788758715442,2.4350457160348835,2.4557887587154417,2.5166042826779345,2.6133478104667245,2.739426430539244,2.886248093292321,3.0438071450436044,3.2013661967948868,3.3481878595479646,3.474266479620484,3.5710100074092734,3.631825531371767,3.6525685740523253],[2.9999999999999996,2.982962913144534,2.9330127018922187,2.8535533905932735,2.7499999999999996,2.62940952255126,2.4999999999999996,2.370590477448739,2.2499999999999996,2.1464466094067256,2.0669872981077804,2.0170370868554657,1.9999999999999998,2.0170370868554652,2.06698729810778,2.1464466094067256,2.2499999999999996,2.370590477448739,2.4999999999999996,2.6294095225512595,2.7499999999999996,2.853553390593273,2.9330127018922187,2.982962913144534,2.9999999999999996],[2.2961005941905395,2.2830609724398356,2.2448307358610413,2.184015211898548,2.104758878007994,2.012462922366737,1.9134171618254494,1.8143714012841619,1.7220754456429046,1.6428191117523507,1.5820035877898577,1.5437733512110634,1.5307337294603596,1.5437733512110632,1.5820035877898573,1.6428191117523507,1.7220754456429046,1.8143714012841619,1.9134171618254494,2.012462922366737,2.104758878007994,2.1840152118985476,2.2448307358610413,2.2830609724398356,2.2961005941905395],[1.5529142706151262,1.5440952255126055,1.5182390935546186,1.4771079274048247,1.4235047480638656,1.3610825236203858,1.294095225512605,1.2271079274048244,1.1646857029613447,1.1110825236203854,1.0699513574705914,1.044095225512605,1.035276180410084,1.0440952255126048,1.0699513574705912,1.1110825236203854,1.1646857029613447,1.2271079274048244,1.294095225512605,1.3610825236203856,1.4235047480638656,1.4771079274048244,1.5182390935546186,1.5440952255126055,1.5529142706151262],[0.7831571533203094,0.778709581172777,0.7656699594220733,0.7449269167415151,0.7178940572102837,0.6864136255315196,0.6526309611002579,0.6188482966689961,0.5873678649902321,0.5603350054590006,0.5395919627784425,0.5265523410277388,0.5221047688802063,0.5265523410277387,0.5395919627784423,0.5603350054590006,0.5873678649902321,0.6188482966689961,0.6526309611002579,0.6864136255315195,0.7178940572102837,0.744926916741515,0.7656699594220733,0.778709581172777,0.7831571533203094],[7.347880794884119e-16,7.306151967115436e-16,7.183809234461672e-16,6.98919005197226e-16,6.735557395310443e-16,6.440195910879942e-16,6.123233995736766e-16,5.806272080593589e-16,5.51091059616309e-16,5.257277939501273e-16,5.062658757011859e-16,4.940316024358097e-16,4.898587196589413e-16,4.940316024358096e-16,5.062658757011858e-16,5.257277939501273e-16,5.51091059616309e-16,5.806272080593589e-16,6.123233995736766e-16,6.440195910879941e-16,6.735557395310443e-16,6.989190051972259e-16,7.183809234461672e-16,7.306151967115436e-16,7.347880794884119e-16]],"z":[[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16],[0.0,0.25881904510252074,0.49999999999999994,0.7071067811865475,0.8660254037844386,0.9659258262890683,1.0,0.9659258262890683,0.8660254037844387,0.7071067811865476,0.49999999999999994,0.258819045102521,1.2246467991473532e-16,-0.2588190451025208,-0.4999999999999997,-0.7071067811865475,-0.8660254037844385,-0.9659258262890683,-1.0,-0.9659258262890684,-0.8660254037844386,-0.7071067811865477,-0.5000000000000004,-0.2588190451025207,-2.4492935982947064e-16]],"type":"surface","mode":"scatter3d"}], {"scene":{"aspectmode":"data"}}, {"displaylogo":false,"responsive":true});
console.log('plot created!')</script>
</div>
</div>
</section>
</section>
</main> <!-- /main -->
<script id="quarto-html-after-body" type="application/javascript">
window.document.addEventListener("DOMContentLoaded", function (event) {
const toggleBodyColorMode = (bsSheetEl) => {
const mode = bsSheetEl.getAttribute("data-mode");
const bodyEl = window.document.querySelector("body");
if (mode === "dark") {
bodyEl.classList.add("quarto-dark");
bodyEl.classList.remove("quarto-light");
} else {
bodyEl.classList.add("quarto-light");
bodyEl.classList.remove("quarto-dark");
}
}
const toggleBodyColorPrimary = () => {
const bsSheetEl = window.document.querySelector("link#quarto-bootstrap");
if (bsSheetEl) {
toggleBodyColorMode(bsSheetEl);
}
}
toggleBodyColorPrimary();
const icon = "";
const anchorJS = new window.AnchorJS();
anchorJS.options = {
placement: 'right',
icon: icon
};
anchorJS.add('.anchored');
const clipboard = new window.ClipboardJS('.code-copy-button', {
target: function(trigger) {
return trigger.previousElementSibling;
}
});
clipboard.on('success', function(e) {
// button target
const button = e.trigger;
// don't keep focus
button.blur();
// flash "checked"
button.classList.add('code-copy-button-checked');
var currentTitle = button.getAttribute("title");
button.setAttribute("title", "Copied!");
setTimeout(function() {
button.setAttribute("title", currentTitle);
button.classList.remove('code-copy-button-checked');
}, 1000);
// clear code selection
e.clearSelection();
});
function tippyHover(el, contentFn) {
const config = {
allowHTML: true,
content: contentFn,
maxWidth: 500,
delay: 100,
arrow: false,
appendTo: function(el) {
return el.parentElement;
},
interactive: true,
interactiveBorder: 10,
theme: 'quarto',
placement: 'bottom-start'
};
window.tippy(el, config);
}
const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
for (var i=0; i<noterefs.length; i++) {
const ref = noterefs[i];
tippyHover(ref, function() {
let href = ref.getAttribute('href');
try { href = new URL(href).hash; } catch {}
const id = href.replace(/^#\/?/, "");
const note = window.document.getElementById(id);
return note.innerHTML;
});
}
var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
for (var i=0; i<bibliorefs.length; i++) {
const ref = bibliorefs[i];
const cites = ref.parentNode.getAttribute('data-cites').split(' ');
tippyHover(ref, function() {
var popup = window.document.createElement('div');
cites.forEach(function(cite) {
var citeDiv = window.document.createElement('div');
citeDiv.classList.add('hanging-indent');
citeDiv.classList.add('csl-entry');
var biblioDiv = window.document.getElementById('ref-' + cite);
if (biblioDiv) {
citeDiv.innerHTML = biblioDiv.innerHTML;
}
popup.appendChild(citeDiv);
});
return popup.innerHTML;
});
}
var localhostRegex = new RegExp(/^(?:http|https):\/\/localhost\:?[0-9]*\//);
var filterRegex = new RegExp('/' + window.location.host + '/');
var isInternal = (href) => {
return filterRegex.test(href) || localhostRegex.test(href);
}
// Inspect non-navigation links and adorn them if external
var links = window.document.querySelectorAll('a:not(.nav-link):not(.navbar-brand):not(.toc-action):not(.sidebar-link):not(.sidebar-item-toggle):not(.pagination-link):not(.no-external)');
for (var i=0; i<links.length; i++) {
const link = links[i];
if (!isInternal(link.href)) {
// target, if specified
link.setAttribute("target", "_blank");
}
}
});
</script>
<nav class="page-navigation">
<div class="nav-page nav-page-previous">
<a href="../integral_vector_calculus/review.html" class="pagination-link">
<i class="bi bi-arrow-left-short"></i> <span class="nav-page-text"><span class="chapter-number">63</span>&nbsp; <span class="chapter-title">Quick Review of Vector Calculus</span></span>
</a>
</div>
<div class="nav-page nav-page-next">
<a href="../alternatives/makie_plotting.html" class="pagination-link">
<span class="nav-page-text"><span class="chapter-number">65</span>&nbsp; <span class="chapter-title">Calculus plots with Makie</span></span> <i class="bi bi-arrow-right-short"></i>
</a>
</div>
</nav>
</div> <!-- /content -->
<footer class="footer">
<div class="nav-footer">
<div class="nav-footer-center">Copyright 2022, John Verzani</div>
</div>
</footer>
</body></html>