feat(python): add VegaLiteWriter.render_chart() for Altair output#177
Open
feat(python): add VegaLiteWriter.render_chart() for Altair output#177
VegaLiteWriter.render_chart() for Altair output#177Conversation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
VegaLiteWriter.render_chart() for Altair output
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The two-stage API (documented in the README) separates reading from writing, giving users control over each step. However, the writing step currently only produces a raw JSON string — users who want an Altair chart object need to manually dispatch to the right Altair class (
Chart,LayerChart,FacetChart, etc.) based on the spec structure.This PR adds
VegaLiteWriter.render_chart()so the two-stage API can produce Altair charts directly, just likerender_altair()does for the one-step path:Implementation details:
VegaLiteWriterin a Python class that addsrender_chart()render_altair()into a shared_json_to_altair_chart()helper (deduplication, not new logic)Test plan
TestVegaLiteWriterRenderChart(basic, layered, faceted)🤖 Generated with Claude Code