Menggunakan bahasa Wolfram untuk menafsirkan bahasa Wolfram?
Saya ingin memplot hubungan semua fungsi di Mathematica, mungkin menggunakan Graph
atau grafik yang diarahkan secara paksa di 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]

Namun, angkanya terlalu besar. Apakah ada metode untuk memperbesar dan tooltip simpul?
Saya mencoba Tooltip
, Namun, itu tidak memberi plot.
Graph[Tooltip[#, #] & /@ VertexList[data], data]

Dan bagaimana saya dapat menggunakan warna untuk membedakan fungsi-fungsi ini dengan katogeri seperti Audio, Gambar dan bahasa Inti?

Mungkin saya dapat menggunakan pembelajaran mesin untuk membedakan fungsi-fungsi ini yang saya coba tetapi tidak berhasil dengan baik.
space =
Thread[
VertexList[data] ->
DimensionReduce[
FeatureExtract[VertexList[data], {"SegmentedWords", "TFIDF"}],
1]];
space[[All, 2]] = Normalize[Flatten@space[[All, 2]]];
NumberLinePlot[space[[All, 2]]]

MEMPERBARUI:
Versi: 12.1.1.1
Ini sudah menjadi demo di NestGraph
dokumen.

Jawaban
Dukungan teknis KASUS: 4620942
$Version
(* "12.1.1 for Mac OS X x86 (64-bit) (June 19, 2020)" *)
Clear["Global`*"]
Seperti yang disarankan oleh flinty, menjalankan kode dari documentation
graph = WolframLanguageData["Cos", "RelationshipCommunityGraph"]

Label untuk simpul tidak dirender dengan benar
Show[graph, ImageSize -> Large]

Sebagai solusinya, perbaiki label secara manual
graph /. Style[lbl_, _List] :> lbl

Tentukan fungsi yang dapat mengekstrak tetangga dengan radius di r
sekitar simpul n
:
subgraph[g_, n_, r_] := Subgraph[g, AdjacencyList[g, n, r]~Join~{n}]
Mari kita lihat tetangga yang jaraknya ke Sin
fungsi adalah 2
subg = subgraph[Graph[data], "Sin", 2];
GraphPlot[HighlightGraph[subg, {"Sin"}], VertexLabels -> "Name", ImageSize -> Large]

Ekspor data grafik yang akan digunakan dalam HTML berikut:
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]
Unduh skrip D3.js index.html
dari D3.js v4 Grafik Berarah Paksa dengan Label
Kemudian di terminal ketik yang berikut (python3): python -m http.server
Kemudian buka http://localhost:8000/
di Chrome, sosok itu dapat menyeret simpul secara interaktif

Tetapi untuk grafik besar secara keseluruhan, D3.js tidak dapat mengatasinya ...