polars.LazyFrame.show_graph#
- LazyFrame.show_graph(
 - *,
 - optimized: bool = True,
 - show: bool = True,
 - output_path: str | Path | None = None,
 - raw_output: bool = False,
 - figsize: tuple[float, float] = (16.0, 12.0),
 - type_coercion: bool = True,
 - predicate_pushdown: bool = True,
 - projection_pushdown: bool = True,
 - simplify_expression: bool = True,
 - slice_pushdown: bool = True,
 - comm_subplan_elim: bool = True,
 - comm_subexpr_elim: bool = True,
 - streaming: bool = False,
 Show a plot of the query plan. Note that you should have graphviz installed.
- Parameters:
 - optimized
 Optimize the query plan.
- show
 Show the figure.
- output_path
 Write the figure to disk.
- raw_output
 Return dot syntax. This cannot be combined with
showand/oroutput_path.- figsize
 Passed to matplotlib if
show== True.- type_coercion
 Do type coercion optimization.
- predicate_pushdown
 Do predicate pushdown optimization.
- projection_pushdown
 Do projection pushdown optimization.
- simplify_expression
 Run simplify expressions optimization.
- slice_pushdown
 Slice pushdown optimization.
- comm_subplan_elim
 Will try to cache branching subplans that occur on self-joins or unions.
- comm_subexpr_elim
 Common subexpressions will be cached and reused.
- streaming
 Run parts of the query in a streaming fashion (this is in an alpha state)
Examples
>>> lf = pl.LazyFrame( ... { ... "a": ["a", "b", "a", "b", "b", "c"], ... "b": [1, 2, 3, 4, 5, 6], ... "c": [6, 5, 4, 3, 2, 1], ... } ... ) >>> lf.group_by("a", maintain_order=True).agg(pl.all().sum()).sort( ... "a" ... ).show_graph()