Generating adjacency matrices from isomorphic graphsTikz foreach inside matrixHow to make tikz center the cells of a matrix?Bipartite graphsDrawing graphs in LaTeXGenerating dozens of graphsTo wrap the external lines so that it can touch the perimeterDrawing rectilinear curves in Tikz, aka an Etch-a-Sketch drawingExporting graphs from Mathematica to LaTex document?Line up nested tikz enviroments or how to get rid of themGenerating graphs with smooth edges?How to draw animated isomorphic graphs?

When quoting, must I also copy hyphens used to divide words that continue on the next line?

How can Trident be so inexpensive? Will it orbit Triton or just do a (slow) flyby?

How do ground effect vehicles perform turns?

Varistor? Purpose and principle

We have a love-hate relationship

Some numbers are more equivalent than others

Engineer refusing to file/disclose patents

Why in book's example is used 言葉(ことば) instead of 言語(げんご)?

Do Legal Documents Require Signing In Standard Pen Colors?

Are all species of CANNA edible?

If a character with the Alert feat rolls a crit fail on their Perception check, are they surprised?

Can somebody explain Brexit in a few child-proof sentences?

Visiting the UK as unmarried couple

Indicating multiple different modes of speech (fantasy language or telepathy)

What is this type of notehead called?

How do I extrude a face to a single vertex

A Permanent Norse Presence in America

What does the Rambam mean when he says that the planets have souls?

Is it possible to use .desktop files to open local pdf files on specific pages with a browser?

Open a doc from terminal, but not by its name

Should I stop contributing to retirement accounts?

Can the Supreme Court overturn an impeachment?

Folder comparison

Simulating a probability of 1 of 2^N with less than N random bits



Generating adjacency matrices from isomorphic graphs


Tikz foreach inside matrixHow to make tikz center the cells of a matrix?Bipartite graphsDrawing graphs in LaTeXGenerating dozens of graphsTo wrap the external lines so that it can touch the perimeterDrawing rectilinear curves in Tikz, aka an Etch-a-Sketch drawingExporting graphs from Mathematica to LaTex document?Line up nested tikz enviroments or how to get rid of themGenerating graphs with smooth edges?How to draw animated isomorphic graphs?













2















Here are some isomorphic graphs and their corresponding adjacency matrices. I can draw the graphs with tikz. But I'm not sure the best way to draw the matrices. Is it possible to generate one from the other? What's the right way to approach it?



enter image description here



Here's an example of the code to generate a graph:



 documentclassstandalone
usepackagetikz
begindocument
begintikzpicture
tikzsetBullet/.style=circle,draw,fill=black,scale=0.75
node[Bullet,label=left :$e_1$] (E1) at (0,2) ;
node[Bullet,label=above:$e_2$] (E2) at (1,3) ;
node[Bullet,label=right:$e_3$] (E3) at (2,2) ;
node[Bullet,label=right:$e_4$] (E4) at (2,0) ;
node[Bullet,label=left :$e_5$] (E5) at (0,0) ;
draw[thick] (E1)--(E2)--(E3)--(E4)--(E5)--(E1) ;
endtikzpicture
enddocument









share|improve this question
























  • Shouldn't it be the other way around: you construct the diagrams from the adjacency matrices?

    – marmot
    3 hours ago











  • @marmot Probably, normally. Actually I don't think so. I mean.. Either way is probably good. But I have some graphs drawn up, and I want to draw the matrices to suit them. If I can't figure it out programmatically, I'll just draw them up separately. Either with LaTeX somehow or with Adobe Illustrator, or some spreadsheet/word processor. LaTeX would be nice though.

    – tjt263
    2 hours ago















2















Here are some isomorphic graphs and their corresponding adjacency matrices. I can draw the graphs with tikz. But I'm not sure the best way to draw the matrices. Is it possible to generate one from the other? What's the right way to approach it?



enter image description here



Here's an example of the code to generate a graph:



 documentclassstandalone
