JAMESPARK3's picture
Upload folder using huggingface_hub
1380717 verified
raw
history blame
1.75 kB
from __future__ import annotations
from typing import TYPE_CHECKING, Callable, overload
from altair.utils.core import sanitize_pandas_dataframe
from altair.utils.data import DataTransformerRegistry as _DataTransformerRegistry
from altair.utils.data import (
MaxRowsError,
check_data_type,
limit_rows,
sample,
to_csv,
to_json,
to_values,
)
if TYPE_CHECKING:
from altair.utils.data import DataType, ToValuesReturnType
from altair.utils.plugin_registry import PluginEnabler
@overload
def default_data_transformer(
data: None = ..., max_rows: int = ...
) -> Callable[[DataType], ToValuesReturnType]: ...
@overload
def default_data_transformer(
data: DataType, max_rows: int = ...
) -> ToValuesReturnType: ...
def default_data_transformer(
data: DataType | None = None, max_rows: int = 5000
) -> Callable[[DataType], ToValuesReturnType] | ToValuesReturnType:
if data is None:
def pipe(data: DataType, /) -> ToValuesReturnType:
data = limit_rows(data, max_rows=max_rows)
return to_values(data)
return pipe
else:
return to_values(limit_rows(data, max_rows=max_rows))
class DataTransformerRegistry(_DataTransformerRegistry):
def disable_max_rows(self) -> PluginEnabler:
"""Disable the MaxRowsError."""
options = self.options
if self.active in {"default", "vegafusion"}:
options = options.copy()
options["max_rows"] = None
return self.enable(**options)
__all__ = (
"DataTransformerRegistry",
"MaxRowsError",
"check_data_type",
"default_data_transformer",
"limit_rows",
"sample",
"sanitize_pandas_dataframe",
"to_csv",
"to_json",
"to_values",
)