I would like to obtain entrance edge and output edges as in the following figure
My code is the following:
vertices = vertices = {"S", "E", "I", "R"};
groups = {{"S"}, {"E", "I"}, {"R"}};
colors = Flatten@
MapThread[Thread@*Rule, {groups, {White, Yellow, Red}}];
chart = LayeredGraphPlot[{Style[Labeled["S" -> "E", F], Red, Thick],
Style[Labeled["E" \[UndirectedEdge] "S", \[Beta]], Dashed, Green,
Thick], Style[Labeled["E" -> "I", Subscript[\[Gamma], e]], Brown,
Thick], Style[Labeled["I" -> "R", Subscript[\[Gamma], i] ],
Dashed, Purple, Thick],
Style[Labeled["R" -> "S", Subscript[\[Gamma], r] ], Dashed, Cyan,
Thick], Style[Labeled["S" -> "R", Subscript[\[Gamma], s] ],
Dashed, Purple, Thick]}, Left,
PlotStyle -> {"TemperatureMap", Bold},
VertexLabels -> Placed[Automatic, Center],
PerformanceGoal -> "Quality",
{VertexShapeFunction -> {"S" -> "Square",
"R" -> "ConcaveHexagon"}}, VertexStyle -> colors,
VertexShapeFunction -> ({EdgeForm[Black], Disk[#1, 0.2],
Text[#2, #1]} &), VertexSize -> Large,
EdgeLabelStyle -> Directive[10, Background -> White]]