
    ȯei                        U d Z ddlmZ ddlmZ ddlmZ er:ddlZddlmZ ej                  dk\  rddlm
Z
 nddlm
Z
 dd	lmZ dd
lmZ ddlmZmZ ded<   	 ded<   	 d	 	 	 	 	 ddZd Zy)aY  
Load example datasets *remotely* from `vega-datasets`_.

Provides **70+** datasets, used throughout our `Example Gallery`_.

You can learn more about each dataset at `datapackage.md`_.

Examples
--------
**Primary Interface - Data Object**::

    from altair.datasets import data

    # Load with default engine (pandas)
    cars_df = data.cars()

    # Load with specific engine
    cars_polars = data.cars(engine="polars")
    cars_pyarrow = data.cars(engine="pyarrow")

    # Get URL
    cars_url = data.cars.url

    # Set default engine for all datasets
    data.set_default_engine("polars")
    movies_df = data.movies()  # Uses polars engine

    # List available datasets
    available_datasets = data.list_datasets()

**Expert Interface - Loader**::

    from altair.datasets import Loader

    load = Loader.from_backend("polars")
    load("penguins")
    load.url("penguins")

This method also provides *precise* <kbd>Tab</kbd> completions on the returned object::

    load("cars").<Tab>
    #            bottom_k
    #            drop
    #            drop_in_place
    #            drop_nans
    #            dtypes
    #            ...

**Expert Interface - Direct Functions**::

    from altair.datasets import load, url

    # Load a dataset
    cars_df = load("cars", backend="polars")

    # Get dataset URL
    cars_url = url("cars")

.. note::
   Requires installation of either `polars`_, `pandas`_, or `pyarrow`_.

.. _vega-datasets:
    https://github.com/vega/vega-datasets
.. _Example Gallery:
    https://altair-viz.github.io/gallery/index.html#example-gallery
.. _datapackage.md:
    https://github.com/vega/vega-datasets/blob/main/datapackage.md
.. _polars:
    https://docs.pola.rs/user-guide/installation/
.. _pandas:
    https://pandas.pydata.org/docs/getting_started/install.html
.. _pyarrow:
    https://arrow.apache.org/docs/python/install.html
    )annotations)TYPE_CHECKING)LoaderN)Any)      )LiteralString)
DataObject)_Load)Dataset	Extensionz_Load[Any, Any]loadr
   datac                   ddl m} 	 ddlm} |j	                  | |      }|S # |$ r ddlm} |j	                  |       }Y |S w xY w)a  
    Return the address of a remote dataset.

    This is an expert interface. For most users, the data object interface is recommended::

        from altair.datasets import data

        cars_url = data.cars.url

    Parameters
    ----------
    name
        Name of the dataset/`Path.stem`_.
    suffix
        File extension/`Path.suffix`_.

        .. note::
            Only needed if ``name`` is available in multiple formats.

    Returns
    -------
    ``str``

    .. _Path.stem:
        https://docs.python.org/3/library/pathlib.html#pathlib.PurePath.stem
    .. _Path.suffix:
        https://docs.python.org/3/library/pathlib.html#pathlib.PurePath.suffix
    r   )AltairDatasetsErrorr   )	csv_cache)altair.datasets._exceptionsr   altair.datasets._loaderr   urlaltair.datasets._cacher   )namesuffixr   r   r   r   s         Z/var/www/html/glpi_dashboard/venv/lib/python3.12/site-packages/altair/datasets/__init__.pyr   r   z   sO    B @"0hhtV$ J  "4mmD!J"s   " AAc                v    | dk(  rddl m} |S | dk(  rddlm} |S | dk(  rg dS dt        d	| }t        |      )
Nr   r   )r   r   r   __all__)r   r   r   r   zmodule z has no attribute )altair.datasets._datar   r   r   __name__AttributeError)r   r   r   msgs       r   __getattr__r!      sL    v~.	0		00|#5dX>S!!    )N)r   zDataset | LiteralStringr   zExtension | Nonereturnstr)__doc__
__future__r   typingr   r   r   sysr   version_infor	   typing_extensionsr   r
   r   altair.datasets._typingr   r   __annotations__r   r!    r"   r   <module>r.      s|   IV #   4
7"(30-:  ,  
  $,
!,, 		,^"r"   