Arrows in tikz Markov chain diagram overlap The Next CEO of Stack OverflowRotate a node but...

How should I connect my cat5 cable to connectors having an orange-green line?

Read/write a pipe-delimited file line by line with some simple text manipulation

How to implement Comparable so it is consistent with identity-equality

Why did early computer designers eschew integers?

How to pronounce fünf in 45

Can I cast Thunderwave and be at the center of its bottom face, but not be affected by it?

How do I secure a TV wall mount?

Why was Sir Cadogan fired?

MT "will strike" & LXX "will watch carefully" (Gen 3:15)?

Can Sri Krishna be called 'a person'?

How does a dynamic QR code work?

Is it possible to make a 9x9 table fit within the default margins?

Ising model simulation

Raspberry pi 3 B with Ubuntu 18.04 server arm64: what pi version

How can a day be of 24 hours?

Could a dragon use its wings to swim?

Does int main() need a declaration on C++?

Cannot restore registry to default in Windows 10?

Is it a bad idea to plug the other end of ESD strap to wall ground?

Calculating discount not working

How to coordinate airplane tickets?

Could you use a laser beam as a modulated carrier wave for radio signal?

Gauss' Posthumous Publications?

Early programmable calculators with RS-232



Arrows in tikz Markov chain diagram overlap



The Next CEO of Stack OverflowRotate a node but not its content: the case of the ellipse decorationHow to define the default vertical distance between nodes?To wrap the external lines so that it can touch the perimeterChanging Size of Arrows, Labels, Loops in Diagrams and Directed GraphsDraw edge on arcNumerical conditional within tikz keys?Drawing a bent path as a loop in tikzDrawing rectilinear curves in Tikz, aka an Etch-a-Sketch drawingLine up nested tikz enviroments or how to get rid of themCommutative diagram with curve connecting between nodes












2















I am trying to draw a Markov chain using tikz. The diagram is in the correct setup except the arrow going from State 2 and 3 overlaps two other arrows. I tried repositioning the states using node distance but that did not seem to work. How can I force the arrows not to overlap?
Markov Chain



%latex
documentclass[reqno]{amsart}
usepackage{amsmath}
usepackage{amssymb}
usepackage{hyperref}
usepackage{pgfplots}

usepgfplotslibrary{fillbetween}

usepackage{tikz}
usetikzlibrary{automata}
usetikzlibrary{positioning} % ...positioning nodes
usetikzlibrary{arrows} % ...customizing arrows
tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
every state/.style={ % Sets the properties for each state
semithick,
fill=gray!10},
initial text={}, % No label on start arrow
double distance=4pt, % Adjust appearance of accept states
every edge/.style={ % Sets the properties for each transition
draw,
->,>=stealth', % Makes edges directed with bold arrowheads
auto,
semithick}}

begin{document}

begin{figure}[htb]
centering
begin{tikzpicture}
node[state] (s1) {State 1};
node[state, below right of=s1] (s2) {State 2};
node[state, below left of=s1] (s3) {State 3};

draw (s1) edge[loop above] node {} (s1);
draw (s1) edge[bend left] node {} (s2);
draw (s1) edge[bend right] node {} (s3);

draw (s2) edge[bend left] node {} (s1);
draw (s2) edge[loop right] node {} (s2);
draw (s2) edge[bend right] node {} (s3);

draw (s3) edge[bend right] node {} (s1);
draw (s3) edge[bend right] node {} (s2);
draw (s3) edge[loop left] node {} (s3);

end{tikzpicture}
end{figure}

end{document}









