import dask.array as da
import numpy as np

Dask array as graph

a = da.arange(15, chunks=(5,))
a
                <tr>
                    <th> Bytes </th>
                    <td> 120 B </td>
                    <td> 40 B </td>
                </tr>

                <tr>
                    <th> Shape </th>
                    <td> (15,) </td>
                    <td> (5,) </td>
                </tr>
                <tr>
                    <th> Dask graph </th>
                    <td colspan="2"> 3 chunks in 1 graph layer </td>
                </tr>
                <tr>
                    <th> Data type </th>
                    <td colspan="2"> int64 numpy.ndarray </td>
                </tr>
            </tbody>
        </table>
    </td>
    <td>
    <svg width="170" height="86" style="stroke:rgb(0,0,0);stroke-width:1" >

15 1

Array Chunk
a.__dask_graph__()

HighLevelGraph

HighLevelGraph with 1 layers and 3 keys from all layers.

        <div style="">
<svg width="24" height="24" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg" style="position: absolute;">

    <circle cx="16" cy="16" r="14" fill="#8F8F8F" style="stroke: var(--jp-ui-font-color2, #1D1D1D);" stroke-width="2"/>

</svg>

<details style="margin-left: 32px;">
    <summary style="margin-bottom: 10px; margin-top: 10px;">
        <h4 style="display: inline;">Layer1: arange</h4>
    </summary>
    <p style="color: var(--jp-ui-font-color2, #5D5851); margin: -0.25em 0px 0px 0px;">
        arange-571d5d5e2ac3b386ea241c8f4963b0ff
    </p>

    <table>
    <tr>
        <td>
            <table>

                <tr>
                    <th style="text-align: left; width: 150px;">layer_type</th>
                    <td style="text-align: left;">MaterializedLayer</td>
                </tr>

                <tr>
                    <th style="text-align: left; width: 150px;">is_materialized</th>
                    <td style="text-align: left;">True</td>
                </tr>

                <tr>
                    <th style="text-align: left; width: 150px;">number of outputs</th>
                    <td style="text-align: left;">3</td>
                </tr>

                <tr>
                    <th style="text-align: left; width: 150px;">shape</th>
                    <td style="text-align: left;">(15,)</td>
                </tr>

                <tr>
                    <th style="text-align: left; width: 150px;">dtype</th>
                    <td style="text-align: left;">int64</td>
                </tr>

                <tr>
                    <th style="text-align: left; width: 150px;">chunksize</th>
                    <td style="text-align: left;">(5,)</td>
                </tr>

                <tr>
                    <th style="text-align: left; width: 150px;">type</th>
                    <td style="text-align: left;">dask.array.core.Array</td>
                </tr>

                <tr>
                    <th style="text-align: left; width: 150px;">chunk_type</th>
                    <td style="text-align: left;">numpy.ndarray</td>
                </tr>


            </table>
        </td>
        <td>
            <svg width="250" height="110" style="stroke:rgb(0,0,0);stroke-width:1" >

15 1

</details>
    </div>
</div>
dict(a.__dask_graph__())
{('arange-571d5d5e2ac3b386ea241c8f4963b0ff',
  0): (functools.partial(<function arange at 0x107167eb0>, like=None), 0, 5, 1, 5, dtype('int64')),
 ('arange-571d5d5e2ac3b386ea241c8f4963b0ff',
  1): (functools.partial(<function arange at 0x107167eb0>, like=None), 5, 10, 1, 5, dtype('int64')),
 ('arange-571d5d5e2ac3b386ea241c8f4963b0ff',
  2): (functools.partial(<function arange at 0x107167eb0>, like=None), 10, 15, 1, 5, dtype('int64'))}
a.__dask_keys__()
[('arange-571d5d5e2ac3b386ea241c8f4963b0ff', 0),
 ('arange-571d5d5e2ac3b386ea241c8f4963b0ff', 1),
 ('arange-571d5d5e2ac3b386ea241c8f4963b0ff', 2)]