-
-
Notifications
You must be signed in to change notification settings - Fork 28
Description
This happened when displaying chart object of Altair VS Code (interactive session, like Jupyter Notebook):
The following column of 'TRIP_TIME' was used in a chart for y value.
Timezone -07:00 caused ValueError
Here are some sample data:
TRIP_TIME Circuit_Breaker LOCATION
0 2024-06-02 00:28:47.658000-07:00 WSFD07 Y10
2 2024-06-02 00:30:58.287000-07:00 WSFD08 Y10
4 2024-06-02 00:35:01.977000-07:00 WSFD09 Y10
6 2024-06-02 00:47:47.731000-07:00 WSFD07 Y10
7 2024-06-02 00:47:47.731000-07:00 WSFD08 Y10
ValueError Traceback (most recent call last)
File ~/miniconda3/envs/text-embedding-py312/lib/python3.12/site-packages/IPython/core/formatters.py:977, in MimeBundleFormatter.call(self, obj, include, exclude)
974 method = get_real_method(obj, self.print_method)
976 if method is not None:
--> 977 return method(include=include, exclude=exclude)
978 return None
979 else:
File ~/miniconda3/envs/text-embedding-py312/lib/python3.12/site-packages/altair/vegalite/v5/api.py:2576, in TopLevelMixin.repr_mimebundle(self, include, exclude)
2574 return {}
2575 else:
-> 2576 return renderers.get()(dct)
File ~/miniconda3/envs/text-embedding-py312/lib/python3.12/site-packages/altair/utils/display.py:227, in HTMLRenderer.call(self, spec, **metadata)
224 kwargs.update(metadata)
225 # To get proper return value type, would need to write complex
226 # overload signatures for spec_to_mimebundle based on format
--> 227 return spec_to_mimebundle( # type: ignore[return-value]
228 spec, format="html", output_div=self.output_div, **kwargs
229 )
File ~/miniconda3/envs/text-embedding-py312/lib/python3.12/site-packages/altair/utils/mimebundle.py:70, in spec_to_mimebundle(spec, format, mode, vega_version, vegaembed_version, vegalite_version, embed_options, engine, **kwargs)
68 internal_mode: Literal["vega-lite", "vega"] = mode
69 if using_vegafusion():
---> 70 spec = compile_with_vegafusion(spec)
71 internal_mode = "vega"
73 # Default to the embed options set by alt.renderers.set_embed_options
File ~/miniconda3/envs/text-embedding-py312/lib/python3.12/site-packages/altair/utils/_vegafusion_data.py:226, in compile_with_vegafusion(vegalite_spec)
224 # Pre-evaluate transforms in vega spec with vegafusion
225 row_limit = data_transformers.options.get("max_rows", None)
--> 226 transformed_vega_spec, warnings = vf.runtime.pre_transform_spec(
227 vega_spec,
228 vf.get_local_tz(),
229 inline_datasets=inline_tables,
230 row_limit=row_limit,
231 )
233 # Check from row limit warning and convert to MaxRowsError
234 handle_row_limit_exceeded(row_limit, warnings)
File ~/miniconda3/envs/text-embedding-py312/lib/python3.12/site-packages/vegafusion/runtime.py:371, in VegaFusionRuntime.pre_transform_spec(self, spec, local_tz, default_input_tz, row_limit, preserve_interactivity, inline_datasets, keep_signals, keep_datasets, data_encoding_threshold, data_encoding_format)
369 try:
370 if data_encoding_threshold is None:
--> 371 new_spec, warnings = self.embedded_runtime.pre_transform_spec(
372 spec,
373 local_tz=local_tz,
374 default_input_tz=default_input_tz,
375 row_limit=row_limit,
376 preserve_interactivity=preserve_interactivity,
377 inline_datasets=imported_inline_dataset,
378 keep_signals=keep_signals,
379 keep_datasets=keep_datasets,
380 )
381 else:
382 # Use pre_transform_extract to extract large datasets
383 new_spec, datasets, warnings = self.embedded_runtime.pre_transform_extract(
384 spec,
385 local_tz=local_tz,
(...)
392 keep_datasets=keep_datasets,
393 )
ValueError: DataFusion error: Internal error: Failed to parse -07:00 as a timezone.
This was likely caused by a bug in DataFusion's code and we would welcome that you file an bug report in our issue tracker
Context[0]: Failed to get node value