User Guide
__________

The User Guide is the primary resource documenting key concepts that
will help you use HoloViews in your work. For newcomers, a gentle
introduction to HoloViews can be found in our `Getting Started <../getting_started/index.html>`_
guide and an overview of some interesting HoloViews examples can be
found in our `Gallery <../gallery/index.html>`_. If you are looking for a specific component
(or wish to view the available range of primitives), see our
`Reference Gallery <../reference/index.html>`_.

Core guides
-----------

These user guides provide detailed explanation of some of the core
concepts in HoloViews:

* `Annotating your Data <Annotating_Data.html>`_
   Core concepts when annotating your data with semantic metadata.

* `Composing Elements <Composing_Elements.html>`_
   Composing your data into layouts and overlays with the ``+`` and ``*`` operators.

* `Customizing Plots <Customizing_Plots.html>`_
   Controlling the look and feel of the visual representation.

* `Dimensioned Containers <Dimensioned_Containers.html>`_
   Multi-dimensional containers for animating and faceting your data flexibly.

* `Building Composite Objects <Building_Composite_Objects.html>`_
   How to build and work with nested composite objects.

* `Live Data <Live_Data.html>`_
   Lazily generate data on the fly and generate engaging interactive visualizations.

* `Tabular Datasets <Tabular_Datasets.html>`_
   Explore tabular data with `NumPy <http://www.numpy.org/>`_, `pandas <http://pandas.pydata.org/>`_ and `dask <http://dask.pydata.org/>`_.

* `Gridded Datasets <Gridded_Datasets.html>`_
   Explore gridded data (n-dimensional arrays) with `NumPy <http://www.numpy.org/>`_ and `XArray <http://xarray.pydata.org/>`_.

* `Indexing and Selecting Data <Indexing_and_Selecting_Data.html>`_
   Select and index subsets of your data with HoloViews.

* `Transforming Elements <Transforming_Elements.html>`_
   Apply operations to your data that can be used to build data analysis pipelines

* `Responding to Events <Responding_to_Events.html>`_
   Allow your visualizations to respond to Python events using the 'streams' system.

* `Custom Interactivity <Custom_Interactivity.html>`_
   Use `Bokeh <bokeh.pydata.org>`_ and 'linked streams' to directly interact with your visualizations.

* `Data Processing Pipelines <Data_Pipelines.html>`_
   Chain operations to build sophisticated, interactive and lazy data analysis pipelines.

* `Creating interactive network graphs <Network_Graphs.html>`_
   Using the Graph element to display small and large networks interactively.

* `Working with large data <Large_Data.html>`_
   Leverage Datashader to interactively explore millions or billions of datapoints.

* `Working with Streaming Data <Streaming_Data.html>`_
   Demonstrates how to leverage the streamz library with HoloViews to work with streaming datasets.

* `Creating interactive dashboards <Dashboards.html>`_
   Use external widget libraries to build custom, interactive dashboards.


Supplementary guides
--------------------

These guides provide detail about specific additional features in HoloViews:

* `Installing and Configuring HoloViews <Installing_and_Configuring.html>`_
   Additional information about installation and configuration options.

* `Plotting with Bokeh <Plotting_with_Bokeh.html>`_
   Styling options and unique `Bokeh <bokeh.pydata.org>`_ features such as plot tools and using bokeh models directly.

* `Deploying Bokeh Apps <Deploying_Bokeh_Apps.html>`_
   Using `bokeh server <http://bokeh.pydata.org/en/latest/docs/user_guide/server.html>`_ using scripts and notebooks.

* `Plotting with matplotlib <Plotting_with_Matplotlib.html>`_
   Styling options and unique Matplotlib features such as GIF/MP4 support.

* `Plotting with plotly <Plotting_with_Plotly.html>`_
   Styling options and unique plotly features, focusing on 3D plotting.

* `Working with renderers and plots <Plots_and_Renderers.html>`_
   Using the ``Renderer`` and ``Plot`` classes for access to the plotting machinery.

* `Exporting and Archiving <Exporting_and_Archiving.html>`_
   Archive both your data and visualization in scripts and notebooks.

* `Continuous Coordinates <Continuous_Coordinates.html>`_
   How continuous coordinates are handled, specifically focusing on ``Image`` and ``Raster`` types.


.. toctree::
    :titlesonly:
    :hidden:
    :maxdepth: 2

    Annotating your Data <Annotating_Data>
    Composing Elements <Composing_Elements>
    Customizing Plots <Customizing_Plots>
    Dimensioned Containers <Dimensioned_Containers>
    Building Composite Objects <Building_Composite_Objects>
    Live Data <Live_Data>
    Tabular Datasets <Tabular_Datasets>
    Gridded Datasets <Gridded_Datasets>
    Indexing and Selecting Data <Indexing_and_Selecting_Data>
    Transforming Elements <Transforming_Elements>
    Responding to Events <Responding_to_Events>
    Custom Interactivity <Custom_Interactivity>
    Data Processing Pipelines <Data_Pipelines>
    Creating interactive network graphs <Network_Graphs>
    Working with large data <Large_Data>
    Working with streaming data <Streaming_Data>
    Creating interactive dashboards <Dashboards>
    Plotting with Bokeh <Plotting_with_Bokeh>
    Deploying Bokeh Apps <Deploying_Bokeh_Apps>
    Plotting with matplotlib <Plotting_with_Matplotlib>
    Plotting with plotly <Plotting_with_Plotly>
    Working with Plot and Renderers <Plots_and_Renderers>
    Exporting and Archiving <Exporting_and_Archiving>
    Continuous Coordinates <Continuous_Coordinates>
