tensorflow / tensorflow/tensorboard

Allow programmatically configuring the graph visualization

Open
#74 1 comment 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

plugin:graph type:feature
Dominant language
TypeScript
Stars
7.2k
Forks
1.7k
Avg merge
4d 22h
Merged PRs (30d)
1

Description

Migrated from https://github.com/tensorflow/tensorflow/issues/5305.

@eamartin says:

I'm repeatedly making small tweaks to graphs and visualizing them in TensorBoard.
Here are two feature requests for TensorBoard that would make this workflow significantly smoother:

(1)
Allow the user to specify that a node should always be drawn in the main graph or as an auxiliary node. Alternatively, add an option to draw all nodes in main graph.

Currently, TensorBoard chooses to put nodes in a subgraph as auxiliary nodes (within the subgraph). Adding a node to the main graph consists of "open subgraph, click auxiliary node to add to main graph", which needs to be repeated for each auxiliary node to move because "add to main graph" collapses all subgraphs. This pain could also be partially alleviated by an option to "Shift + Click" to add/remove multiple nodes from the main graph at once.

(2)
Allow the user to force edges to be drawn when both nodes are in the main graph.

Example case:
Let op X be in the top level graph. Let SG be a subgraph and let SG contain 10 subgraphs F_i for i=1,...,10 that all take X as input.
TensorBoard will draw an edge from X to SG, but each F_i will have it's dependence on X noted as an auxiliary input. There is no way to add X to the main graph because it is already in the main graph (but visualized as an aux input).
It would nice for there to be a way for there to be one edge from X to SG, and then 10 edges connecting the entry point of X into SG with each of the F_i. Ideally this option would also have a programmatic interface or at least a default to set.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with TensorBoard’s graph visualization implementation; the issue names no file, test, or entry point. Trace how main and auxiliary nodes and edges are selected, then define and validate programmatic controls for node placement and edge drawing.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
data-visualization, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.