usepackagetikz
begindocument
begintikzpicture
tikzsetBullet/.style=circle,draw,fill=black,scale=0.75
node[Bullet,label=left :$e_1$] (E1) at (0,2) ;
node[Bullet,label=above:$e_2$] (E2) at (1,3) ;
node[Bullet,label=right:$e_3$] (E3) at (2,2) ;
node[Bullet,label=right:$e_4$] (E4) at (2,0) ;
node[Bullet,label=left :$e_5$] (E5) at (0,0) ;
draw[thick] (E1)--(E2)--(E3)--(E4)--(E5)--(E1) ;
endtikzpicture
enddocument









share|improve this question
























  • Shouldn't it be the other way around: you construct the diagrams from the adjacency matrices?

    – marmot
    3 hours ago











  • @marmot Probably, normally. Actually I don't think so. I mean.. Either way is probably good. But I have some graphs drawn up, and I want to draw the matrices to suit them. If I can't figure it out programmatically, I'll just draw them up separately. Either with LaTeX somehow or with Adobe Illustrator, or some spreadsheet/word processor. LaTeX would be nice though.

    – tjt263
    2 hours ago













2












2








2








Here are some isomorphic graphs and their corresponding adjacency matrices. I can draw the graphs with tikz. But I'm not sure the best way to draw the matrices. Is it possible to generate one from the other? What's the right way to approach it?



enter image description here



Here's an example of the code to generate a graph:



 documentclassstandalone
usepackagetikz
begindocument
begintikzpicture
tikzsetBullet/.style=circle,draw,fill=black,scale=0.75
node[Bullet,label=left :$e_1$] (E1) at (0,2) ;
node[Bullet,label=above:$e_2$] (E2) at (1,3) ;
node[Bullet,label=right:$e_3$] (E3) at (2,2) ;
node[Bullet,label=right:$e_4$] (E4) at (2,0) ;
node[Bullet,label=left :$e_5$] (E5) at (0,0) ;
draw[thick] (E1)--(E2)--(E3)--(E4)--(E5)--(E1) ;
endtikzpicture
enddocument









share|improve this question
















Here are some isomorphic graphs and their corresponding adjacency matrices. I can draw the graphs with tikz. But I'm not sure the best way to draw the matrices. Is it possible to generate one from the other? What's the right way to approach it?



enter image description here



Here's an example of the code to generate a graph:



 documentclassstandalone
usepackagetikz
begindocument
begintikzpicture
tikzsetBullet/.style=circle,draw,fill=black,scale=0.75
node[Bullet,label=left :$e_1$] (E1) at (0,2) ;
node[Bullet,label=above:$e_2$] (E2) at (1,3) ;
node[Bullet,label=right:$e_3$] (E3) at (2,2) ;
node[Bullet,label=right:$e_4$] (E4) at (2,0) ;
node[Bullet,label=left :$e_5$] (E5) at (0,0) ;
draw[thick] (E1)--(E2)--(E3)--(E4)--(E5)--(E1) ;
endtikzpicture
enddocument






diagrams matrices graphs tikz-pic






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 3 hours ago







tjt263

















asked 3 hours ago









tjt263tjt263

1826




1826












  • Shouldn't it be the other way around: you construct the diagrams from the adjacency matrices?

    – marmot
    3 hours ago











  • @marmot Probably, normally. Actually I don't think so. I mean.. Either way is probably good. But I have some graphs drawn up, and I want to draw the matrices to suit them. If I can't figure it out programmatically, I'll just draw them up separately. Either with LaTeX somehow or with Adobe Illustrator, or some spreadsheet/word processor. LaTeX would be nice though.

    – tjt263
    2 hours ago

















  • Shouldn't it be the other way around: you construct the diagrams from the adjacency matrices?

    – marmot
    3 hours ago











  • @marmot Probably, normally. Actually I don't think so. I mean.. Either way is probably good. But I have some graphs drawn up, and I want to draw the matrices to suit them. If I can't figure it out programmatically, I'll just draw them up separately. Either with LaTeX somehow or with Adobe Illustrator, or some spreadsheet/word processor. LaTeX would be nice though.

    – tjt263
    2 hours ago
















