Herschel Graph

Author

Eric W. Weisstein
June 17, 2023

This notebook downloaded from http://mathworld.wolfram.com/notebooks/GraphTheory/HerschelGraph.nb.

For more information, see Eric's MathWorld entry http://mathworld.wolfram.com/HerschelGraph.html.

©2023 Wolfram Research, Inc. except for portions noted otherwise

Nonhamiltonian polyhedral

TextGrid[{#[[1,1]],#[[All,2]]}&/@SplitBy[Sort[GraphData[#,{"M","#"}]&/@GraphData[{"Nonhamiltonian","Polyhedral"},11]],First],Dividers->All]

Embeddings

GraphData["HerschelGraph","StandardName"]

Primary

GraphData["HerschelGraph"]//StyleGraphs[#,ImageSize->Small]&

Construction from Read and Wilson

All

GraphData["HerschelGraph","Graph","All"]//StyleGraphs

Default embedding

GraphPlot@GraphData["HerschelGraph","Edges"]

v={};
g=Graph[Range[Length[v]],UndirectedEdge@@@{},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

By hand

v={{0,0},{1/2,0},{1,0},{1,1/2},{1,1},{1/2,1},{0,1},{0,1/2},{1/2,1/2},{1/4,1/2},{3/4,1/2}};
g=Graph[Range[Length[v]],UndirectedEdge@@@{e[1,2,3,4,5,6,7,8,1,9,5],e[7,9,3],e[10,2,11],e[8,10,6],e[6,11,4]},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

Hexagon

v=Join[CirclePoints[{1,Pi/2},4],CirclePoints[(2/(Sqrt[3])),6],{{0,0}}];
g=Graph[Range[11],UndirectedEdge@@@{{1,2},{2,3},{3,4},{2,9},{4,6},{8,11},{5,11},{10,11},{7,11},{1,4},{8,9},{1,8},{1,7},{3,10},{3,5},{9,10},{5,6},{6,7}},VertexCoordinates->v,VertexLabels->"Name"]

g=;

RecognizeGraph[g]

"Perspective box"

s=1;
g=Graph[Range[11],UndirectedEdge@@@{{1,2},{2,3},{3,6},{6,11},{10,11},{9,10},{8,9},{1,8},{8,7},{5,6},{2,5},{5,10},{7,10},{2,7},{1,4},{4,11},{3,4},{4,9}},VertexCoordinates->{{-s,-s},{0,-s},{s,-s},{0,0},{s,0},{2s,0},{-s,0},{-2s,0},{-s,s},{0,s},{s,s}},VertexLabels->"Name"]

Embedding types

GraphDataEmbeddings[GraphData["HerschelGraph","EdgeList"]]

Degenerate

GraphData["HerschelGraph","Graph","Degenerate"]//StyleGraphs

Circular

GraphData["HerschelGraph","Graph","Circular"]//StyleGraphs

Circular Manipulate

Manipulate[
Graph[Range[11],UndirectedEdge@@@{{1,2},{2,3},{3,4},{2,9},{4,6},{8,11},{5,11},{10,11},{7,11},{1,4},{8,9},{1,8},{1,7},{3,10},{3,5},{9,10},{5,6},{6,7}},VertexCoordinates->Join[CirclePoints[{1,Pi/2},4],CirclePoints[r,6],{{0,0}}],VertexLabels->"Name"],{r,.1,4}]

Planar

GraphData["HerschelGraph","Planar"]

GraphData["HerschelGraph","Graph","Planar"]//StyleGraphs

Tutte embeddings

faces=ReverseSort@SymmetricallyDistinctFaces[GraphData["HerschelGraph"]]

Tally[ReverseSort[Length/@faces]]

IGLayoutTutte[GraphData["HerschelGraph"],"OuterFace"->#]&/@faces

gs=Annotate[#,{VertexLabels->None,ImageSize->Tiny}]&/@{}

RecognizeGraph/@gs

Tutte embedding construction 4 #1

GraphPlot[RotateGraph[,-Pi/4]]

GraphData["HerschelGraph","Graphics"]

v=Join[CirclePoints[{1,Pi/2},4],CirclePoints[1/2,6],{{0,0}}];
g=Graph[Range[11],UndirectedEdge@@@{{1,2},{2,3},{3,4},{2,9},{4,6},{8,11},{5,11},{10,11},{7,11},{1,4},{8,9},{1,8},{1,7},{3,10},{3,5},{9,10},{5,6},{6,7}},VertexCoordinates->v,VertexLabels->"Name"]

RecognizeGraph[g]

Tutte embedding construction 4 #2

GraphPlot[RotateGraph[,3Pi/4]]

v=Join[CirclePoints[{1,0},4],Flatten[Table[{i,2/3j},{i,-1/2,1/2,1/2},{j,0,1/2,1/2}],1],{{0,-1/3}}];
g=Graph[Range[Length[v]],UndirectedEdge@@@{e[1,2,3,4,1,9,7,5,3],e[5,11,9,10,8,6,5],e[6,2,10],{7,8},{4,11}},VertexCoordinates->v,VertexLabels->Automatic]

RecognizeGraph[g]

Circulant

GraphData["HerschelGraph","Circulant"]

GraphData["HerschelGraph","Graph","Circulant"]//StyleGraphs

Halin

GraphData["HerschelGraph","Halin"]

GraphData["HerschelGraph","Graph","Halin"]//StyleGraphs

LCF

GraphData["HerschelGraph","LCF"]

GraphData["HerschelGraph","LCFSignature"]

GraphData["HerschelGraph","Graph","LCF"]//StyleGraphs

UnitDistance

GraphData["HerschelGraph","UnitDistance"]

UnitDistanceGraphQ[GraphData["HerschelGraph"],Debug->True]//Timing

GraphData["HerschelGraph","Graph","UnitDistance"]//StyleGraphs

Matchstick

GraphData["HerschelGraph","Matchstick"]

GraphData["HerschelGraph","Graph","Matchstick"]//StyleGraphs

3D default

Graph3D[GraphData["HerschelGraph","Edges"]]

3D All

GraphData["HerschelGraph","Graph",{"3D","All"}]

3D UnitDistance

GraphData["HerschelGraph","Graph",{"3D","UnitDistance"}]

3D Polyhedron

GraphData["HerschelGraph","Graph",{"3D","Polyhedron"}]

Graphics3D[{FaceForm[Green,Red],GraphData["HerschelGraph","Polyhedron"]}]

3D Canonical

GraphData["HerschelGraph","Graph",{"3D","Canonical"}]

Graphics3D[{Opacity[.5],Red,GraphData["HerschelGraph","Polyhedron"],Yellow,Sphere[]}]

3D Polyhedron construction

poly=PolyhedronData["HerschelEnneahedron","Polyhedron"]

Graphics3D[{FaceForm[Green,Red],poly}]

g=PolyhedronGraph[poly]

GraphData

GraphClassString

GraphClassString["HerschelGraph"]