Asymmetric coverage
Today's Plottable.encode_* methods cover:
- ✅
encode_point_color, encode_edge_color
- ✅
encode_point_icon, encode_edge_icon
- ✅
encode_point_size
- ✅
encode_point_badge, encode_edge_badge (8 positions each)
- ✅
encode_axis
Missing (only available via bind() with column references — no palette/categorical mapping support):
encode_edge_size / encode_edge_weight
encode_point_opacity, encode_edge_opacity
encode_point_label, encode_edge_label
encode_point_title, encode_edge_title
Why it matters
Downstream consumers want palette + categorical mapping for ALL visual attributes, not just color/icon/size. A dashboard showing "edge weight by category" needs encode_edge_weight(column='kind', categorical_mapping={'critical': 5, 'normal': 1}); today they have to materialize a numeric column themselves and bind(edge_weight='materialized_col').
Note re: server-side rendering
Server-canvas survey of ~/Work/graphistry/apps/core/viz/ reports that pointOpacityEncoding and edgeWeightEncoding are silently accepted by the upload schema but NOT consumed by the renderer (filing as separate issue against apps/core/viz). This issue is about the pygraphistry surface; the renderer side is a precondition for the encodings to be useful end-to-end.
Filed via Louie graphistrygpt PR #2791 audit (findings.md upstream issue #6).
Asymmetric coverage
Today's
Plottable.encode_*methods cover:encode_point_color,encode_edge_colorencode_point_icon,encode_edge_iconencode_point_sizeencode_point_badge,encode_edge_badge(8 positions each)encode_axisMissing (only available via
bind()with column references — no palette/categorical mapping support):encode_edge_size/encode_edge_weightencode_point_opacity,encode_edge_opacityencode_point_label,encode_edge_labelencode_point_title,encode_edge_titleWhy it matters
Downstream consumers want palette + categorical mapping for ALL visual attributes, not just color/icon/size. A dashboard showing "edge weight by category" needs
encode_edge_weight(column='kind', categorical_mapping={'critical': 5, 'normal': 1}); today they have to materialize a numeric column themselves andbind(edge_weight='materialized_col').Note re: server-side rendering
Server-canvas survey of
~/Work/graphistry/apps/core/viz/reports thatpointOpacityEncodingandedgeWeightEncodingare silently accepted by the upload schema but NOT consumed by the renderer (filing as separate issue against apps/core/viz). This issue is about the pygraphistry surface; the renderer side is a precondition for the encodings to be useful end-to-end.Filed via Louie graphistrygpt PR #2791 audit (findings.md upstream issue #6).