Shouldn't it be the other way around: you construct the diagrams from the adjacency matrices?

– marmot
3 hours ago





Shouldn't it be the other way around: you construct the diagrams from the adjacency matrices?

– marmot
3 hours ago













@marmot Probably, normally. Actually I don't think so. I mean.. Either way is probably good. But I have some graphs drawn up, and I want to draw the matrices to suit them. If I can't figure it out programmatically, I'll just draw them up separately. Either with LaTeX somehow or with Adobe Illustrator, or some spreadsheet/word processor. LaTeX would be nice though.

– tjt263
2 hours ago





@marmot Probably, normally. Actually I don't think so. I mean.. Either way is probably good. But I have some graphs drawn up, and I want to draw the matrices to suit them. If I can't figure it out programmatically, I'll just draw them up separately. Either with LaTeX somehow or with Adobe Illustrator, or some spreadsheet/word processor. LaTeX would be nice though.

– tjt263
2 hours ago










1 Answer
1






active

oldest

votes


















4














This is in case you change your mind and use the adjacency matrices to draw the graphs. TikZ allows you to define arrays, see p. 999 of the pgfmanual. And these arrays can be converted to tables using this nice answer. And these matrices/arrays can also be used to define the graphs.



documentclass[tikz,border=3.14mm]standalone
usepackageetoolbox
usetikzlibrarymatrix,positioning
% building the table in a foreach loop from https://tex.stackexchange.com/a/60400/121799
begindocument
begintikzpicture[Bullet/.style=circle,draw,fill=black,inner sep=1.5pt,
adjacency matrix/.style=ampersand replacement=&,matrix of math nodes,
row 1/.append style=nodes=font=boldmath,
column 1/.append style=nodes=font=boldmath,nodes in empty cells,
nodes=draw,minimum width=1.5em,text height=1.8ex,column sep=-pgflinewidth,row
sep=-pgflinewidth]
% first matrix
defadjancymatrix%
0,0,1,1,0,%
0,0,0,1,1,%
1,0,0,0,1,%
1,1,0,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=left]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (leftmat) [below=of left,adjacency matrix]
mymatrixcontent
;
%
% second matrix
defadjancymatrix%
0,1,0,0,1,%
1,0,1,0,0,%
0,1,0,1,0,%
0,0,1,0,1,%
1,0,0,1,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=middle,xshift=5cm]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (midmat) [below=of middle,adjacency matrix]
mymatrixcontent
;
% third matrix
defadjancymatrix%
0,1,0,1,0,%
1,0,0,0,1,%
0,0,0,1,1,%
1,0,1,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=right,xshift=10cm]
foreach X in 1,...,3
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
node[Bullet,label=90+72-4*72:$e_5$] (E5) at (90+72-4*72:2) ;
node[Bullet,label=90+72-5*72:$e_4$] (E4) at (90+72-5*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (rightmat) [below=of right,adjacency matrix]
mymatrixcontent
;

endtikzpicture
enddocument


enter image description here






share|improve this answer

























  • Not bad, can we get the matrix lines drawn in or is it just like that

    – tjt263
    44 mins ago











  • @tjt263 Yes, sure.

    – marmot
    36 mins ago











  • Excellent. Wish I could go the other way. Maybe I will just try to draw them manually instead.

    – tjt263
    21 mins ago










Your Answer








StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "85"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f481289%2fgenerating-adjacency-matrices-from-isomorphic-graphs%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









4














This is in case you change your mind and use the adjacency matrices to draw the graphs. TikZ allows you to define arrays, see p. 999 of the pgfmanual. And these arrays can be converted to tables using this nice answer. And these matrices/arrays can also be used to define the graphs.



documentclass[tikz,border=3.14mm]standalone
usepackageetoolbox
usetikzlibrarymatrix,positioning
% building the table in a foreach loop from https://tex.stackexchange.com/a/60400/121799
begindocument
begintikzpicture[Bullet/.style=circle,draw,fill=black,inner sep=1.5pt,
adjacency matrix/.style=ampersand replacement=&,matrix of math nodes,
row 1/.append style=nodes=font=boldmath,
column 1/.append style=nodes=font=boldmath,nodes in empty cells,
nodes=draw,minimum width=1.5em,text height=1.8ex,column sep=-pgflinewidth,row
sep=-pgflinewidth]
% first matrix
defadjancymatrix%
0,0,1,1,0,%
0,0,0,1,1,%
1,0,0,0,1,%
1,1,0,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=left]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (leftmat) [below=of left,adjacency matrix]
mymatrixcontent
;
%
% second matrix
defadjancymatrix%
0,1,0,0,1,%
1,0,1,0,0,%
0,1,0,1,0,%
0,0,1,0,1,%
1,0,0,1,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=middle,xshift=5cm]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (midmat) [below=of middle,adjacency matrix]
mymatrixcontent
;
% third matrix
defadjancymatrix%
0,1,0,1,0,%
1,0,0,0,1,%
0,0,0,1,1,%
1,0,1,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=right,xshift=10cm]
foreach X in 1,...,3
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
node[Bullet,label=90+72-4*72:$e_5$] (E5) at (90+72-4*72:2) ;
node[Bullet,label=90+72-5*72:$e_4$] (E4) at (90+72-5*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (rightmat) [below=of right,adjacency matrix]
mymatrixcontent
;

endtikzpicture
enddocument


enter image description here






share|improve this answer

























  • Not bad, can we get the matrix lines drawn in or is it just like that

    – tjt263
    44 mins ago











  • @tjt263 Yes, sure.

    – marmot
    36 mins ago











  • Excellent. Wish I could go the other way. Maybe I will just try to draw them manually instead.

    – tjt263
    21 mins ago















4














This is in case you change your mind and use the adjacency matrices to draw the graphs. TikZ allows you to define arrays, see p. 999 of the pgfmanual. And these arrays can be converted to tables using this nice answer. And these matrices/arrays can also be used to define the graphs.



documentclass[tikz,border=3.14mm]standalone
usepackageetoolbox
usetikzlibrarymatrix,positioning
% building the table in a foreach loop from https://tex.stackexchange.com/a/60400/121799
begindocument
begintikzpicture[Bullet/.style=circle,draw,fill=black,inner sep=1.5pt,
adjacency matrix/.style=ampersand replacement=&,matrix of math nodes,
row 1/.append style=nodes=font=boldmath,
column 1/.append style=nodes=font=boldmath,nodes in empty cells,
nodes=draw,minimum width=1.5em,text height=1.8ex,column sep=-pgflinewidth,row
sep=-pgflinewidth]
% first matrix
defadjancymatrix%
0,0,1,1,0,%
0,0,0,1,1,%
1,0,0,0,1,%
1,1,0,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=left]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (leftmat) [below=of left,adjacency matrix]
mymatrixcontent
;
%
% second matrix
defadjancymatrix%
0,1,0,0,1,%
1,0,1,0,0,%
0,1,0,1,0,%
0,0,1,0,1,%
1,0,0,1,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=middle,xshift=5cm]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (midmat) [below=of middle,adjacency matrix]
mymatrixcontent
;
% third matrix
defadjancymatrix%
0,1,0,1,0,%
1,0,0,0,1,%
0,0,0,1,1,%
1,0,1,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=right,xshift=10cm]
foreach X in 1,...,3
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
node[Bullet,label=90+72-4*72:$e_5$] (E5) at (90+72-4*72:2) ;
node[Bullet,label=90+72-5*72:$e_4$] (E4) at (90+72-5*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (rightmat) [below=of right,adjacency matrix]
mymatrixcontent
;

endtikzpicture
enddocument


enter image description here






share|improve this answer

























  • Not bad, can we get the matrix lines drawn in or is it just like that

    – tjt263
    44 mins ago











  • @tjt263 Yes, sure.

    – marmot
    36 mins ago











  • Excellent. Wish I could go the other way. Maybe I will just try to draw them manually instead.

    – tjt263
    21 mins ago













4












4








4







This is in case you change your mind and use the adjacency matrices to draw the graphs. TikZ allows you to define arrays, see p. 999 of the pgfmanual. And these arrays can be converted to tables using this nice answer. And these matrices/arrays can also be used to define the graphs.



documentclass[tikz,border=3.14mm]standalone
usepackageetoolbox
usetikzlibrarymatrix,positioning
% building the table in a foreach loop from https://tex.stackexchange.com/a/60400/121799
begindocument
begintikzpicture[Bullet/.style=circle,draw,fill=black,inner sep=1.5pt,
adjacency matrix/.style=ampersand replacement=&,matrix of math nodes,
row 1/.append style=nodes=font=boldmath,
column 1/.append style=nodes=font=boldmath,nodes in empty cells,
nodes=draw,minimum width=1.5em,text height=1.8ex,column sep=-pgflinewidth,row
sep=-pgflinewidth]
% first matrix
defadjancymatrix%
0,0,1,1,0,%
0,0,0,1,1,%
1,0,0,0,1,%
1,1,0,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=left]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (leftmat) [below=of left,adjacency matrix]
mymatrixcontent
;
%
% second matrix
defadjancymatrix%
0,1,0,0,1,%
1,0,1,0,0,%
0,1,0,1,0,%
0,0,1,0,1,%
1,0,0,1,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=middle,xshift=5cm]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (midmat) [below=of middle,adjacency matrix]
mymatrixcontent
;
% third matrix
defadjancymatrix%
0,1,0,1,0,%
1,0,0,0,1,%
0,0,0,1,1,%
1,0,1,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=right,xshift=10cm]
foreach X in 1,...,3
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
node[Bullet,label=90+72-4*72:$e_5$] (E5) at (90+72-4*72:2) ;
node[Bullet,label=90+72-5*72:$e_4$] (E4) at (90+72-5*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (rightmat) [below=of right,adjacency matrix]
mymatrixcontent
;

endtikzpicture
enddocument


enter image description here






share|improve this answer















This is in case you change your mind and use the adjacency matrices to draw the graphs. TikZ allows you to define arrays, see p. 999 of the pgfmanual. And these arrays can be converted to tables using this nice answer. And these matrices/arrays can also be used to define the graphs.



documentclass[tikz,border=3.14mm]standalone
usepackageetoolbox
usetikzlibrarymatrix,positioning
% building the table in a foreach loop from https://tex.stackexchange.com/a/60400/121799
begindocument
begintikzpicture[Bullet/.style=circle,draw,fill=black,inner sep=1.5pt,
adjacency matrix/.style=ampersand replacement=&,matrix of math nodes,
row 1/.append style=nodes=font=boldmath,
column 1/.append style=nodes=font=boldmath,nodes in empty cells,
nodes=draw,minimum width=1.5em,text height=1.8ex,column sep=-pgflinewidth,row
sep=-pgflinewidth]
% first matrix
defadjancymatrix%
0,0,1,1,0,%
0,0,0,1,1,%
1,0,0,0,1,%
1,1,0,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=left]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (leftmat) [below=of left,adjacency matrix]
mymatrixcontent
;
%
% second matrix
defadjancymatrix%
0,1,0,0,1,%
1,0,1,0,0,%
0,1,0,1,0,%
0,0,1,0,1,%
1,0,0,1,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=middle,xshift=5cm]
foreach X in 1,...,5
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (midmat) [below=of middle,adjacency matrix]
mymatrixcontent
;
% third matrix
defadjancymatrix%
0,1,0,1,0,%
1,0,0,0,1,%
0,0,0,1,1,%
1,0,1,0,0,%
0,1,1,0,0
letmymatrixcontentempty
defmymatrixcontent& 1 & 2 & 3 & 4 & 5\
beginscope[local bounding box=right,xshift=10cm]
foreach X in 1,...,3
node[Bullet,label=90+72-X*72:$e_X$] (EX) at (90+72-X*72:2) ;
node[Bullet,label=90+72-4*72:$e_5$] (E5) at (90+72-4*72:2) ;
node[Bullet,label=90+72-5*72:$e_4$] (E4) at (90+72-5*72:2) ;
foreach X in 1,...,5
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontentX x
foreach Y in 1,...,5
pgfmathtruncatemacroitestadjancymatrix[X-1][Y-1]
ifnumitest=1
draw (EX) -- (EY);
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent& 1 x
else
begingroupedefxendgroup
noexpandgapptonoexpandmymatrixcontent &x
fi

gapptomymatrixcontent\

endscope
matrix (rightmat) [below=of right,adjacency matrix]
mymatrixcontent
;

endtikzpicture
enddocument


enter image description here







share|improve this answer














share|improve this answer



share|improve this answer








edited 36 mins ago

























answered 1 hour ago









marmotmarmot

111k5140264




111k5140264












  • Not bad, can we get the matrix lines drawn in or is it just like that

    – tjt263
    44 mins ago











  • @tjt263 Yes, sure.

    – marmot
    36 mins ago











  • Excellent. Wish I could go the other way. Maybe I will just try to draw them manually instead.

    – tjt263
    21 mins ago

















  • Not bad, can we get the matrix lines drawn in or is it just like that

    – tjt263
    44 mins ago











  • @tjt263 Yes, sure.

    – marmot
    36 mins ago











  • Excellent. Wish I could go the other way. Maybe I will just try to draw them manually instead.

    – tjt263
    21 mins ago
















Not bad, can we get the matrix lines drawn in or is it just like that

– tjt263
44 mins ago





Not bad, can we get the matrix lines drawn in or is it just like that

– tjt263
44 mins ago













@tjt263 Yes, sure.

– marmot
36 mins ago





@tjt263 Yes, sure.

– marmot
36 mins ago













Excellent. Wish I could go the other way. Maybe I will just try to draw them manually instead.

