oneshotlm
Compare all models on this prompt →

Force-directed graph · qwen3.6-27b

Using the pre-provided d3.min.js (global d3), render an interactive force-directed graph of about 40 nodes in several clusters with draggable nodes, hover highlighting of neighbors, and zoom/pan. Define the sample nodes and links inline.

⛨ sandboxed Open in new tab ↗
transcript · 10 messages
user

Using the pre-provided d3.min.js (global d3), render an interactive force-directed graph of about 40 nodes in several clusters with draggable nodes, hover highlighting of neighbors, and zoom/pan. Define the sample nodes and links inline.

assistant
thinking
The user wants me to create a single-page web app in index.html that:
1. Uses d3.min.js (already present in the current directory) loaded via <script src="d3.min.js">
2. Renders an interactive force-directed graph with ~40 nodes in several clusters
3. Features: draggable nodes, hover highlighting of neighbors, zoom/pan
4. Sample nodes and links defined inline
5. All CSS in <style>, all JS in <script>, no external resources
6. No CDNs or network requests

Let me first verify d3.min.js exists in the current directory.
bash {"command":"ls -la /workspace/d3.min.js"}
toolResult

-rw-r--r-- 1 node node 279706 Jul 31 02:59 /workspace/d3.min.js

assistant
thinking
Good, d3.min.js is present. Now let me create the index.html file with a force-directed graph. I'll design ~40 nodes in several clusters (e.g., 5 clusters of ~8 nodes each) with intra-cluster and inter-cluster links.

Let me design the data:
- Cluster 1: Frontend (8 nodes)
- Cluster 2: Backend (8 nodes)
- Cluster 3: Data (8 nodes)
- Cluster 4: DevOps (8 nodes)
- Cluster 5: Security (8 nodes)

Each cluster has internal links and some cross-cluster links.

I'll use d3-force simulation with:
- forceManyBody for repulsion
- forceLink for attraction
- forceX/forceY to center
- color coding by cluster
- drag behavior
- zoom/pan
- hover to highlight neighbors
write /workspace/index.html (11346 bytes)
toolResult

Successfully wrote 11346 bytes to /workspace/index.html

assistant
thinking
The file has been written. Let me verify it's present.

bash {"command":"ls -la /workspace/index.html"}
toolResult

-rw-r--r-- 1 node node 12470 Jul 31 03:00 /workspace/index.html

assistant
thinking
The file is present. Let me verify the structure is correct by checking key parts of the file.

bash {"command":"head -5 /workspace/index.html && echo \"---\" && grep -c \"cluster\" /workspace/index.html && echo \"cluster refs\" && grep '\"i
toolResult

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> --- 19 cluster refs .attr("id", "glow")

assistant
thinking
Good. The file is created and looks correct. Let me summarize what was built.

`/workspace/index.html` is ready. Here's what's inside: ### Data - **40 nodes** across **5 clusters** (Frontend, Backend, Data, DevOps, Security) — 8 nodes each - **~68 links**: dense intra-cluster connections + sparse cross-cluster bridges ### Features - **Force simulation** with repulsion, link attraction, collision avoidance, and centering - **Draggable nodes** — grab and reposition any node; the simulation re-settles dynamically - **Hover highlighting** — hovering a node dims everything except its neighbors and connecting links, with a tooltip showing name, cluster, and connection count - **Zoom & pan** — scroll to zoom (0.15×–6×), drag the background to pan - **Glow effect** via SVG filter for visual pop on nodes - **Labels** rendered above each node - **Legend** (top-left) and info panel (bottom-left) - **Responsive** — adapts to window resize ### Tech - Loads `d3.min.js` via `<script src="d3.min.js">` (local file, no CDN) - All CSS in `<style>`, all JS in `<script>` — fully self-contained, no network requests

TAKE IT TO CODE

A single self-contained HTML file — copy it and open in any browser, or reuse the prompt with your own pi-agent run.

RUN

modelqwen3.6-27b
vendorQwen
harnesspi-agent
generated2026-07-31

EVALUATION

4/5 working

Force-directed clustered graph with drag and zoom working well; click/keyboard had no expected effect (not part of spec).

Vision grade · anthropic/claude-sonnet-5

MEASUREMENTS

Raw readings from the capture, not a verdict — the grade above is the only judgement. Percentages are how much of the screen changed; the measure under-reports sparse motion on a dark background.

idle motion0.0%
on click0.0%
on drag8.9%
on wheel4.3%
on enter + space0.0%
on arrow keys0.0%
on w/a/s/d0.0%
frame spread18.8 / 255
console errors0
js errors none

METRICS

runtime102.7s
tokens in15k
tokens out4.7k
cached6.3k
cost / run$0.0194