An Exception was encountered at 'In [13]'.

Learning from Italy, South Korea & Japan

Italy, South Korea & Japan are three countries which show different growth rates and how it evolved over time.

South Korea flattened it's growth after 2 weeks since 100 cases. Italy continue to grew after 3rd week.

Where does your Country stand today?

Click (Shift+ for multiple) on Countries legend to filter the visualization.

Last Updated on May, 05 2020
---------------------------------------------------------------------------
MaxRowsError                              Traceback (most recent call last)
/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    371 
    372         try:
--> 373             dct = super(TopLevelMixin, copy).to_dict(*args, **kwargs)
    374         except jsonschema.ValidationError:
    375             dct = None

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in to_dict(self, validate, ignore, context)
    326                 {k: v for k, v in self._kwds.items() if k not in ignore},
    327                 validate=sub_validate,
--> 328                 context=context,
    329             )
    330         else:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     60         return {
     61             k: _todict(v, validate, context)
---> 62             for k, v in obj.items()
     63             if v is not Undefined
     64         }

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <dictcomp>(.0)
     61             k: _todict(v, validate, context)
     62             for k, v in obj.items()
---> 63             if v is not Undefined
     64         }
     65     elif hasattr(obj, "to_dict"):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <listcomp>(.0)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     54     """Convert an object to a dict representation."""
     55     if isinstance(obj, SchemaBase):
---> 56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
     58         return [_todict(v, validate, context) for v in obj]

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    361         copy = self.copy(deep=False)
    362         original_data = getattr(copy, "data", Undefined)
--> 363         copy.data = _prepare_data(original_data, context)
    364 
    365         if original_data is not Undefined:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in _prepare_data(data, context)
     82     # convert dataframes  or objects with __geo_interface__ to dict
     83     if isinstance(data, pd.DataFrame) or hasattr(data, "__geo_interface__"):
---> 84         data = _pipe(data, data_transformers.get())
     85 
     86     # convert string input to a URLData

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/data.py in default_data_transformer(data, max_rows)
     17 @curried.curry
     18 def default_data_transformer(data, max_rows=5000):
---> 19     return curried.pipe(data, limit_rows(max_rows=max_rows), to_values)
     20 
     21 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/data.py in limit_rows(data, max_rows)
     82             "than the maximum allowed ({}). "
     83             "For information on how to plot larger datasets "
---> 84             "in Altair, see the documentation".format(max_rows)
     85         )
     86     return data

MaxRowsError: The number of rows in your dataset is greater than the maximum allowed (5000). For information on how to plot larger datasets in Altair, see the documentation
alt.LayerChart(...)
---------------------------------------------------------------------------
MaxRowsError                              Traceback (most recent call last)
/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    371 
    372         try:
--> 373             dct = super(TopLevelMixin, copy).to_dict(*args, **kwargs)
    374         except jsonschema.ValidationError:
    375             dct = None

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in to_dict(self, validate, ignore, context)
    326                 {k: v for k, v in self._kwds.items() if k not in ignore},
    327                 validate=sub_validate,
--> 328                 context=context,
    329             )
    330         else:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     60         return {
     61             k: _todict(v, validate, context)
---> 62             for k, v in obj.items()
     63             if v is not Undefined
     64         }

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <dictcomp>(.0)
     61             k: _todict(v, validate, context)
     62             for k, v in obj.items()
---> 63             if v is not Undefined
     64         }
     65     elif hasattr(obj, "to_dict"):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <listcomp>(.0)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     54     """Convert an object to a dict representation."""
     55     if isinstance(obj, SchemaBase):
---> 56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
     58         return [_todict(v, validate, context) for v in obj]

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    361         copy = self.copy(deep=False)
    362         original_data = getattr(copy, "data", Undefined)
--> 363         copy.data = _prepare_data(original_data, context)
    364 
    365         if original_data is not Undefined:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in _prepare_data(data, context)
     82     # convert dataframes  or objects with __geo_interface__ to dict
     83     if isinstance(data, pd.DataFrame) or hasattr(data, "__geo_interface__"):
---> 84         data = _pipe(data, data_transformers.get())
     85 
     86     # convert string input to a URLData

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/data.py in default_data_transformer(data, max_rows)
     17 @curried.curry
     18 def default_data_transformer(data, max_rows=5000):
---> 19     return curried.pipe(data, limit_rows(max_rows=max_rows), to_values)
     20 
     21 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/data.py in limit_rows(data, max_rows)
     82             "than the maximum allowed ({}). "
     83             "For information on how to plot larger datasets "
---> 84             "in Altair, see the documentation".format(max_rows)
     85         )
     86     return data

MaxRowsError: The number of rows in your dataset is greater than the maximum allowed (5000). For information on how to plot larger datasets in Altair, see the documentation
alt.LayerChart(...)
---------------------------------------------------------------------------
MaxRowsError                              Traceback (most recent call last)
/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    371 
    372         try:
--> 373             dct = super(TopLevelMixin, copy).to_dict(*args, **kwargs)
    374         except jsonschema.ValidationError:
    375             dct = None

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in to_dict(self, validate, ignore, context)
    326                 {k: v for k, v in self._kwds.items() if k not in ignore},
    327                 validate=sub_validate,
--> 328                 context=context,
    329             )
    330         else:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     60         return {
     61             k: _todict(v, validate, context)
---> 62             for k, v in obj.items()
     63             if v is not Undefined
     64         }

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <dictcomp>(.0)
     61             k: _todict(v, validate, context)
     62             for k, v in obj.items()
---> 63             if v is not Undefined
     64         }
     65     elif hasattr(obj, "to_dict"):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <listcomp>(.0)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     54     """Convert an object to a dict representation."""
     55     if isinstance(obj, SchemaBase):
---> 56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
     58         return [_todict(v, validate, context) for v in obj]

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    361         copy = self.copy(deep=False)
    362         original_data = getattr(copy, "data", Undefined)
--> 363         copy.data = _prepare_data(original_data, context)
    364 
    365         if original_data is not Undefined:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in _prepare_data(data, context)
     82     # convert dataframes  or objects with __geo_interface__ to dict
     83     if isinstance(data, pd.DataFrame) or hasattr(data, "__geo_interface__"):
---> 84         data = _pipe(data, data_transformers.get())
     85 
     86     # convert string input to a URLData

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/data.py in default_data_transformer(data, max_rows)
     17 @curried.curry
     18 def default_data_transformer(data, max_rows=5000):
---> 19     return curried.pipe(data, limit_rows(max_rows=max_rows), to_values)
     20 
     21 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/data.py in limit_rows(data, max_rows)
     82             "than the maximum allowed ({}). "
     83             "For information on how to plot larger datasets "
---> 84             "in Altair, see the documentation".format(max_rows)
     85         )
     86     return data

MaxRowsError: The number of rows in your dataset is greater than the maximum allowed (5000). For information on how to plot larger datasets in Altair, see the documentation
alt.LayerChart(...)
---------------------------------------------------------------------------
MaxRowsError                              Traceback (most recent call last)
/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    371 
    372         try:
--> 373             dct = super(TopLevelMixin, copy).to_dict(*args, **kwargs)
    374         except jsonschema.ValidationError:
    375             dct = None

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in to_dict(self, validate, ignore, context)
    326                 {k: v for k, v in self._kwds.items() if k not in ignore},
    327                 validate=sub_validate,
--> 328                 context=context,
    329             )
    330         else:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     60         return {
     61             k: _todict(v, validate, context)
---> 62             for k, v in obj.items()
     63             if v is not Undefined
     64         }

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <dictcomp>(.0)
     61             k: _todict(v, validate, context)
     62             for k, v in obj.items()
---> 63             if v is not Undefined
     64         }
     65     elif hasattr(obj, "to_dict"):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <listcomp>(.0)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     54     """Convert an object to a dict representation."""
     55     if isinstance(obj, SchemaBase):
---> 56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
     58         return [_todict(v, validate, context) for v in obj]

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    361         copy = self.copy(deep=False)
    362         original_data = getattr(copy, "data", Undefined)