– tjt263
21 mins ago





Excellent. Wish I could go the other way. Maybe I will just try to draw them manually instead.

– tjt263
21 mins ago

















draft saved

draft discarded
















































Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f481289%2fgenerating-adjacency-matrices-from-isomorphic-graphs%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Möglingen Índice Localización Historia Demografía Referencias Enlaces externos Menú de navegación48°53′18″N 9°07′45″E / 48.888333333333, 9.129166666666748°53′18″N 9°07′45″E / 48.888333333333, 9.1291666666667Sitio web oficial Mapa de Möglingen«Gemeinden in Deutschland nach Fläche, Bevölkerung und Postleitzahl am 30.09.2016»Möglingen

Virtualbox - Configuration error: Querying “UUID” failed (VERR_CFGM_VALUE_NOT_FOUND)“VERR_SUPLIB_WORLD_WRITABLE” error when trying to installing OS in virtualboxVirtual Box Kernel errorFailed to open a seesion for the virtual machineFailed to open a session for the virtual machineUbuntu 14.04 LTS Virtualbox errorcan't use VM VirtualBoxusing virtualboxI can't run Linux-64 Bit on VirtualBoxUnable to insert the virtual optical disk (VBoxguestaddition) in virtual machine for ubuntu server in win 10VirtuaBox in Ubuntu 18.04 Issues with Win10.ISO Installation

Antonio De Lisio Carrera Referencias Menú de navegación«Caracas: evolución relacional multipleja»«Cuando los gobiernos subestiman a las localidades: L a Iniciativa para la Integración de la Infraestructura Regional Suramericana (IIRSA) en la frontera Colombo-Venezolana»«Maestría en Planificación Integral del Ambiente»«La Metrópoli Caraqueña: Expansión Simplificadora o Articulación Diversificante»«La Metrópoli Caraqueña: Expansión Simplificadora o Articulación Diversificante»«Conózcanos»«Caracas: evolución relacional multipleja»«La Metrópoli Caraqueña: Expansión Simplificadora o Articulación Diversificante»