
.. DO NOT EDIT.
.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY.
.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE:
.. "tutorial/01_basic/solutions/a_load_examples_solution.py"
.. LINE NUMBERS ARE GIVEN BELOW.

.. only:: html

    .. note::
        :class: sphx-glr-download-link-note

        :ref:`Go to the end <sphx_glr_download_tutorial_01_basic_solutions_a_load_examples_solution.py>`
        to download the full example code. or to run this example in your browser via Binder

.. rst-class:: sphx-glr-example-title

.. _sphx_glr_tutorial_01_basic_solutions_a_load_examples_solution.py:


.. _load_examples_solution:

Download and Plot Examples
~~~~~~~~~~~~~~~~~~~~~~~~~~

.. note::
   This is the solution to :ref:`load_examples`. If you haven't already tried to
   solve it on your own, you probably should try that first.

Download and plot example datasets.

PyVista contains many downloadable datasets documented at
`pyvista.examples.downloads
<https://docs.pyvista.org/api/examples/_autosummary/pyvista.examples.downloads.html>`_. You can download these through Python and then immediately plot them.

This is an easy way to immediately get started with example datasets within
PyVista without having to manually download and load them.

.. GENERATED FROM PYTHON SOURCE LINES 23-25

Import PyVista and the examples module
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. GENERATED FROM PYTHON SOURCE LINES 25-28

.. code-block:: Python

    import pyvista as pv
    from pyvista import examples








.. GENERATED FROM PYTHON SOURCE LINES 29-33

Surface DataSet - Download
~~~~~~~~~~~~~~~~~~~~~~~~~~
Download a surface dataset of pine roots. Note how the dataset is
automatically loaded right into Python.

.. GENERATED FROM PYTHON SOURCE LINES 33-37

.. code-block:: Python

    dataset = examples.download_pine_roots()
    dataset







