Needs["IGraphM`"];

Network motifs

IGData[{"AllDirectedGraphs",3}]//Map[Framed]//Row

MatrixPlot[IdentityMatrix[3],Mesh->All,ImageSize->Small]

allLabelledSimpleGraphs3=Select[
AdjacencyGraph[#,DirectedEdges->True]&@Partition[#,3]&/@IntegerDigits[Range[0,2^9-1],2,9],
SimpleGraphQ
];

Length[allLabelledSimpleGraphs3]

Framed[Graph[#,VertexCoordinates->CirclePoints[3],ImageSize->60]]&/@DeleteDuplicatesBy[allLabelledSimpleGraphs3,IGBlissCanonicalGraph]

Helpers

avg=MapThread[Around,{Mean[#],StandardDeviation[#]}]&;
motStyle=Graph[#,GraphStyle->"BasicBlack",EdgeStyle->Arrowheads[1/4],VertexSize->1/6]&;

Compute and plot

net=ExampleData[{"NetworkGraph","MetabolicNetworkMycobacteriumLeprae"}]

SeedRandom[42];

motifs=((IGTriadCensus[net])/(avg@Table[IGTriadCensus@IGRewire[net,1000],100]))//Log2//Quiet//N;
BarChart[motifs,ChartLabels->motStyle/@IGData[{"AllDirectedGraphs",3}],LabelingSize->30,ImageSize->Large,AspectRatio->1/3,Frame->True]

Graph[#,ImageSize->35]&/@IGData[{"AllDirectedGraphs",4}]

ratios=
AssociationThread[
IGData[{"AllDirectedGraphs",4}],
((IGMotifs[net,4])/(IGMotifs[IGRewire[net,10000],4]))//Quiet//N
];

Select[ratios,#>5&]

net=ExampleData[{"NetworkGraph","MetabolicNetworkMycobacteriumBovis"}];

ratios=
AssociationThread[
IGData[{"AllDirectedGraphs",4}],
((IGMotifs[net,4])/(IGMotifs[IGRewire[net,10000],4]))//Quiet//N
];

Select[ratios,#>5&]