--> 363         copy.data = _prepare_data(original_data, context)
    364 
    365         if original_data is not Undefined:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in _prepare_data(data, context)
     82     # convert dataframes  or objects with __geo_interface__ to dict
     83     if isinstance(data, pd.DataFrame) or hasattr(data, "__geo_interface__"):
---> 84         data = _pipe(data, data_transformers.get())
     85 
     86     # convert string input to a URLData

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/data.py in default_data_transformer(data, max_rows)
     17 @curried.curry
     18 def default_data_transformer(data, max_rows=5000):
---> 19     return curried.pipe(data, limit_rows(max_rows=max_rows), to_values)
     20 
     21 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/data.py in limit_rows(data, max_rows)
     82             "than the maximum allowed ({}). "
     83             "For information on how to plot larger datasets "
---> 84             "in Altair, see the documentation".format(max_rows)
     85         )
     86     return data

MaxRowsError: The number of rows in your dataset is greater than the maximum allowed (5000). For information on how to plot larger datasets in Altair, see the documentation
alt.LayerChart(...)

Select a country from the drop down list below to toggle the visualization.

Execution using papermill encountered an exception here and stopped:

---------------------------------------------------------------------------
MaxRowsError                              Traceback (most recent call last)
/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    371 
    372         try:
--> 373             dct = super(TopLevelMixin, copy).to_dict(*args, **kwargs)
    374         except jsonschema.ValidationError:
    375             dct = None

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in to_dict(self, validate, ignore, context)
    326                 {k: v for k, v in self._kwds.items() if k not in ignore},
    327                 validate=sub_validate,
--> 328                 context=context,
    329             )
    330         else:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     60         return {
     61             k: _todict(v, validate, context)
---> 62             for k, v in obj.items()
     63             if v is not Undefined
     64         }

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <dictcomp>(.0)
     61             k: _todict(v, validate, context)
     62             for k, v in obj.items()
---> 63             if v is not Undefined
     64         }
     65     elif hasattr(obj, "to_dict"):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in <listcomp>(.0)
     56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
---> 58         return [_todict(v, validate, context) for v in obj]
     59     elif isinstance(obj, dict):
     60         return {

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/schemapi.py in _todict(obj, validate, context)
     54     """Convert an object to a dict representation."""
     55     if isinstance(obj, SchemaBase):
---> 56         return obj.to_dict(validate=validate, context=context)
     57     elif isinstance(obj, (list, tuple, np.ndarray)):
     58         return [_todict(v, validate, context) for v in obj]

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in to_dict(self, *args, **kwargs)
    361         copy = self.copy(deep=False)
    362         original_data = getattr(copy, "data", Undefined)
--> 363         copy.data = _prepare_data(original_data, context)
    364 
    365         if original_data is not Undefined:

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/v4/api.py in _prepare_data(data, context)
     82     # convert dataframes  or objects with __geo_interface__ to dict
     83     if isinstance(data, pd.DataFrame) or hasattr(data, "__geo_interface__"):
---> 84         data = _pipe(data, data_transformers.get())
     85 
     86     # convert string input to a URLData

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/vegalite/data.py in default_data_transformer(data, max_rows)
     17 @curried.curry
     18 def default_data_transformer(data, max_rows=5000):
---> 19     return curried.pipe(data, limit_rows(max_rows=max_rows), to_values)
     20 
     21 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in pipe(data, *funcs)
    632     """
    633     for func in funcs:
--> 634         data = func(data)
    635     return data
    636 

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/toolz/functoolz.py in __call__(self, *args, **kwargs)
    301     def __call__(self, *args, **kwargs):
    302         try:
--> 303             return self._partial(*args, **kwargs)
    304         except TypeError as exc:
    305             if self._should_curry(args, kwargs, exc):

/opt/hostedtoolcache/Python/3.6.10/x64/lib/python3.6/site-packages/altair/utils/data.py in limit_rows(data, max_rows)
     82             "than the maximum allowed ({}). "
     83             "For information on how to plot larger datasets "
---> 84             "in Altair, see the documentation".format(max_rows)
     85         )
     86     return data

MaxRowsError: The number of rows in your dataset is greater than the maximum allowed (5000). For information on how to plot larger datasets in Altair, see the documentation
alt.LayerChart(...)