share|improve this question



























    2















    I am trying to draw a Markov chain using tikz. The diagram is in the correct setup except the arrow going from State 2 and 3 overlaps two other arrows. I tried repositioning the states using node distance but that did not seem to work. How can I force the arrows not to overlap?
    Markov Chain



    %latex
    documentclass[reqno]{amsart}
    usepackage{amsmath}
    usepackage{amssymb}
    usepackage{hyperref}
    usepackage{pgfplots}

    usepgfplotslibrary{fillbetween}

    usepackage{tikz}
    usetikzlibrary{automata}
    usetikzlibrary{positioning} % ...positioning nodes
    usetikzlibrary{arrows} % ...customizing arrows
    tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
    every state/.style={ % Sets the properties for each state
    semithick,
    fill=gray!10},
    initial text={}, % No label on start arrow
    double distance=4pt, % Adjust appearance of accept states
    every edge/.style={ % Sets the properties for each transition
    draw,
    ->,>=stealth', % Makes edges directed with bold arrowheads
    auto,
    semithick}}

    begin{document}

    begin{figure}[htb]
    centering
    begin{tikzpicture}
    node[state] (s1) {State 1};
    node[state, below right of=s1] (s2) {State 2};
    node[state, below left of=s1] (s3) {State 3};

    draw (s1) edge[loop above] node {} (s1);
    draw (s1) edge[bend left] node {} (s2);
    draw (s1) edge[bend right] node {} (s3);

    draw (s2) edge[bend left] node {} (s1);
    draw (s2) edge[loop right] node {} (s2);
    draw (s2) edge[bend right] node {} (s3);

    draw (s3) edge[bend right] node {} (s1);
    draw (s3) edge[bend right] node {} (s2);
    draw (s3) edge[loop left] node {} (s3);

    end{tikzpicture}
    end{figure}

    end{document}









    share|improve this question

























      2












      2








      2








      I am trying to draw a Markov chain using tikz. The diagram is in the correct setup except the arrow going from State 2 and 3 overlaps two other arrows. I tried repositioning the states using node distance but that did not seem to work. How can I force the arrows not to overlap?
      Markov Chain



      %latex
      documentclass[reqno]{amsart}
      usepackage{amsmath}
      usepackage{amssymb}
      usepackage{hyperref}
      usepackage{pgfplots}

      usepgfplotslibrary{fillbetween}

      usepackage{tikz}
      usetikzlibrary{automata}
      usetikzlibrary{positioning} % ...positioning nodes
      usetikzlibrary{arrows} % ...customizing arrows
      tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
      every state/.style={ % Sets the properties for each state
      semithick,
      fill=gray!10},
      initial text={}, % No label on start arrow
      double distance=4pt, % Adjust appearance of accept states
      every edge/.style={ % Sets the properties for each transition
      draw,
      ->,>=stealth', % Makes edges directed with bold arrowheads
      auto,
      semithick}}

      begin{document}

      begin{figure}[htb]
      centering
      begin{tikzpicture}
      node[state] (s1) {State 1};
      node[state, below right of=s1] (s2) {State 2};
      node[state, below left of=s1] (s3) {State 3};

      draw (s1) edge[loop above] node {} (s1);
      draw (s1) edge[bend left] node {} (s2);
      draw (s1) edge[bend right] node {} (s3);

      draw (s2) edge[bend left] node {} (s1);
      draw (s2) edge[loop right] node {} (s2);
      draw (s2) edge[bend right] node {} (s3);

      draw (s3) edge[bend right] node {} (s1);
      draw (s3) edge[bend right] node {} (s2);
      draw (s3) edge[loop left] node {} (s3);

      end{tikzpicture}
      end{figure}

      end{document}









      share|improve this question














      I am trying to draw a Markov chain using tikz. The diagram is in the correct setup except the arrow going from State 2 and 3 overlaps two other arrows. I tried repositioning the states using node distance but that did not seem to work. How can I force the arrows not to overlap?
      Markov Chain



      %latex
      documentclass[reqno]{amsart}
      usepackage{amsmath}
      usepackage{amssymb}
      usepackage{hyperref}
      usepackage{pgfplots}

      usepgfplotslibrary{fillbetween}

      usepackage{tikz}
      usetikzlibrary{automata}
      usetikzlibrary{positioning} % ...positioning nodes
      usetikzlibrary{arrows} % ...customizing arrows
      tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
      every state/.style={ % Sets the properties for each state
      semithick,
      fill=gray!10},
      initial text={}, % No label on start arrow
      double distance=4pt, % Adjust appearance of accept states
      every edge/.style={ % Sets the properties for each transition
      draw,
      ->,>=stealth', % Makes edges directed with bold arrowheads
      auto,
      semithick}}

      begin{document}

      begin{figure}[htb]
      centering
      begin{tikzpicture}
      node[state] (s1) {State 1};
      node[state, below right of=s1] (s2) {State 2};
      node[state, below left of=s1] (s3) {State 3};

      draw (s1) edge[loop above] node {} (s1);
      draw (s1) edge[bend left] node {} (s2);
      draw (s1) edge[bend right] node {} (s3);

      draw (s2) edge[bend left] node {} (s1);
      draw (s2) edge[loop right] node {} (s2);
      draw (s2) edge[bend right] node {} (s3);

      draw (s3) edge[bend right] node {} (s1);
      draw (s3) edge[bend right] node {} (s2);
      draw (s3) edge[loop left] node {} (s3);

      end{tikzpicture}
      end{figure}

      end{document}






      tikz-pgf diagrams






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 3 hours ago









      cpagecpage

      15515




      15515






















          2 Answers
          2






          active

          oldest

          votes


















          3














          bend left and bend right come with parameters, the bending angles. Adjusting them allows you to avoid the intersections. (BTW, I also removed packages that were not used. Note also that the arrows library got superseded by arrows.meta but I kept arrows for now.)



          documentclass[reqno]{amsart}
          usepackage{tikz}
          usetikzlibrary{automata}
          usetikzlibrary{positioning} % ...positioning nodes
          usetikzlibrary{arrows} % ...customizing arrows
          tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
          every state/.style={ % Sets the properties for each state
          semithick,
          fill=gray!10},
          initial text={}, % No label on start arrow
          double distance=4pt, % Adjust appearance of accept states
          every edge/.style={ % Sets the properties for each transition
          draw,
          ->,>=stealth', % Makes edges directed with bold arrowheads
          auto,
          semithick}}

          begin{document}

          begin{figure}[htb]
          centering
          begin{tikzpicture}
          node[state] (s1) {State 1};
          node[state, below right of=s1] (s2) {State 2};
          node[state, below left of=s1] (s3) {State 3};

          draw (s1) edge[loop above] (s1);
          draw (s1) edge[bend left] (s2);
          draw (s1) edge[bend right] (s3);

          draw (s2) edge[bend left=12] (s1);
          draw (s2) edge[loop right] (s2);
          draw (s2) edge[bend right=12] (s3);

          draw (s3) edge[bend right=12] (s1);
          draw (s3) edge[bend right] (s2);
          draw (s3) edge[loop left] (s3);

          end{tikzpicture}
          end{figure}
          end{document}


          enter image description here






          share|improve this answer































            0














            you can reduce default value of bend angle. just add bend angle=15 to your tikzset (similarly @marmoth change it locally for two arrows bend).



            off topic:




            • for labeling of arrows is handy to use quotes library and than wrote it as for example ... (s1) edge["label",bend left] (s2).


            • package hyperref had to be load last in preamble (except in rare exception)



              documentclass[reqno]{amsart}
              usepackage{amsmath, amssymb}

              usepackage{pgfplots} % it load tikz too
              pgfplotsset{compat=1.16}
              usetikzlibrary{automata,
              arrows.meta, % ...customizing arrows
              positioning, % ...positioning nodes
              quotes} % For edge labels
              usepgfplotslibrary{fillbetween}
              tikzset{node distance=4.5cm, % Minimum distance between nodes. Change if necessary.
              every state/.style={ % Sets the properties for each state
              semithick,
              fill=gray!10},
              initial text={}, % No label on start arrow
              double distance=4pt, % Adjust appearance of accept states
              every edge/.style={ % Sets the properties for each transition
              draw,
              semithick,
              -Stealth, % Makes edges directed with bold arrowheads
              auto},
              bend angle=15 % Reduce default bend angle
              }

              usepackage{hyperref} % had to be last in preamble

              begin{document}
              begin{figure}[htb]
              centering
              begin{tikzpicture}[]
              node[state] (s1) {State 1};
              node[state, below right of=s1] (s2) {State 2};
              node[state, below left of=s1] (s3) {State 3};

              draw (s1) edge[loop above] (s1)
              (s1) edge[bend left] (s2)
              (s1) edge[bend right] (s3)
              %
              (s2) edge[bend left] (s1)
              (s2) edge[loop right] (s2)
              (s2) edge[bend right] (s3)
              %
              (s3) edge[bend right] (s1)
              (s3) edge[bend right] (s2)
              (s3) edge[loop left] (s3);
              end{tikzpicture}
              end{figure}
              end{document}



            enter image description here






            share|improve this answer
























              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%2f482673%2farrows-in-tikz-markov-chain-diagram-overlap%23new-answer', 'question_page');
              }
              );

              Post as a guest















              Required, but never shown

























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              3














              bend left and bend right come with parameters, the bending angles. Adjusting them allows you to avoid the intersections. (BTW, I also removed packages that were not used. Note also that the arrows library got superseded by arrows.meta but I kept arrows for now.)



              documentclass[reqno]{amsart}
              usepackage{tikz}
              usetikzlibrary{automata}
              usetikzlibrary{positioning} % ...positioning nodes
              usetikzlibrary{arrows} % ...customizing arrows
              tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
              every state/.style={ % Sets the properties for each state
              semithick,
              fill=gray!10},
              initial text={}, % No label on start arrow
              double distance=4pt, % Adjust appearance of accept states
              every edge/.style={ % Sets the properties for each transition
              draw,
              ->,>=stealth', % Makes edges directed with bold arrowheads
              auto,
              semithick}}

              begin{document}

              begin{figure}[htb]
              centering
              begin{tikzpicture}
              node[state] (s1) {State 1};
              node[state, below right of=s1] (s2) {State 2};
              node[state, below left of=s1] (s3) {State 3};

              draw (s1) edge[loop above] (s1);
              draw (s1) edge[bend left] (s2);
              draw (s1) edge[bend right] (s3);

              draw (s2) edge[bend left=12] (s1);
              draw (s2) edge[loop right] (s2);
              draw (s2) edge[bend right=12] (s3);

              draw (s3) edge[bend right=12] (s1);
              draw (s3) edge[bend right] (s2);
              draw (s3) edge[loop left] (s3);

              end{tikzpicture}
              end{figure}
              end{document}


              enter image description here






              share|improve this answer




























                3














                bend left and bend right come with parameters, the bending angles. Adjusting them allows you to avoid the intersections. (BTW, I also removed packages that were not used. Note also that the arrows library got superseded by arrows.meta but I kept arrows for now.)



                documentclass[reqno]{amsart}
                usepackage{tikz}
                usetikzlibrary{automata}
                usetikzlibrary{positioning} % ...positioning nodes
                usetikzlibrary{arrows} % ...customizing arrows
                tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
                every state/.style={ % Sets the properties for each state
                semithick,
                fill=gray!10},
                initial text={}, % No label on start arrow
                double distance=4pt, % Adjust appearance of accept states
                every edge/.style={ % Sets the properties for each transition
                draw,
                ->,>=stealth', % Makes edges directed with bold arrowheads
                auto,
                semithick}}

                begin{document}

                begin{figure}[htb]
                centering
                begin{tikzpicture}
                node[state] (s1) {State 1};
                node[state, below right of=s1] (s2) {State 2};
                node[state, below left of=s1] (s3) {State 3};

                draw (s1) edge[loop above] (s1);
                draw (s1) edge[bend left] (s2);
                draw (s1) edge[bend right] (s3);

                draw (s2) edge[bend left=12] (s1);
                draw (s2) edge[loop right] (s2);
                draw (s2) edge[bend right=12] (s3);

                draw (s3) edge[bend right=12] (s1);
                draw (s3) edge[bend right] (s2);
                draw (s3) edge[loop left] (s3);

                end{tikzpicture}
                end{figure}
                end{document}


                enter image description here






                share|improve this answer


























                  3












                  3








                  3







                  bend left and bend right come with parameters, the bending angles. Adjusting them allows you to avoid the intersections. (BTW, I also removed packages that were not used. Note also that the arrows library got superseded by arrows.meta but I kept arrows for now.)



                  documentclass[reqno]{amsart}
                  usepackage{tikz}
                  usetikzlibrary{automata}
                  usetikzlibrary{positioning} % ...positioning nodes
                  usetikzlibrary{arrows} % ...customizing arrows
                  tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
                  every state/.style={ % Sets the properties for each state
                  semithick,
                  fill=gray!10},
                  initial text={}, % No label on start arrow
                  double distance=4pt, % Adjust appearance of accept states
                  every edge/.style={ % Sets the properties for each transition
                  draw,
                  ->,>=stealth', % Makes edges directed with bold arrowheads
                  auto,
                  semithick}}

                  begin{document}

                  begin{figure}[htb]
                  centering
                  begin{tikzpicture}
                  node[state] (s1) {State 1};
                  node[state, below right of=s1] (s2) {State 2};
                  node[state, below left of=s1] (s3) {State 3};

                  draw (s1) edge[loop above] (s1);
                  draw (s1) edge[bend left] (s2);
                  draw (s1) edge[bend right] (s3);

                  draw (s2) edge[bend left=12] (s1);
                  draw (s2) edge[loop right] (s2);
                  draw (s2) edge[bend right=12] (s3);

                  draw (s3) edge[bend right=12] (s1);
                  draw (s3) edge[bend right] (s2);
                  draw (s3) edge[loop left] (s3);

                  end{tikzpicture}
                  end{figure}
                  end{document}


                  enter image description here






                  share|improve this answer













                  bend left and bend right come with parameters, the bending angles. Adjusting them allows you to avoid the intersections. (BTW, I also removed packages that were not used. Note also that the arrows library got superseded by arrows.meta but I kept arrows for now.)



                  documentclass[reqno]{amsart}
                  usepackage{tikz}
                  usetikzlibrary{automata}
                  usetikzlibrary{positioning} % ...positioning nodes
                  usetikzlibrary{arrows} % ...customizing arrows
                  tikzset{node distance=4.5cm, % Minimum distance between two nodes. Change if necessary.
                  every state/.style={ % Sets the properties for each state
                  semithick,
                  fill=gray!10},
                  initial text={}, % No label on start arrow
                  double distance=4pt, % Adjust appearance of accept states
                  every edge/.style={ % Sets the properties for each transition
                  draw,
                  ->,>=stealth', % Makes edges directed with bold arrowheads
                  auto,
                  semithick}}

                  begin{document}

                  begin{figure}[htb]
                  centering
                  begin{tikzpicture}
                  node[state] (s1) {State 1};
                  node[state, below right of=s1] (s2) {State 2};
                  node[state, below left of=s1] (s3) {State 3};

                  draw (s1) edge[loop above] (s1);
                  draw (s1) edge[bend left] (s2);
                  draw (s1) edge[bend right] (s3);

                  draw (s2) edge[bend left=12] (s1);
                  draw (s2) edge[loop right] (s2);
                  draw (s2) edge[bend right=12] (s3);

                  draw (s3) edge[bend right=12] (s1);
                  draw (s3) edge[bend right] (s2);
                  draw (s3) edge[loop left] (s3);

                  end{tikzpicture}
                  end{figure}
                  end{document}


                  enter image description here







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 2 hours ago









                  marmotmarmot

                  113k5145275




                  113k5145275























                      0














                      you can reduce default value of bend angle. just add bend angle=15 to your tikzset (similarly @marmoth change it locally for two arrows bend).



                      off topic:




                      • for labeling of arrows is handy to use quotes library and than wrote it as for example ... (s1) edge["label",bend left] (s2).


                      • package hyperref had to be load last in preamble (except in rare exception)



                        documentclass[reqno]{amsart}
                        usepackage{amsmath, amssymb}

                        usepackage{pgfplots} % it load tikz too
                        pgfplotsset{compat=1.16}
                        usetikzlibrary{automata,
                        arrows.meta, % ...customizing arrows
                        positioning, % ...positioning nodes
                        quotes} % For edge labels
                        usepgfplotslibrary{fillbetween}
                        tikzset{node distance=4.5cm, % Minimum distance between nodes. Change if necessary.
                        every state/.style={ % Sets the properties for each state
                        semithick,
                        fill=gray!10},
                        initial text={}, % No label on start arrow
                        double distance=4pt, % Adjust appearance of accept states
                        every edge/.style={ % Sets the properties for each transition
                        draw,
                        semithick,
                        -Stealth, % Makes edges directed with bold arrowheads
                        auto},
                        bend angle=15 % Reduce default bend angle
                        }

                        usepackage{hyperref} % had to be last in preamble

                        begin{document}
                        begin{figure}[htb]
                        centering
                        begin{tikzpicture}[]
                        node[state] (s1) {State 1};
                        node[state, below right of=s1] (s2) {State 2};
                        node[state, below left of=s1] (s3) {State 3};

                        draw (s1) edge[loop above] (s1)
                        (s1) edge[bend left] (s2)
                        (s1) edge[bend right] (s3)
                        %
                        (s2) edge[bend left] (s1)
                        (s2) edge[loop right] (s2)
                        (s2) edge[bend right] (s3)
                        %
                        (s3) edge[bend right] (s1)
                        (s3) edge[bend right] (s2)
                        (s3) edge[loop left] (s3);
                        end{tikzpicture}
                        end{figure}
                        end{document}



                      enter image description here






                      share|improve this answer




























                        0














                        you can reduce default value of bend angle. just add bend angle=15 to your tikzset (similarly @marmoth change it locally for two arrows bend).



                        off topic:




                        • for labeling of arrows is handy to use quotes library and than wrote it as for example ... (s1) edge["label",bend left] (s2).


                        • package hyperref had to be load last in preamble (except in rare exception)



                          documentclass[reqno]{amsart}
                          usepackage{amsmath, amssymb}

                          usepackage{pgfplots} % it load tikz too
                          pgfplotsset{compat=1.16}
                          usetikzlibrary{automata,
                          arrows.meta, % ...customizing arrows
                          positioning, % ...positioning nodes
                          quotes} % For edge labels
                          usepgfplotslibrary{fillbetween}
                          tikzset{node distance=4.5cm, % Minimum distance between nodes. Change if necessary.
                          every state/.style={ % Sets the properties for each state
                          semithick,
                          fill=gray!10},
                          initial text={}, % No label on start arrow
                          double distance=4pt, % Adjust appearance of accept states
                          every edge/.style={ % Sets the properties for each transition
                          draw,
                          semithick,
                          -Stealth, % Makes edges directed with bold arrowheads
                          auto},
                          bend angle=15 % Reduce default bend angle
                          }

                          usepackage{hyperref} % had to be last in preamble

                          begin{document}
                          begin{figure}[htb]
                          centering
                          begin{tikzpicture}[]
                          node[state] (s1) {State 1};
                          node[state, below right of=s1] (s2) {State 2};
                          node[state, below left of=s1] (s3) {State 3};

                          draw (s1) edge[loop above] (s1)
                          (s1) edge[bend left] (s2)
                          (s1) edge[bend right] (s3)
                          %
                          (s2) edge[bend left] (s1)
                          (s2) edge[loop right] (s2)
                          (s2) edge[bend right] (s3)
                          %
                          (s3) edge[bend right] (s1)
                          (s3) edge[bend right] (s2)
                          (s3) edge[loop left] (s3);
                          end{tikzpicture}
                          end{figure}
                          end{document}



                        enter image description here






                        share|improve this answer


























                          0












                          0








                          0







                          you can reduce default value of bend angle. just add bend angle=15 to your tikzset (similarly @marmoth change it locally for two arrows bend).



                          off topic:




                          • for labeling of arrows is handy to use quotes library and than wrote it as for example ... (s1) edge["label",bend left] (s2).


                          • package hyperref had to be load last in preamble (except in rare exception)



                            documentclass[reqno]{amsart}
                            usepackage{amsmath, amssymb}

                            usepackage{pgfplots} % it load tikz too
                            pgfplotsset{compat=1.16}
                            usetikzlibrary{automata,
                            arrows.meta, % ...customizing arrows
                            positioning, % ...positioning nodes
                            quotes} % For edge labels
                            usepgfplotslibrary{fillbetween}
                            tikzset{node distance=4.5cm, % Minimum distance between nodes. Change if necessary.
                            every state/.style={ % Sets the properties for each state
                            semithick,
                            fill=gray!10},
                            initial text={}, % No label on start arrow
                            double distance=4pt, % Adjust appearance of accept states
                            every edge/.style={ % Sets the properties for each transition
                            draw,
                            semithick,
                            -Stealth, % Makes edges directed with bold arrowheads
                            auto},
                            bend angle=15 % Reduce default bend angle
                            }

                            usepackage{hyperref} % had to be last in preamble

                            begin{document}
                            begin{figure}[htb]
                            centering
                            begin{tikzpicture}[]
                            node[state] (s1) {State 1};
                            node[state, below right of=s1] (s2) {State 2};
                            node[state, below left of=s1] (s3) {State 3};

                            draw (s1) edge[loop above] (s1)
                            (s1) edge[bend left] (s2)
                            (s1) edge[bend right] (s3)
                            %
                            (s2) edge[bend left] (s1)
                            (s2) edge[loop right] (s2)
                            (s2) edge[bend right] (s3)
                            %
                            (s3) edge[bend right] (s1)
                            (s3) edge[bend right] (s2)
                            (s3) edge[loop left] (s3);
                            end{tikzpicture}
                            end{figure}
                            end{document}



                          enter image description here






                          share|improve this answer













                          you can reduce default value of bend angle. just add bend angle=15 to your tikzset (similarly @marmoth change it locally for two arrows bend).



                          off topic:




                          • for labeling of arrows is handy to use quotes library and than wrote it as for example ... (s1) edge["label",bend left] (s2).


                          • package hyperref had to be load last in preamble (except in rare exception)



                            documentclass[reqno]{amsart}
                            usepackage{amsmath, amssymb}

                            usepackage{pgfplots} % it load tikz too
                            pgfplotsset{compat=1.16}
                            usetikzlibrary{automata,
                            arrows.meta, % ...customizing arrows
                            positioning, % ...positioning nodes
                            quotes} % For edge labels
                            usepgfplotslibrary{fillbetween}
                            tikzset{node distance=4.5cm, % Minimum distance between nodes. Change if necessary.
                            every state/.style={ % Sets the properties for each state
                            semithick,
                            fill=gray!10},
                            initial text={}, % No label on start arrow
                            double distance=4pt, % Adjust appearance of accept states
                            every edge/.style={ % Sets the properties for each transition
                            draw,
                            semithick,
                            -Stealth, % Makes edges directed with bold arrowheads
                            auto},
                            bend angle=15 % Reduce default bend angle
                            }

                            usepackage{hyperref} % had to be last in preamble

                            begin{document}
                            begin{figure}[htb]
                            centering
                            begin{tikzpicture}[]
                            node[state] (s1) {State 1};
                            node[state, below right of=s1] (s2) {State 2};
                            node[state, below left of=s1] (s3) {State 3};

                            draw (s1) edge[loop above] (s1)
                            (s1) edge[bend left] (s2)
                            (s1) edge[bend right] (s3)
                            %
                            (s2) edge[bend left] (s1)
                            (s2) edge[loop right] (s2)
                            (s2) edge[bend right] (s3)
                            %
                            (s3) edge[bend right] (s1)
                            (s3) edge[bend right] (s2)
                            (s3) edge[loop left] (s3);
                            end{tikzpicture}
                            end{figure}
                            end{document}



                          enter image description here







                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered 1 hour ago









                          ZarkoZarko

                          128k868169




                          128k868169






























                              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%2f482673%2farrows-in-tikz-markov-chain-diagram-overlap%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

                              Щит и меч (фильм) Содержание Названия серий | Сюжет |...

                              Венесуэла на летних Олимпийских играх 2000 Содержание Состав...

                              Meter-Bus Содержание Параметры шины | Стандартизация |...