474 cancer pages under 15 organ systems and 5 histology groupings, joined by 545 edges in 5 layers. 421 are subtypes of a broader cancer, and 70 sit under more than one node, which is why this is a graph and not a tree.
The group field on each record: haematologic, gastrointestinal, lung and the rest. Links to the browser filtered to that system.
Words in the record names that cut across organs: adenocarcinoma, squamous, neuroendocrine, germ cell. Kept only where members span two or more systems.
Cancers with no broader parent recorded.
Cancers with a parent field; a subtype can also carry its own organ system.
These cancers have two or more parents on the map: a site and a lineage, an age group and a disease, or a histology word shared across organs. Each chip names the cancer and the nodes it sits under.
The same graph as nested lists, one per grouping axis. A cancer that sits under two nodes appears under both, marked ×2. Counts are trials linked to the cancer or anything beneath it.
Every node and edge is read from fields already on the cancer records; nothing is inferred about the diseases themselves. The organ-system layer is the group field. The parent layer is the parent field, the broader cancer a page is a subtype of. The histology layer matches a short fixed vocabulary of words in the record names (adenocarcinoma, squamous, neuroendocrine, germ cell, and others that did not survive the filter below); the schema has no histology field, so this axis is only as complete as the names.
An organ-system or histology edge is left out when a cancer's parent chain already carries the same grouping, so each fact is drawn once. A histology node is kept only when its members span at least two organ systems; otherwise the system node already says the same thing. Layers come from the longest path to each node; within a layer nodes are ordered by repeated barycentre sweeps and then placed at the mean row of their neighbours, which keeps most edges short.
Badge counts are distinct records of each kind linked to a node or anything beneath it: trials and products in either direction of the graph, approved products meaning linked products with at least one recorded approval, and ideas that name the cancer. Pick the badge above; the choice is kept in the address as ?by=.
For scripts and agents: https://onco.cc/cancers/map/graph.json has the nodes, edges, layers and statistics; every cancer node carries the page it links to. The technology dependency map is drawn the same way.