.. raw:: html

    <div class="output_subarea output_html rendered_html output_result">
    <div><style>/* PyVista HTML repr stylesheet.
     * Uses pv- prefix to avoid conflicts with other libraries.
     */

    :root {
      --pv-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));
      --pv-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));
      --pv-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));
      --pv-border-color: var(--jp-border-color2, #e0e0e0);
      --pv-disabled-color: var(--jp-layout-color3, #bdbdbd);
      --pv-background-color-row-even: var(--jp-layout-color1, #f5f5f5);
      --pv-background-color-row-odd: var(--jp-layout-color2, #eeeeee);
      --pv-badge-active: #1b5e20;
      --pv-badge-normals: #0d47a1;
      --pv-badge-vectors: #00695c;
      --pv-badge-tcoords: #4527a0;
    }

    body[data-jp-theme-light="false"] {
      --pv-font-color0: var(--jp-content-font-color0, rgba(255, 255, 255, 1));
      --pv-font-color2: var(--jp-content-font-color2, rgba(255, 255, 255, 0.54));
      --pv-font-color3: var(--jp-content-font-color3, rgba(255, 255, 255, 0.38));
      --pv-border-color: var(--jp-border-color2, #424242);
      --pv-disabled-color: var(--jp-layout-color3, #616161);
      --pv-background-color-row-even: var(--jp-layout-color1, #1a1a1a);
      --pv-background-color-row-odd: var(--jp-layout-color2, #252525);
      --pv-badge-active: #66bb6a;
      --pv-badge-normals: #64b5f6;
      --pv-badge-vectors: #4db6ac;
      --pv-badge-tcoords: #b39ddb;
    }

    html[theme="dark"],
    html[data-theme="dark"],
    body[data-theme="dark"],
    body.vscode-dark {
      --pv-font-color0: rgba(255, 255, 255, 1);
      --pv-font-color2: rgba(255, 255, 255, 0.54);
      --pv-font-color3: rgba(255, 255, 255, 0.38);
      --pv-border-color: #424242;
      --pv-disabled-color: #616161;
      --pv-background-color-row-even: #1a1a1a;
      --pv-background-color-row-odd: #252525;
      --pv-badge-active: #66bb6a;
      --pv-badge-normals: #64b5f6;
      --pv-badge-vectors: #4db6ac;
      --pv-badge-tcoords: #b39ddb;
    }

    /* OS-level dark mode fallback: applies when no explicit data-theme is set */
    @media (prefers-color-scheme: dark) {
      html:not([data-theme="light"]) {
        --pv-font-color0: rgba(255, 255, 255, 1);
        --pv-font-color2: rgba(255, 255, 255, 0.54);
        --pv-font-color3: rgba(255, 255, 255, 0.38);
        --pv-border-color: #424242;
        --pv-disabled-color: #616161;
        --pv-background-color-row-even: #1a1a1a;
        --pv-background-color-row-odd: #252525;
        --pv-badge-active: #66bb6a;
        --pv-badge-normals: #64b5f6;
        --pv-badge-vectors: #4db6ac;
        --pv-badge-tcoords: #b39ddb;
      }
    }

    .pv-wrap {
      display: block !important;
      min-width: 300px;
      max-width: 700px;
      line-height: 1.6;
      padding-bottom: 4px;
      font-family: var(--jp-ui-font-family, sans-serif);
      font-size: var(--jp-ui-font-size1, 13px);
      color: var(--pv-font-color0);
    }

    .pv-text-repr-fallback {
      display: none;
    }

    /* Header */
    .pv-header {
      display: flex;
      align-items: center;
      gap: 8px;
      padding-top: 6px;
      padding-bottom: 6px;
      border-bottom: solid 1px var(--pv-border-color);
      margin-bottom: 4px;
    }

    .pv-header-text {
      display: flex;
      flex-direction: column;
      gap: 1px;
      min-width: 0;
      flex: 1;
    }

    .pv-obj-type {
      font-weight: 600;
      color: var(--pv-font-color0);
    }

    .pv-header-badge {
      display: inline-block;
      font-size: 0.75em;
      font-weight: 600;
      padding: 2px 7px;
      border-radius: 3px;
      color: var(--pv-font-color2);
      border: 1px solid var(--pv-border-color);
      white-space: nowrap;
    }

    /* Metadata (always-visible key-value rows) */
    .pv-metadata {
      margin: 4px 0 6px 0;
      font-size: 0.92em;
      line-height: 1.5;
    }

    .pv-meta-row {
      display: flex;
      flex-wrap: wrap;
      gap: 1px 14px;
      padding: 1px 0;
    }

    .pv-meta-row-label {
      color: var(--pv-font-color2);
      font-weight: 500;
      white-space: nowrap;
      min-width: 60px;
    }

    .pv-meta-entry {
      white-space: nowrap;
    }

    /* Copy-to-clipboard button */
    .pv-copy-btn {
      display: inline-block;
      cursor: pointer;
      opacity: 0.5;
      font-size: 0.85em;
      padding: 0 3px;
      vertical-align: middle;
      transition: opacity 0.15s;
      user-select: none;
      border: none;
      background: none;
      color: var(--pv-font-color3);
    }

    .pv-copy-btn:hover {
      opacity: 1;
      color: var(--pv-font-color0);
    }

    .pv-meta-label {
      color: var(--pv-font-color3);
      font-weight: 400;
      padding-right: 2px;
    }

    /* Sections grid */
    .pv-sections {
      padding-left: 0 !important;
      display: grid;
      grid-template-columns: 150px auto auto auto 1fr 20px 20px;
      margin-block-start: 0;
      margin-block-end: 0;
      list-style: none;
    }

    .pv-section-item {
      display: contents;
    }

    /* Hidden checkbox for expand/collapse */
    .pv-section-item > input {
      display: block;
      opacity: 0;
      height: 0;
      margin: 0;
    }

    .pv-section-item > input + label {
      color: var(--pv-disabled-color);
    }

    .pv-section-item > input:enabled + label {
      cursor: pointer;
      color: var(--pv-font-color2);
    }

    .pv-section-item > input:enabled + label:hover {
      color: var(--pv-font-color0);
    }

    /* Section summary (left column label) */
    .pv-section-summary {
      grid-column: 1;
      color: var(--pv-font-color2);
      font-weight: 500;
      white-space: nowrap;
    }

    .pv-section-summary > span {
      display: inline-block;
      padding-left: 0.3em;
    }

    .pv-section-summary-in:disabled + label {
      color: var(--pv-font-color2);
    }

    /* Expand/collapse arrows */
    .pv-section-summary-in + label:before {
      display: inline-block;
      content: "\25b6";
      font-size: 11px;
      width: 15px;
      text-align: center;
    }

    .pv-section-summary-in:disabled + label:before {
      color: var(--pv-disabled-color);
    }

    .pv-section-summary-in:checked + label:before {
      content: "\25bc";
    }

    .pv-section-summary-in:checked + label > span {
      display: none;
    }

    .pv-section-summary,
    .pv-section-inline-details {
      padding-top: 4px;
    }

    .pv-section-inline-details {
      grid-column: 2 / -1;
    }

    .pv-section-details {
      grid-column: 1 / -1;
      margin-top: 4px;
      margin-bottom: 5px;
    }

    .pv-section-summary-in ~ .pv-section-details {
      display: none;
    }

    .pv-section-summary-in:checked ~ .pv-section-inline-details {
      display: none;
    }

    .pv-section-summary-in:checked ~ .pv-section-details {
      display: block;
    }

    .pv-section-summary-in:checked ~ .pv-section-details:has(.pv-var-list) {
      display: contents;
    }

    /* Variable (array) list */
    .pv-var-list,
    .pv-var-item {
      display: contents;
    }

    .pv-var-item > div,
    .pv-var-item label,
    .pv-var-item > .pv-var-name span {
      background-color: var(--pv-background-color-row-even);
      border-color: var(--pv-background-color-row-odd);
      margin-bottom: 0;
      padding-top: 2px;
    }

    .pv-var-list > li:nth-child(odd) > div,
    .pv-var-list > li:nth-child(odd) > label,
    .pv-var-list > li:nth-child(odd) > .pv-var-name span {
      background-color: var(--pv-background-color-row-odd);
      border-color: var(--pv-background-color-row-even);
    }

    .pv-var-name {
      grid-column: 1;
    }

    .pv-var-dims {
      grid-column: 2;
    }

    .pv-var-dtype {
      grid-column: 3;
      text-align: right;
      color: var(--pv-font-color2);
    }

    .pv-var-range {
      grid-column: 4;
      color: var(--pv-font-color3);
      font-size: 0.92em;
    }

    .pv-var-badges {
      grid-column: 5;
      padding-left: 8px;
    }

    .pv-var-name,
    .pv-var-dims,
    .pv-var-dtype,
    .pv-var-range {
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      padding-right: 10px;
    }

    .pv-var-name:hover,
    .pv-var-dims:hover,
    .pv-var-dtype:hover,
    .pv-var-range:hover {
      overflow: visible;
      width: auto;
      z-index: 1;
    }

    .pv-var-name span {
      padding-left: 25px !important;
    }

    .pv-var-name-active span {
      font-weight: 600;
    }

    /* Badges */
    .pv-badge {
      display: inline-block;
      font-size: 0.75em;
      font-weight: 600;
      padding: 1px 5px;
      border-radius: 3px;
      vertical-align: middle;
      line-height: 1.4;
    }

    .pv-badge-active {
      color: var(--pv-badge-active);
      border: 1px solid var(--pv-badge-active);
    }

    .pv-badge-normals {
      color: var(--pv-badge-normals);
      border: 1px solid var(--pv-badge-normals);
    }

    .pv-badge-vectors {
      color: var(--pv-badge-vectors);
      border: 1px solid var(--pv-badge-vectors);
    }

    .pv-badge-tcoords {
      color: var(--pv-badge-tcoords);
      border: 1px solid var(--pv-badge-tcoords);
    }

    /* Logo and Icons */
    .pv-logo {
      display: flex;
      align-items: center;
      flex-shrink: 0;
    }

    .pv-logo svg {
      width: 28px;
      height: 28px;
    }

    .pv-brand-logo {
      display: flex;
      align-items: center;
      flex-shrink: 0;
    }

    .pv-brand-logo svg {
      height: 20px;
      width: auto;
    }

    /* Children list (MultiBlock / PartitionedDataSet) */
    .pv-children-list {
      padding-left: 25px !important;
      list-style: none;
    }

    .pv-children-list li {
      padding: 1px 0;
    }

    .pv-child-name {
      font-weight: 500;
    }

    .pv-child-type {
      color: var(--pv-font-color2);
      font-style: italic;
    }

    .pv-child-type:before {
      content: "\00b7";
      padding: 0 6px;
      font-style: normal;
    }

    .pv-child-detail {
      color: var(--pv-font-color3);
      font-size: 0.9em;
    }

    .pv-child-detail:not(:empty):before {
      content: "\00b7";
      padding: 0 6px;
    }
    </style><pre class='pv-text-repr-fallback'>PolyData (0x7ff589a98be0)
      N Cells:    351536
      N Points:   178091
      N Strips:   0
      X Bounds:   2.742e+00, 7.847e+01
      Y Bounds:   0.000e+00, 7.969e+01
      Z Bounds:   0.000e+00, 9.961e+01
      N Arrays:   1</pre><div class='pv-wrap' style='display:none'><div class='pv-header'><span class='pv-logo'><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
      <defs>
        <linearGradient id="pv-pd-g1" x1="0" y1="0" x2="1" y2="1">
          <stop offset="0%" stop-color="#ffd040"/>
          <stop offset="100%" stop-color="#376fa0"/>
        </linearGradient>
      </defs>
      <polygon points="6,6 22,4 14,16" fill="#376fa0" opacity="0.9"/>
      <polygon points="22,4 28,16 14,16" fill="url(#pv-pd-g1)" opacity="0.85"/>
      <polygon points="6,6 14,16 4,26" fill="#1a4a70" opacity="0.85"/>
      <polygon points="14,16 28,16 20,28" fill="#376fa0" opacity="0.8"/>
      <polygon points="4,26 14,16 20,28" fill="#ffd040" opacity="0.8"/>
      <g stroke="rgba(255,255,255,0.65)" stroke-width="0.6" fill="none">
        <line x1="6" y1="6" x2="22" y2="4"/>
        <line x1="22" y1="4" x2="28" y2="16"/>
        <line x1="28" y1="16" x2="20" y2="28"/>
        <line x1="20" y1="28" x2="4" y2="26"/>
        <line x1="4" y1="26" x2="6" y2="6"/>
        <line x1="6" y1="6" x2="14" y2="16"/>
        <line x1="22" y1="4" x2="14" y2="16"/>
        <line x1="28" y1="16" x2="14" y2="16"/>
        <line x1="14" y1="16" x2="4" y2="26"/>
        <line x1="14" y1="16" x2="20" y2="28"/>
      </g>
      <g fill="rgba(255,255,255,0.85)">
        <circle cx="6" cy="6" r="1.3"/>
        <circle cx="22" cy="4" r="1.3"/>
        <circle cx="28" cy="16" r="1.3"/>
        <circle cx="14" cy="16" r="1.3"/>
        <circle cx="20" cy="28" r="1.3"/>
        <circle cx="4" cy="26" r="1.3"/>
      </g>
    </svg>
    </span><div class='pv-header-text'><div class='pv-obj-type'>PolyData <span class='pv-header-badge'>178,091 points</span> <span class='pv-header-badge'>351,536 cells</span> <span class='pv-header-badge'>14.8 MiB</span></div></div><span class='pv-brand-logo'><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 90 24">
      <text x="0" y="18" font-family="system-ui,-apple-system,sans-serif" font-size="18" font-weight="700" font-style="italic" letter-spacing="-0.5">
        <tspan fill="#3776AB" opacity="0.7">P</tspan><tspan fill="#FFD43B" opacity="0.7">y</tspan><tspan fill="#008c9e">Vista</tspan>
      </text>
    </svg>
    </span></div><div class='pv-metadata'><div class='pv-meta-row pv-copyable'><span class='pv-meta-row-label'>Bounds</span><button class='pv-copy-btn' title='Copy to clipboard' data-copy='(2.7415754795074463, 78.46798706054688, 0.0, 79.6875, 0.0, 99.609375)' onclick="navigator.clipboard.writeText(this.dataset.copy)">⧉</button><span class='pv-meta-entry'><span class='pv-meta-label'>X</span> [2.742e+00, 7.847e+01]</span><span class='pv-meta-entry'><span class='pv-meta-label'>Y</span> [0.000e+00, 7.969e+01]</span><span class='pv-meta-entry'><span class='pv-meta-label'>Z</span> [0.000e+00, 9.961e+01]</span></div><div class='pv-meta-row pv-copyable'><span class='pv-meta-row-label'>Cells</span><span class='pv-meta-entry'><span class='pv-meta-label'>faces</span> 351,536</span></div></div><ul class='pv-sections'><li class='pv-section-item'><input id='section-6f827131-f891-4a77-bda2-d41e9b606a0b' class='pv-section-summary-in' type='checkbox' checked /><label for='section-6f827131-f891-4a77-bda2-d41e9b606a0b' class='pv-section-summary' title='Expand/collapse section'>Point Data: <span>(1)</span></label><div class='pv-section-inline-details'></div><div class='pv-section-details'><ul class='pv-var-list'><li class='pv-var-item'><div class='pv-var-name'><span>Unnamed_0</span><button class='pv-copy-btn' title='Copy to clipboard' data-copy='Unnamed_0' onclick="navigator.clipboard.writeText(this.dataset.copy)">⧉</button></div><div class='pv-var-dims'>3 comp</div><div class='pv-var-dtype'>float32</div><div class='pv-var-range'>[-1.000e+00, 1.000e+00]</div><div class='pv-var-badges'> <span class='pv-badge pv-badge-normals'>normals</span></div></li></ul></div></li></ul></div></div>
    </div>
    <br />
    <br />

.. GENERATED FROM PYTHON SOURCE LINES 38-41

Surface DataSet - Plot
~~~~~~~~~~~~~~~~~~~~~~
Plot the pine roots using PyVista's default plotting settings.

.. GENERATED FROM PYTHON SOURCE LINES 41-44

.. code-block:: Python

    dataset.plot()









.. tab-set::



   .. tab-item:: Static Scene



            
     .. image-sg:: /tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_001.png
        :alt: a load examples solution
        :srcset: /tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_001.png
        :class: sphx-glr-single-img
     


   .. tab-item:: Interactive Scene



       .. offlineviewer:: /home/runner/work/pyvista-tutorial/pyvista-tutorial/doc/source/tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_001.vtksz






.. GENERATED FROM PYTHON SOURCE LINES 45-49

Volume DataSet - Download
~~~~~~~~~~~~~~~~~~~~~~~~~
Download the bolt dataset. This is an excellent dataset to visualize using
"volumetric" plotting.

.. GENERATED FROM PYTHON SOURCE LINES 49-54

.. code-block:: Python


    dataset = examples.download_bolt_nut()
    dataset







.. raw:: html

    <div class="output_subarea output_html rendered_html output_result">
    <div><style>/* PyVista HTML repr stylesheet.
     * Uses pv- prefix to avoid conflicts with other libraries.
     */

    :root {
      --pv-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));
      --pv-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));
      --pv-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));
      --pv-border-color: var(--jp-border-color2, #e0e0e0);
      --pv-disabled-color: var(--jp-layout-color3, #bdbdbd);
      --pv-background-color-row-even: var(--jp-layout-color1, #f5f5f5);
      --pv-background-color-row-odd: var(--jp-layout-color2, #eeeeee);
      --pv-badge-active: #1b5e20;
      --pv-badge-normals: #0d47a1;
      --pv-badge-vectors: #00695c;
      --pv-badge-tcoords: #4527a0;
    }

    body[data-jp-theme-light="false"] {
      --pv-font-color0: var(--jp-content-font-color0, rgba(255, 255, 255, 1));
      --pv-font-color2: var(--jp-content-font-color2, rgba(255, 255, 255, 0.54));
      --pv-font-color3: var(--jp-content-font-color3, rgba(255, 255, 255, 0.38));
      --pv-border-color: var(--jp-border-color2, #424242);
      --pv-disabled-color: var(--jp-layout-color3, #616161);
      --pv-background-color-row-even: var(--jp-layout-color1, #1a1a1a);
      --pv-background-color-row-odd: var(--jp-layout-color2, #252525);
      --pv-badge-active: #66bb6a;
      --pv-badge-normals: #64b5f6;
      --pv-badge-vectors: #4db6ac;
      --pv-badge-tcoords: #b39ddb;
    }

    html[theme="dark"],
    html[data-theme="dark"],
    body[data-theme="dark"],
    body.vscode-dark {
      --pv-font-color0: rgba(255, 255, 255, 1);
      --pv-font-color2: rgba(255, 255, 255, 0.54);
      --pv-font-color3: rgba(255, 255, 255, 0.38);
      --pv-border-color: #424242;
      --pv-disabled-color: #616161;
      --pv-background-color-row-even: #1a1a1a;
      --pv-background-color-row-odd: #252525;
      --pv-badge-active: #66bb6a;
      --pv-badge-normals: #64b5f6;
      --pv-badge-vectors: #4db6ac;
      --pv-badge-tcoords: #b39ddb;
    }

    /* OS-level dark mode fallback: applies when no explicit data-theme is set */
    @media (prefers-color-scheme: dark) {
      html:not([data-theme="light"]) {
        --pv-font-color0: rgba(255, 255, 255, 1);
        --pv-font-color2: rgba(255, 255, 255, 0.54);
        --pv-font-color3: rgba(255, 255, 255, 0.38);
        --pv-border-color: #424242;
        --pv-disabled-color: #616161;
        --pv-background-color-row-even: #1a1a1a;
        --pv-background-color-row-odd: #252525;
        --pv-badge-active: #66bb6a;
        --pv-badge-normals: #64b5f6;
        --pv-badge-vectors: #4db6ac;
        --pv-badge-tcoords: #b39ddb;
      }
    }

    .pv-wrap {
      display: block !important;
      min-width: 300px;
      max-width: 700px;
      line-height: 1.6;
      padding-bottom: 4px;
      font-family: var(--jp-ui-font-family, sans-serif);
      font-size: var(--jp-ui-font-size1, 13px);
      color: var(--pv-font-color0);
    }

    .pv-text-repr-fallback {
      display: none;
    }

    /* Header */
    .pv-header {
      display: flex;
      align-items: center;
      gap: 8px;
      padding-top: 6px;
      padding-bottom: 6px;
      border-bottom: solid 1px var(--pv-border-color);
      margin-bottom: 4px;
    }

    .pv-header-text {
      display: flex;
      flex-direction: column;
      gap: 1px;
      min-width: 0;
      flex: 1;
    }

    .pv-obj-type {
      font-weight: 600;
      color: var(--pv-font-color0);
    }

    .pv-header-badge {
      display: inline-block;
      font-size: 0.75em;
      font-weight: 600;
      padding: 2px 7px;
      border-radius: 3px;
      color: var(--pv-font-color2);
      border: 1px solid var(--pv-border-color);
      white-space: nowrap;
    }

    /* Metadata (always-visible key-value rows) */
    .pv-metadata {
      margin: 4px 0 6px 0;
      font-size: 0.92em;
      line-height: 1.5;
    }

    .pv-meta-row {
      display: flex;
      flex-wrap: wrap;
      gap: 1px 14px;
      padding: 1px 0;
    }

    .pv-meta-row-label {
      color: var(--pv-font-color2);
      font-weight: 500;
      white-space: nowrap;
      min-width: 60px;
    }

    .pv-meta-entry {
      white-space: nowrap;
    }

    /* Copy-to-clipboard button */
    .pv-copy-btn {
      display: inline-block;
      cursor: pointer;
      opacity: 0.5;
      font-size: 0.85em;
      padding: 0 3px;
      vertical-align: middle;
      transition: opacity 0.15s;
      user-select: none;
      border: none;
      background: none;
      color: var(--pv-font-color3);
    }

    .pv-copy-btn:hover {
      opacity: 1;
      color: var(--pv-font-color0);
    }

    .pv-meta-label {
      color: var(--pv-font-color3);
      font-weight: 400;
      padding-right: 2px;
    }

    /* Sections grid */
    .pv-sections {
      padding-left: 0 !important;
      display: grid;
      grid-template-columns: 150px auto auto auto 1fr 20px 20px;
      margin-block-start: 0;
      margin-block-end: 0;
      list-style: none;
    }

    .pv-section-item {
      display: contents;
    }

    /* Hidden checkbox for expand/collapse */
    .pv-section-item > input {
      display: block;
      opacity: 0;
      height: 0;
      margin: 0;
    }

    .pv-section-item > input + label {
      color: var(--pv-disabled-color);
    }

    .pv-section-item > input:enabled + label {
      cursor: pointer;
      color: var(--pv-font-color2);
    }

    .pv-section-item > input:enabled + label:hover {
      color: var(--pv-font-color0);
    }

    /* Section summary (left column label) */
    .pv-section-summary {
      grid-column: 1;
      color: var(--pv-font-color2);
      font-weight: 500;
      white-space: nowrap;
    }

    .pv-section-summary > span {
      display: inline-block;
      padding-left: 0.3em;
    }

    .pv-section-summary-in:disabled + label {
      color: var(--pv-font-color2);
    }

    /* Expand/collapse arrows */
    .pv-section-summary-in + label:before {
      display: inline-block;
      content: "\25b6";
      font-size: 11px;
      width: 15px;
      text-align: center;
    }

    .pv-section-summary-in:disabled + label:before {
      color: var(--pv-disabled-color);
    }

    .pv-section-summary-in:checked + label:before {
      content: "\25bc";
    }

    .pv-section-summary-in:checked + label > span {
      display: none;
    }

    .pv-section-summary,
    .pv-section-inline-details {
      padding-top: 4px;
    }

    .pv-section-inline-details {
      grid-column: 2 / -1;
    }

    .pv-section-details {
      grid-column: 1 / -1;
      margin-top: 4px;
      margin-bottom: 5px;
    }

    .pv-section-summary-in ~ .pv-section-details {
      display: none;
    }

    .pv-section-summary-in:checked ~ .pv-section-inline-details {
      display: none;
    }

    .pv-section-summary-in:checked ~ .pv-section-details {
      display: block;
    }

    .pv-section-summary-in:checked ~ .pv-section-details:has(.pv-var-list) {
      display: contents;
    }

    /* Variable (array) list */
    .pv-var-list,
    .pv-var-item {
      display: contents;
    }

    .pv-var-item > div,
    .pv-var-item label,
    .pv-var-item > .pv-var-name span {
      background-color: var(--pv-background-color-row-even);
      border-color: var(--pv-background-color-row-odd);
      margin-bottom: 0;
      padding-top: 2px;
    }

    .pv-var-list > li:nth-child(odd) > div,
    .pv-var-list > li:nth-child(odd) > label,
    .pv-var-list > li:nth-child(odd) > .pv-var-name span {
      background-color: var(--pv-background-color-row-odd);
      border-color: var(--pv-background-color-row-even);
    }

    .pv-var-name {
      grid-column: 1;
    }

    .pv-var-dims {
      grid-column: 2;
    }

    .pv-var-dtype {
      grid-column: 3;
      text-align: right;
      color: var(--pv-font-color2);
    }

    .pv-var-range {
      grid-column: 4;
      color: var(--pv-font-color3);
      font-size: 0.92em;
    }

    .pv-var-badges {
      grid-column: 5;
      padding-left: 8px;
    }

    .pv-var-name,
    .pv-var-dims,
    .pv-var-dtype,
    .pv-var-range {
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      padding-right: 10px;
    }

    .pv-var-name:hover,
    .pv-var-dims:hover,
    .pv-var-dtype:hover,
    .pv-var-range:hover {
      overflow: visible;
      width: auto;
      z-index: 1;
    }

    .pv-var-name span {
      padding-left: 25px !important;
    }

    .pv-var-name-active span {
      font-weight: 600;
    }

    /* Badges */
    .pv-badge {
      display: inline-block;
      font-size: 0.75em;
      font-weight: 600;
      padding: 1px 5px;
      border-radius: 3px;
      vertical-align: middle;
      line-height: 1.4;
    }

    .pv-badge-active {
      color: var(--pv-badge-active);
      border: 1px solid var(--pv-badge-active);
    }

    .pv-badge-normals {
      color: var(--pv-badge-normals);
      border: 1px solid var(--pv-badge-normals);
    }

    .pv-badge-vectors {
      color: var(--pv-badge-vectors);
      border: 1px solid var(--pv-badge-vectors);
    }

    .pv-badge-tcoords {
      color: var(--pv-badge-tcoords);
      border: 1px solid var(--pv-badge-tcoords);
    }

    /* Logo and Icons */
    .pv-logo {
      display: flex;
      align-items: center;
      flex-shrink: 0;
    }

    .pv-logo svg {
      width: 28px;
      height: 28px;
    }

    .pv-brand-logo {
      display: flex;
      align-items: center;
      flex-shrink: 0;
    }

    .pv-brand-logo svg {
      height: 20px;
      width: auto;
    }

    /* Children list (MultiBlock / PartitionedDataSet) */
    .pv-children-list {
      padding-left: 25px !important;
      list-style: none;
    }

    .pv-children-list li {
      padding: 1px 0;
    }

    .pv-child-name {
      font-weight: 500;
    }

    .pv-child-type {
      color: var(--pv-font-color2);
      font-style: italic;
    }

    .pv-child-type:before {
      content: "\00b7";
      padding: 0 6px;
      font-style: normal;
    }

    .pv-child-detail {
      color: var(--pv-font-color3);
      font-size: 0.9em;
    }

    .pv-child-detail:not(:empty):before {
      content: "\00b7";
      padding: 0 6px;
    }
    </style><pre class='pv-text-repr-fallback'>MultiBlock (0x7ff589a9ba60)
      N Blocks:   2
      X Bounds:   0.000e+00, 6.900e+01
      Y Bounds:   0.000e+00, 1.220e+02
      Z Bounds:   0.000e+00, 6.500e+01</pre><div class='pv-wrap' style='display:none'><div class='pv-header'><span class='pv-logo'><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
      <defs>
        <linearGradient id="pv-mb-top1" x1="0" y1="0" x2="1" y2="1">
          <stop offset="0%" stop-color="#ffd040"/>
          <stop offset="100%" stop-color="#376fa0"/>
        </linearGradient>
        <linearGradient id="pv-mb-top2" x1="0" y1="0" x2="1" y2="1">
          <stop offset="0%" stop-color="#376fa0"/>
          <stop offset="100%" stop-color="#ffd040"/>
        </linearGradient>
      </defs>
      <polygon points="13,2 22,6 13,10 4,6" fill="url(#pv-mb-top1)" opacity="0.9"/>
      <polygon points="4,6 13,10 13,17 4,13" fill="#1a4a70" opacity="0.9"/>
      <polygon points="22,6 13,10 13,17 22,13" fill="#376fa0" opacity="0.85"/>
      <g stroke="rgba(255,255,255,0.4)" stroke-width="0.35" fill="none">
        <polygon points="13,2 22,6 13,10 4,6"/>
        <line x1="13" y1="10" x2="13" y2="17"/>
        <line x1="4" y1="6" x2="4" y2="13"/>
        <line x1="22" y1="6" x2="22" y2="13"/>
        <line x1="4" y1="13" x2="13" y2="17"/>
        <line x1="22" y1="13" x2="13" y2="17"/>
      </g>
      <polygon points="17,7 26,11 17,15 8,11" fill="url(#pv-mb-top2)" opacity="0.9"/>
      <polygon points="8,11 17,15 17,22 8,18" fill="#1a4a70" opacity="0.85"/>
      <polygon points="26,11 17,15 17,22 26,18" fill="#376fa0" opacity="0.85"/>
      <g stroke="rgba(255,255,255,0.4)" stroke-width="0.35" fill="none">
        <polygon points="17,7 26,11 17,15 8,11"/>
        <line x1="17" y1="15" x2="17" y2="22"/>
        <line x1="8" y1="11" x2="8" y2="18"/>
        <line x1="26" y1="11" x2="26" y2="18"/>
        <line x1="8" y1="18" x2="17" y2="22"/>
        <line x1="26" y1="18" x2="17" y2="22"/>
      </g>
      <polygon points="19,13 28,17 19,21 10,17" fill="url(#pv-mb-top1)" opacity="0.95"/>
      <polygon points="10,17 19,21 19,28 10,24" fill="#1a4a70" opacity="0.9"/>
      <polygon points="28,17 19,21 19,28 28,24" fill="#376fa0" opacity="0.9"/>
      <g stroke="rgba(255,255,255,0.45)" stroke-width="0.35" fill="none">
        <polygon points="19,13 28,17 19,21 10,17"/>
        <line x1="19" y1="21" x2="19" y2="28"/>
        <line x1="10" y1="17" x2="10" y2="24"/>
        <line x1="28" y1="17" x2="28" y2="24"/>
        <line x1="10" y1="24" x2="19" y2="28"/>
        <line x1="28" y1="24" x2="19" y2="28"/>
      </g>
    </svg>
    </span><div class='pv-header-text'><div class='pv-obj-type'>MultiBlock <span class='pv-header-badge'>2 blocks</span> <span class='pv-header-badge'>716 KiB</span></div></div><span class='pv-brand-logo'><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 90 24">
      <text x="0" y="18" font-family="system-ui,-apple-system,sans-serif" font-size="18" font-weight="700" font-style="italic" letter-spacing="-0.5">
        <tspan fill="#3776AB" opacity="0.7">P</tspan><tspan fill="#FFD43B" opacity="0.7">y</tspan><tspan fill="#008c9e">Vista</tspan>
      </text>
    </svg>
    </span></div><div class='pv-metadata'><div class='pv-meta-row pv-copyable'><span class='pv-meta-row-label'>Bounds</span><button class='pv-copy-btn' title='Copy to clipboard' data-copy='(0.0, 69.0, 0.0, 122.0, 0.0, 65.0)' onclick="navigator.clipboard.writeText(this.dataset.copy)">⧉</button><span class='pv-meta-entry'><span class='pv-meta-label'>X</span> [0.000e+00, 6.900e+01]</span><span class='pv-meta-entry'><span class='pv-meta-label'>Y</span> [0.000e+00, 1.220e+02]</span><span class='pv-meta-entry'><span class='pv-meta-label'>Z</span> [0.000e+00, 6.500e+01]</span></div></div><ul class='pv-sections'><li class='pv-section-item'><input id='section-3f0feb13-829f-4a80-905e-19d00b761ae3' class='pv-section-summary-in' type='checkbox' checked /><label for='section-3f0feb13-829f-4a80-905e-19d00b761ae3' class='pv-section-summary' title='Expand/collapse section'>Blocks: <span>(2)</span></label><div class='pv-section-inline-details'></div><div class='pv-section-details'><ul class='pv-children-list'><li><span class='pv-child-name'>bolt</span><span class='pv-child-type'>ImageData</span><span class='pv-child-detail'>568,260 pts · 547,170 cells · 555 KiB</span></li><li><span class='pv-child-name'>nut</span><span class='pv-child-type'>ImageData</span><span class='pv-child-detail'>164,492 pts · 155,440 cells · 161 KiB</span></li></ul></div></li></ul></div></div>
    </div>
    <br />
    <br />

.. GENERATED FROM PYTHON SOURCE LINES 55-59

Volume DataSet - Plot
~~~~~~~~~~~~~~~~~~~~~
Here, we plot the dataset using a custom view direction using
:class:`pyvista.Plotter`.

.. GENERATED FROM PYTHON SOURCE LINES 59-71

.. code-block:: Python


    pl = pv.Plotter()
    _ = pl.add_volume(
        dataset,
        cmap="coolwarm",
        opacity="sigmoid_5",
        show_scalar_bar=False,
    )
    pl.camera_position = [(194.6, -141.8, 182.0), (34.5, 61.0, 32.5), (-0.229, 0.45, 0.86)]
    pl.show()









.. tab-set::



   .. tab-item:: Static Scene



            
     .. image-sg:: /tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_002.png
        :alt: a load examples solution
        :srcset: /tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_002.png
        :class: sphx-glr-single-img
     


   .. tab-item:: Interactive Scene



       .. offlineviewer:: /home/runner/work/pyvista-tutorial/pyvista-tutorial/doc/source/tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_002.vtksz






.. GENERATED FROM PYTHON SOURCE LINES 72-79

Exercise #1 - Use PyVista Examples
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Visualize one of PyVista's built in examples.

If your IDE supports it, you should be able to type
``dataset = examples.download_`` and press tab to see all the available
examples you can download.

.. GENERATED FROM PYTHON SOURCE LINES 79-90

.. code-block:: Python


    dataset = examples.download_gears()
    bodies = dataset.split_bodies()
    bodies.plot(
        cmap="jet",
        multi_colors=True,
        smooth_shading=True,
        split_sharp_edges=True,
    )









.. tab-set::



   .. tab-item:: Static Scene



            
     .. image-sg:: /tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_003.png
        :alt: a load examples solution
        :srcset: /tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_003.png
        :class: sphx-glr-single-img
     


   .. tab-item:: Interactive Scene



       .. offlineviewer:: /home/runner/work/pyvista-tutorial/pyvista-tutorial/doc/source/tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_003.vtksz






.. GENERATED FROM PYTHON SOURCE LINES 91-104

Exercise #2 - Download and View a File
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Experiment on your own by downloading a dataset and reading it in with
:class:`pyvista.read`. You can use one of your own files or try downloading
one from the following sources:

- `Sample VTK DataSets <https://github.com/pyvista/vtk-data/tree/master/Data>`_
- `Sample STL files <https://www.amtekcompany.com/teaching-resources/stl-files/>`_
- `Thingiverse <https://www.thingiverse.com/>`_

**Solution**
Download the file ``'P_shelf_pin.stl'`` from
https://www.thingiverse.com/thing:5412753

.. GENERATED FROM PYTHON SOURCE LINES 104-108

.. code-block:: Python


    mesh = pv.read("P_shelf_pin.stl")
    mesh.plot()








.. tab-set::



   .. tab-item:: Static Scene



            
     .. image-sg:: /tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_004.png
        :alt: a load examples solution
        :srcset: /tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_004.png
        :class: sphx-glr-single-img
     


   .. tab-item:: Interactive Scene



       .. offlineviewer:: /home/runner/work/pyvista-tutorial/pyvista-tutorial/doc/source/tutorial/01_basic/solutions/images/sphx_glr_a_load_examples_solution_004.vtksz






.. GENERATED FROM PYTHON SOURCE LINES 109-116

.. raw:: html

    <center>
      <a target="_blank" href="https://colab.research.google.com/github/pyvista/pyvista-tutorial/blob/tutorial/notebooks/01_basic/solutions/a_load_examples_solution.ipynb">
        <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/ width="150px">
      </a>
    </center>


.. rst-class:: sphx-glr-timing

   **Total running time of the script:** (0 minutes 6.118 seconds)


.. _sphx_glr_download_tutorial_01_basic_solutions_a_load_examples_solution.py:

.. only:: html

  .. container:: sphx-glr-footer sphx-glr-footer-example

    .. container:: binder-badge

      .. image:: images/binder_badge_logo.svg
        :target: https://mybinder.org/v2/gh/pyvista/pyvista-tutorial/tutorial?urlpath=lab/tree/notebooks/tutorial/01_basic/solutions/a_load_examples_solution.ipynb
        :alt: Launch binder
        :width: 150 px

    .. container:: sphx-glr-download sphx-glr-download-jupyter

      :download:`Download Jupyter notebook: a_load_examples_solution.ipynb <a_load_examples_solution.ipynb>`

    .. container:: sphx-glr-download sphx-glr-download-python

      :download:`Download Python source code: a_load_examples_solution.py <a_load_examples_solution.py>`

    .. container:: sphx-glr-download sphx-glr-download-zip

      :download:`Download zipped: a_load_examples_solution.zip <a_load_examples_solution.zip>`


.. only:: html

 .. rst-class:: sphx-glr-signature

    `Gallery generated by Sphinx-Gallery <https://sphinx-gallery.github.io>`_
