Created
August 1, 2025 07:29
-
-
Save eosfor/a972318b4967bd4ac0a005a79724a331 to your computer and use it in GitHub Desktop.
bicepSingleFileAstDSM
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
| { | |
| "data": [ | |
| { | |
| "name": "nodes", | |
| "transform": [ | |
| {"type": "formula", "as": "order", "expr": "datum.group"}, | |
| { | |
| "type": "formula", | |
| "as": "score", | |
| "expr": "dest >= 0 && datum === src ? dest : datum.order" | |
| }, | |
| { | |
| "type": "window", | |
| "as": ["order"], | |
| "sort": {"field": "score"}, | |
| "ops": ["row_number"] | |
| } | |
| ], | |
| "values": [ | |
| { | |
| "name": "context (Variable)", | |
| "index": 0, | |
| "group": 1, | |
| "order": 1, | |
| "score": 1 | |
| }, | |
| { | |
| "name": "privateDnsZoneRegistrationConfig (Variable)", | |
| "index": 1, | |
| "group": 1, | |
| "order": 2, | |
| "score": 2 | |
| }, | |
| { | |
| "name": "tags (Variable)", | |
| "index": 2, | |
| "group": 1, | |
| "order": 3, | |
| "score": 3 | |
| }, | |
| { | |
| "name": "resourceGroupNamesArray (Variable)", | |
| "index": 3, | |
| "group": 1, | |
| "order": 4, | |
| "score": 4 | |
| }, | |
| { | |
| "name": "selfhostedConfig (Variable)", | |
| "index": 4, | |
| "group": 1, | |
| "order": 5, | |
| "score": 5 | |
| }, | |
| { | |
| "name": "monitoringConfig (Variable)", | |
| "index": 5, | |
| "group": 1, | |
| "order": 6, | |
| "score": 6 | |
| }, | |
| { | |
| "name": "serviceBusConfig (Variable)", | |
| "index": 6, | |
| "group": 1, | |
| "order": 7, | |
| "score": 7 | |
| }, | |
| { | |
| "name": "sharedStorageConfig (Variable)", | |
| "index": 7, | |
| "group": 1, | |
| "order": 8, | |
| "score": 8 | |
| }, | |
| { | |
| "name": "sharedComputeConfig (Variable)", | |
| "index": 8, | |
| "group": 1, | |
| "order": 9, | |
| "score": 9 | |
| }, | |
| { | |
| "name": "resourceGroupNames (Variable)", | |
| "index": 9, | |
| "group": 1, | |
| "order": 10, | |
| "score": 10 | |
| }, | |
| { | |
| "name": "networkConfig (Variable)", | |
| "index": 10, | |
| "group": 1, | |
| "order": 11, | |
| "score": 11 | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "edges", | |
| "transform": [ | |
| { | |
| "fields": ["source", "target"], | |
| "type": "lookup", | |
| "as": ["sourceNode", "targetNode"], | |
| "key": "index", | |
| "from": "nodes" | |
| }, | |
| { | |
| "type": "formula", | |
| "as": "group", | |
| "expr": "datum.sourceNode.group === datum.targetNode.group ? datum.sourceNode.group : count" | |
| } | |
| ], | |
| "values": [ | |
| { | |
| "source": 3, | |
| "target": 9, | |
| "sourceNode": { | |
| "name": "resourceGroupNamesArray (Variable)", | |
| "index": 3, | |
| "group": 1, | |
| "order": 4, | |
| "score": 4 | |
| }, | |
| "targetNode": { | |
| "name": "resourceGroupNames (Variable)", | |
| "index": 9, | |
| "group": 1, | |
| "order": 10, | |
| "score": 10 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 4, | |
| "target": 0, | |
| "sourceNode": { | |
| "name": "selfhostedConfig (Variable)", | |
| "index": 4, | |
| "group": 1, | |
| "order": 5, | |
| "score": 5 | |
| }, | |
| "targetNode": { | |
| "name": "context (Variable)", | |
| "index": 0, | |
| "group": 1, | |
| "order": 1, | |
| "score": 1 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 5, | |
| "target": 0, | |
| "sourceNode": { | |
| "name": "monitoringConfig (Variable)", | |
| "index": 5, | |
| "group": 1, | |
| "order": 6, | |
| "score": 6 | |
| }, | |
| "targetNode": { | |
| "name": "context (Variable)", | |
| "index": 0, | |
| "group": 1, | |
| "order": 1, | |
| "score": 1 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 5, | |
| "target": 9, | |
| "sourceNode": { | |
| "name": "monitoringConfig (Variable)", | |
| "index": 5, | |
| "group": 1, | |
| "order": 6, | |
| "score": 6 | |
| }, | |
| "targetNode": { | |
| "name": "resourceGroupNames (Variable)", | |
| "index": 9, | |
| "group": 1, | |
| "order": 10, | |
| "score": 10 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 6, | |
| "target": 0, | |
| "sourceNode": { | |
| "name": "serviceBusConfig (Variable)", | |
| "index": 6, | |
| "group": 1, | |
| "order": 7, | |
| "score": 7 | |
| }, | |
| "targetNode": { | |
| "name": "context (Variable)", | |
| "index": 0, | |
| "group": 1, | |
| "order": 1, | |
| "score": 1 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 6, | |
| "target": 9, | |
| "sourceNode": { | |
| "name": "serviceBusConfig (Variable)", | |
| "index": 6, | |
| "group": 1, | |
| "order": 7, | |
| "score": 7 | |
| }, | |
| "targetNode": { | |
| "name": "resourceGroupNames (Variable)", | |
| "index": 9, | |
| "group": 1, | |
| "order": 10, | |
| "score": 10 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 7, | |
| "target": 0, | |
| "sourceNode": { | |
| "name": "sharedStorageConfig (Variable)", | |
| "index": 7, | |
| "group": 1, | |
| "order": 8, | |
| "score": 8 | |
| }, | |
| "targetNode": { | |
| "name": "context (Variable)", | |
| "index": 0, | |
| "group": 1, | |
| "order": 1, | |
| "score": 1 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 7, | |
| "target": 9, | |
| "sourceNode": { | |
| "name": "sharedStorageConfig (Variable)", | |
| "index": 7, | |
| "group": 1, | |
| "order": 8, | |
| "score": 8 | |
| }, | |
| "targetNode": { | |
| "name": "resourceGroupNames (Variable)", | |
| "index": 9, | |
| "group": 1, | |
| "order": 10, | |
| "score": 10 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 7, | |
| "target": 10, | |
| "sourceNode": { | |
| "name": "sharedStorageConfig (Variable)", | |
| "index": 7, | |
| "group": 1, | |
| "order": 8, | |
| "score": 8 | |
| }, | |
| "targetNode": { | |
| "name": "networkConfig (Variable)", | |
| "index": 10, | |
| "group": 1, | |
| "order": 11, | |
| "score": 11 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 8, | |
| "target": 0, | |
| "sourceNode": { | |
| "name": "sharedComputeConfig (Variable)", | |
| "index": 8, | |
| "group": 1, | |
| "order": 9, | |
| "score": 9 | |
| }, | |
| "targetNode": { | |
| "name": "context (Variable)", | |
| "index": 0, | |
| "group": 1, | |
| "order": 1, | |
| "score": 1 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 8, | |
| "target": 9, | |
| "sourceNode": { | |
| "name": "sharedComputeConfig (Variable)", | |
| "index": 8, | |
| "group": 1, | |
| "order": 9, | |
| "score": 9 | |
| }, | |
| "targetNode": { | |
| "name": "resourceGroupNames (Variable)", | |
| "index": 9, | |
| "group": 1, | |
| "order": 10, | |
| "score": 10 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 9, | |
| "target": 0, | |
| "sourceNode": { | |
| "name": "resourceGroupNames (Variable)", | |
| "index": 9, | |
| "group": 1, | |
| "order": 10, | |
| "score": 10 | |
| }, | |
| "targetNode": { | |
| "name": "context (Variable)", | |
| "index": 0, | |
| "group": 1, | |
| "order": 1, | |
| "score": 1 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 10, | |
| "target": 0, | |
| "sourceNode": { | |
| "name": "networkConfig (Variable)", | |
| "index": 10, | |
| "group": 1, | |
| "order": 11, | |
| "score": 11 | |
| }, | |
| "targetNode": { | |
| "name": "context (Variable)", | |
| "index": 0, | |
| "group": 1, | |
| "order": 1, | |
| "score": 1 | |
| }, | |
| "group": 1 | |
| }, | |
| { | |
| "source": 10, | |
| "target": 9, | |
| "sourceNode": { | |
| "name": "networkConfig (Variable)", | |
| "index": 10, | |
| "group": 1, | |
| "order": 11, | |
| "score": 11 | |
| }, | |
| "targetNode": { | |
| "name": "resourceGroupNames (Variable)", | |
| "index": 9, | |
| "group": 1, | |
| "order": 10, | |
| "score": 10 | |
| }, | |
| "group": 1 | |
| } | |
| ] | |
| }, | |
| {"name": "cross", "transform": [{"type": "cross"}], "source": "nodes"} | |
| ], | |
| "marks": [ | |
| { | |
| "from": {"data": "edges"}, | |
| "type": "rect", | |
| "encode": { | |
| "update": { | |
| "fill": {"scale": "color", "field": "group"}, | |
| "height": {"band": 1, "offset": -1, "scale": "position"}, | |
| "width": {"band": 1, "offset": -1, "scale": "position"}, | |
| "x": {"scale": "position", "field": "targetNode.order"}, | |
| "y": {"scale": "position", "field": "sourceNode.order"} | |
| } | |
| } | |
| }, | |
| { | |
| "from": {"data": "nodes"}, | |
| "type": "text", | |
| "encode": { | |
| "update": { | |
| "align": {"value": "left"}, | |
| "angle": {"value": -90}, | |
| "baseline": {"value": "middle"}, | |
| "fill": [ | |
| {"test": "datum === src", "value": "steelblue"}, | |
| {"value": "black"} | |
| ], | |
| "fontSize": {"value": 10}, | |
| "text": {"field": "name"}, | |
| "x": {"band": 0.5, "scale": "position", "field": "order"}, | |
| "y": {"offset": -2} | |
| } | |
| }, | |
| "name": "columns" | |
| }, | |
| { | |
| "from": {"data": "nodes"}, | |
| "type": "text", | |
| "encode": { | |
| "update": { | |
| "align": {"value": "right"}, | |
| "baseline": {"value": "middle"}, | |
| "fill": [ | |
| {"test": "datum === src", "value": "steelblue"}, | |
| {"value": "black"} | |
| ], | |
| "fontSize": {"value": 10}, | |
| "text": {"field": "name"}, | |
| "x": {"offset": -2}, | |
| "y": {"band": 0.5, "scale": "position", "field": "order"} | |
| } | |
| }, | |
| "name": "rows" | |
| } | |
| ], | |
| "scales": [ | |
| { | |
| "domain": {"data": "nodes", "field": "order", "sort": true}, | |
| "name": "position", | |
| "type": "band", | |
| "range": {"step": {"signal": "cellSize"}} | |
| }, | |
| { | |
| "domain": { | |
| "sort": true, | |
| "fields": [{"data": "nodes", "field": "group"}, {"signal": "count"}] | |
| }, | |
| "name": "color", | |
| "type": "ordinal", | |
| "range": "category" | |
| } | |
| ], | |
| "signals": [ | |
| {"name": "cellSize", "value": 10}, | |
| {"name": "count", "update": "length(data('nodes'))"}, | |
| {"name": "width", "update": "span(range('position'))"}, | |
| {"name": "height", "update": "width"}, | |
| { | |
| "name": "src", | |
| "on": [ | |
| {"events": "text:pointerdown", "update": "datum"}, | |
| {"events": "window:pointerup", "update": "{}"} | |
| ], | |
| "value": {} | |
| }, | |
| { | |
| "name": "dest", | |
| "on": [ | |
| { | |
| "events": "[@columns:pointerdown, window:pointerup] > window:pointermove", | |
| "update": "src.name && datum !== src ? (0.5 + count * clamp(x(), 0, width) / width) : dest" | |
| }, | |
| { | |
| "events": "[@rows:pointerdown, window:pointerup] > window:pointermove", | |
| "update": "src.name && datum !== src ? (0.5 + count * clamp(y(), 0, height) / height) : dest" | |
| }, | |
| {"events": "window:pointerup", "update": "-1"} | |
| ], | |
| "value": -1 | |
| } | |
| ], | |
| "$schema": "https://vega.github.io/schema/vega/v6.json", | |
| "description": "A re-orderable adjacency matrix depicting character co-occurrence in the novel Les Misérables.", | |
| "height": 1000, | |
| "padding": 2, | |
| "width": 1000 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment