Используете язык Wolfram для интерпретации языка Wolfram?
Я хочу построить взаимосвязь всех функций в Mathematica, возможно, используя Graph
или принудительно-направленный график в D3.js
k =
DeleteCases[
WolframLanguageData[All, {"CanonicalName", "RelatedSymbols"}], {_, _Missing}];
k = MapAt[CanonicalName, k, {All, 2}];
data =
DeleteDuplicates[
Sort /@ Flatten[Thread[#[[1]] \[UndirectedEdge] #[[2]]] & /@ k]];
GraphPlot[data, VertexSize -> Tiny, ImageSize -> Full]

Однако цифра слишком велика. Есть ли способ увеличить его и отобразить всплывающие подсказки по вершинам?
Я пробовал Tooltip
, но сюжета это не дало.
Graph[Tooltip[#, #] & /@ VertexList[data], data]

И как я могу использовать цвета, чтобы различать эти функции по таким категориям, как Аудио, Изображение и Основной язык?

Возможно, я мог бы использовать машинное обучение, чтобы различать эти функции, которые я пробовал, но это не сработало.
space =
Thread[
VertexList[data] ->
DimensionReduce[
FeatureExtract[VertexList[data], {"SegmentedWords", "TFIDF"}],
1]];
space[[All, 2]] = Normalize[Flatten@space[[All, 2]]];
NumberLinePlot[space[[All, 2]]]

ОБНОВИТЬ:
Версия: 12.1.1
Это уже была демонстрация в NestGraph
документе.

Ответы
Техническая поддержка CASE: 4620942
$Version
(* "12.1.1 for Mac OS X x86 (64-bit) (June 19, 2020)" *)
Clear["Global`*"]
По предложению flinty, запуск кода из documentation
graph = WolframLanguageData["Cos", "RelationshipCommunityGraph"]

Метки для вершин не отображаются должным образом
Show[graph, ImageSize -> Large]

В качестве обходного пути исправьте метки вручную
graph /. Style[lbl_, _List] :> lbl

Определите функцию, которая может извлекать соседей с радиусом r
вокруг вершины n
:
subgraph[g_, n_, r_] := Subgraph[g, AdjacencyList[g, n, r]~Join~{n}]
Посмотрим на соседей, расстояние от которых до Sin
функции равно 2.
subg = subgraph[Graph[data], "Sin", 2];
GraphPlot[HighlightGraph[subg, {"Sin"}], VertexLabels -> "Name", ImageSize -> Large]

Экспортируйте данные графика, которые будут использоваться в следующем HTML:
json = {"nodes" ->
Table[{"id" -> i, "group" -> 1}, {i, VertexList@subg}],
"links" ->
Table[{"source" -> i[[1]], "target" -> i[[2]], "value" -> 1}, {i, EdgeList@subg}]};
Export["miserables.json", json]
Загрузите сценарий D3.js index.html
из D3.js v4 Force Directed Graph с метками
Затем в терминале введите следующее (python3): python -m http.server
Затем откройте http://localhost:8000/
в Chrome, фигура может перетаскивать вершину интерактивно

Но для всего большого графа D3.js не справляется ...