Mapping arrows in commutative diagrams












4















In making commutative diagrams in tikz-cd I've been wanting to add in 'mapping' arrows that describe what particular elements map to, parallel to the main diagram arrows.



I've been doing it in the following way, which seems fairly clumsy since the 'map' arrows are separated from the main diagram at a large distance, when ideally they would be close by and parallel to the corresponding maps. What would be a better way to do this?



documentclass{article}
usepackage{tikz-cd}

begin{document}
begin{tikzcd}
a arrow[r, maps to] & phi(a) & \
Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(k) \
a arrow[dr, maps to] & Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \
& frac{a}{1} &
end{tikzcd}
end{document}









share|improve this question









New contributor




Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • (1) welcome, (2) as always on this site please post a full minimal example instead of a sniplet. Then it is a lot easier to help, especially when we don't have to guess.

    – daleif
    10 hours ago
















4















In making commutative diagrams in tikz-cd I've been wanting to add in 'mapping' arrows that describe what particular elements map to, parallel to the main diagram arrows.



I've been doing it in the following way, which seems fairly clumsy since the 'map' arrows are separated from the main diagram at a large distance, when ideally they would be close by and parallel to the corresponding maps. What would be a better way to do this?



documentclass{article}
usepackage{tikz-cd}

begin{document}
begin{tikzcd}
a arrow[r, maps to] & phi(a) & \
Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(k) \
a arrow[dr, maps to] & Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \
& frac{a}{1} &
end{tikzcd}
end{document}









share|improve this question









New contributor




Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • (1) welcome, (2) as always on this site please post a full minimal example instead of a sniplet. Then it is a lot easier to help, especially when we don't have to guess.

    – daleif
    10 hours ago














4












4








4








In making commutative diagrams in tikz-cd I've been wanting to add in 'mapping' arrows that describe what particular elements map to, parallel to the main diagram arrows.



I've been doing it in the following way, which seems fairly clumsy since the 'map' arrows are separated from the main diagram at a large distance, when ideally they would be close by and parallel to the corresponding maps. What would be a better way to do this?



documentclass{article}
usepackage{tikz-cd}

begin{document}
begin{tikzcd}
a arrow[r, maps to] & phi(a) & \
Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(k) \
a arrow[dr, maps to] & Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \
& frac{a}{1} &
end{tikzcd}
end{document}









share|improve this question









New contributor




Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.












In making commutative diagrams in tikz-cd I've been wanting to add in 'mapping' arrows that describe what particular elements map to, parallel to the main diagram arrows.



I've been doing it in the following way, which seems fairly clumsy since the 'map' arrows are separated from the main diagram at a large distance, when ideally they would be close by and parallel to the corresponding maps. What would be a better way to do this?



documentclass{article}
usepackage{tikz-cd}

begin{document}
begin{tikzcd}
a arrow[r, maps to] & phi(a) & \
Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(k) \
a arrow[dr, maps to] & Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \
& frac{a}{1} &
end{tikzcd}
end{document}






tikz-cd commutative-diagrams






share|improve this question









New contributor




Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited 10 hours ago







Merk Zockerborg













New contributor




Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 10 hours ago









Merk ZockerborgMerk Zockerborg

214




214




New contributor




Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






Merk Zockerborg is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.













  • (1) welcome, (2) as always on this site please post a full minimal example instead of a sniplet. Then it is a lot easier to help, especially when we don't have to guess.

    – daleif
    10 hours ago



















  • (1) welcome, (2) as always on this site please post a full minimal example instead of a sniplet. Then it is a lot easier to help, especially when we don't have to guess.

    – daleif
    10 hours ago

















(1) welcome, (2) as always on this site please post a full minimal example instead of a sniplet. Then it is a lot easier to help, especially when we don't have to guess.

– daleif
10 hours ago





(1) welcome, (2) as always on this site please post a full minimal example instead of a sniplet. Then it is a lot easier to help, especially when we don't have to guess.

– daleif
10 hours ago










2 Answers
2






active

oldest

votes


















3














You can reduce the spacing, but in my opinion it's clearer and more elegant if you make two diagrams.



documentclass{article}
usepackage{amsmath}
usepackage{tikz-cd}

begin{document}

[
begin{tikzcd}
a arrow[r, maps to] & phi(a) &[-2em] \[-4ex]
Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(a) \
& Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \[-10ex]
a arrow[dr, maps to] \
& frac{a}{1} &
end{tikzcd}
]

[
begin{tikzcd}
Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K &
a arrow[r, maps to,"phi"] arrow[dr, maps to,"iota"] & phi(a) \
& Q(R) arrow[u, dotted, "exists ! Phi"'] &
& frac{a}{1} arrow[u, maps to,"Phi"']
end{tikzcd}
]

end{document}


enter image description here






share|improve this answer
























  • I might try playing around with the spacing, thanks

    – Merk Zockerborg
    10 hours ago



















3














This is my proposal



documentclass[tikz]{standalone}
usetikzlibrary{arrows,cd,positioning}
tikzset{|/.tip={Bar[width=.8ex,round]}} %https://tex.stackexchange.com/a/252544/156344
begin{document}
begin{tikzpicture}
node (r) at (0,0) {$R$};
node (k) at (3,0) {$K$};
node (q) at (3,-3) {$Q(R)$};
node (ra) at (0,.8) {$a$};
node (ka) at (3,.8) {$phi(a)$};
node (kb) at (4,0) {$phi(k)$};
node (qb) at (4,-3) {$frac a1$};
path (q) node[below left=1em and 1em] (qc) {$frac a1$};
path (r) node[below left=1em and 1em] (rc) {$a$};
draw[right hook->] (r)--(k) node[midway,above] {$scriptstylephi$};
draw[right hook->] (r)--(q) node[midway,above right] {$scriptstyleiota$};
draw[dotted,->] (q)--(k) node[midway,right] {$scriptstyleexists!Phi$};
draw[|->] (ra) edge (ka) (qb) edge (kb) (rc) edge (qc);
end{tikzpicture}
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
    });


    }
    });






    Merk Zockerborg is a new contributor. Be nice, and check out our Code of Conduct.










    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f483801%2fmapping-arrows-in-commutative-diagrams%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














    You can reduce the spacing, but in my opinion it's clearer and more elegant if you make two diagrams.



    documentclass{article}
    usepackage{amsmath}
    usepackage{tikz-cd}

    begin{document}

    [
    begin{tikzcd}
    a arrow[r, maps to] & phi(a) &[-2em] \[-4ex]
    Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(a) \
    & Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \[-10ex]
    a arrow[dr, maps to] \
    & frac{a}{1} &
    end{tikzcd}
    ]

    [
    begin{tikzcd}
    Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K &
    a arrow[r, maps to,"phi"] arrow[dr, maps to,"iota"] & phi(a) \
    & Q(R) arrow[u, dotted, "exists ! Phi"'] &
    & frac{a}{1} arrow[u, maps to,"Phi"']
    end{tikzcd}
    ]

    end{document}


    enter image description here






    share|improve this answer
























    • I might try playing around with the spacing, thanks

      – Merk Zockerborg
      10 hours ago
















    3














    You can reduce the spacing, but in my opinion it's clearer and more elegant if you make two diagrams.



    documentclass{article}
    usepackage{amsmath}
    usepackage{tikz-cd}

    begin{document}

    [
    begin{tikzcd}
    a arrow[r, maps to] & phi(a) &[-2em] \[-4ex]
    Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(a) \
    & Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \[-10ex]
    a arrow[dr, maps to] \
    & frac{a}{1} &
    end{tikzcd}
    ]

    [
    begin{tikzcd}
    Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K &
    a arrow[r, maps to,"phi"] arrow[dr, maps to,"iota"] & phi(a) \
    & Q(R) arrow[u, dotted, "exists ! Phi"'] &
    & frac{a}{1} arrow[u, maps to,"Phi"']
    end{tikzcd}
    ]

    end{document}


    enter image description here






    share|improve this answer
























    • I might try playing around with the spacing, thanks

      – Merk Zockerborg
      10 hours ago














    3












    3








    3







    You can reduce the spacing, but in my opinion it's clearer and more elegant if you make two diagrams.



    documentclass{article}
    usepackage{amsmath}
    usepackage{tikz-cd}

    begin{document}

    [
    begin{tikzcd}
    a arrow[r, maps to] & phi(a) &[-2em] \[-4ex]
    Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(a) \
    & Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \[-10ex]
    a arrow[dr, maps to] \
    & frac{a}{1} &
    end{tikzcd}
    ]

    [
    begin{tikzcd}
    Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K &
    a arrow[r, maps to,"phi"] arrow[dr, maps to,"iota"] & phi(a) \
    & Q(R) arrow[u, dotted, "exists ! Phi"'] &
    & frac{a}{1} arrow[u, maps to,"Phi"']
    end{tikzcd}
    ]

    end{document}


    enter image description here






    share|improve this answer













    You can reduce the spacing, but in my opinion it's clearer and more elegant if you make two diagrams.



    documentclass{article}
    usepackage{amsmath}
    usepackage{tikz-cd}

    begin{document}

    [
    begin{tikzcd}
    a arrow[r, maps to] & phi(a) &[-2em] \[-4ex]
    Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K & phi(a) \
    & Q(R) arrow[u, dotted, "exists ! Phi"'] & frac{a}{1} arrow[u, maps to] \[-10ex]
    a arrow[dr, maps to] \
    & frac{a}{1} &
    end{tikzcd}
    ]

    [
    begin{tikzcd}
    Rarrow[r, hook, "phi"] arrow[dr, hook, "iota"] & K &
    a arrow[r, maps to,"phi"] arrow[dr, maps to,"iota"] & phi(a) \
    & Q(R) arrow[u, dotted, "exists ! Phi"'] &
    & frac{a}{1} arrow[u, maps to,"Phi"']
    end{tikzcd}
    ]

    end{document}


    enter image description here







    share|improve this answer












    share|improve this answer



    share|improve this answer










    answered 10 hours ago









    egregegreg

    732k8919303254




    732k8919303254













    • I might try playing around with the spacing, thanks

      – Merk Zockerborg
      10 hours ago



















    • I might try playing around with the spacing, thanks

      – Merk Zockerborg
      10 hours ago

















    I might try playing around with the spacing, thanks

    – Merk Zockerborg
    10 hours ago





    I might try playing around with the spacing, thanks

    – Merk Zockerborg
    10 hours ago











    3














    This is my proposal



    documentclass[tikz]{standalone}
    usetikzlibrary{arrows,cd,positioning}
    tikzset{|/.tip={Bar[width=.8ex,round]}} %https://tex.stackexchange.com/a/252544/156344
    begin{document}
    begin{tikzpicture}
    node (r) at (0,0) {$R$};
    node (k) at (3,0) {$K$};
    node (q) at (3,-3) {$Q(R)$};
    node (ra) at (0,.8) {$a$};
    node (ka) at (3,.8) {$phi(a)$};
    node (kb) at (4,0) {$phi(k)$};
    node (qb) at (4,-3) {$frac a1$};
    path (q) node[below left=1em and 1em] (qc) {$frac a1$};
    path (r) node[below left=1em and 1em] (rc) {$a$};
    draw[right hook->] (r)--(k) node[midway,above] {$scriptstylephi$};
    draw[right hook->] (r)--(q) node[midway,above right] {$scriptstyleiota$};
    draw[dotted,->] (q)--(k) node[midway,right] {$scriptstyleexists!Phi$};
    draw[|->] (ra) edge (ka) (qb) edge (kb) (rc) edge (qc);
    end{tikzpicture}
    end{document}


    enter image description here






    share|improve this answer




























      3














      This is my proposal



      documentclass[tikz]{standalone}
      usetikzlibrary{arrows,cd,positioning}
      tikzset{|/.tip={Bar[width=.8ex,round]}} %https://tex.stackexchange.com/a/252544/156344
      begin{document}
      begin{tikzpicture}
      node (r) at (0,0) {$R$};
      node (k) at (3,0) {$K$};
      node (q) at (3,-3) {$Q(R)$};
      node (ra) at (0,.8) {$a$};
      node (ka) at (3,.8) {$phi(a)$};
      node (kb) at (4,0) {$phi(k)$};
      node (qb) at (4,-3) {$frac a1$};
      path (q) node[below left=1em and 1em] (qc) {$frac a1$};
      path (r) node[below left=1em and 1em] (rc) {$a$};
      draw[right hook->] (r)--(k) node[midway,above] {$scriptstylephi$};
      draw[right hook->] (r)--(q) node[midway,above right] {$scriptstyleiota$};
      draw[dotted,->] (q)--(k) node[midway,right] {$scriptstyleexists!Phi$};
      draw[|->] (ra) edge (ka) (qb) edge (kb) (rc) edge (qc);
      end{tikzpicture}
      end{document}


      enter image description here






      share|improve this answer


























        3












        3








        3







        This is my proposal



        documentclass[tikz]{standalone}
        usetikzlibrary{arrows,cd,positioning}
        tikzset{|/.tip={Bar[width=.8ex,round]}} %https://tex.stackexchange.com/a/252544/156344
        begin{document}
        begin{tikzpicture}
        node (r) at (0,0) {$R$};
        node (k) at (3,0) {$K$};
        node (q) at (3,-3) {$Q(R)$};
        node (ra) at (0,.8) {$a$};
        node (ka) at (3,.8) {$phi(a)$};
        node (kb) at (4,0) {$phi(k)$};
        node (qb) at (4,-3) {$frac a1$};
        path (q) node[below left=1em and 1em] (qc) {$frac a1$};
        path (r) node[below left=1em and 1em] (rc) {$a$};
        draw[right hook->] (r)--(k) node[midway,above] {$scriptstylephi$};
        draw[right hook->] (r)--(q) node[midway,above right] {$scriptstyleiota$};
        draw[dotted,->] (q)--(k) node[midway,right] {$scriptstyleexists!Phi$};
        draw[|->] (ra) edge (ka) (qb) edge (kb) (rc) edge (qc);
        end{tikzpicture}
        end{document}


        enter image description here






        share|improve this answer













        This is my proposal



        documentclass[tikz]{standalone}
        usetikzlibrary{arrows,cd,positioning}
        tikzset{|/.tip={Bar[width=.8ex,round]}} %https://tex.stackexchange.com/a/252544/156344
        begin{document}
        begin{tikzpicture}
        node (r) at (0,0) {$R$};
        node (k) at (3,0) {$K$};
        node (q) at (3,-3) {$Q(R)$};
        node (ra) at (0,.8) {$a$};
        node (ka) at (3,.8) {$phi(a)$};
        node (kb) at (4,0) {$phi(k)$};
        node (qb) at (4,-3) {$frac a1$};
        path (q) node[below left=1em and 1em] (qc) {$frac a1$};
        path (r) node[below left=1em and 1em] (rc) {$a$};
        draw[right hook->] (r)--(k) node[midway,above] {$scriptstylephi$};
        draw[right hook->] (r)--(q) node[midway,above right] {$scriptstyleiota$};
        draw[dotted,->] (q)--(k) node[midway,right] {$scriptstyleexists!Phi$};
        draw[|->] (ra) edge (ka) (qb) edge (kb) (rc) edge (qc);
        end{tikzpicture}
        end{document}


        enter image description here







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered 9 hours ago









        JouleVJouleV

        11.7k22561




        11.7k22561






















            Merk Zockerborg is a new contributor. Be nice, and check out our Code of Conduct.










            draft saved

            draft discarded


















            Merk Zockerborg is a new contributor. Be nice, and check out our Code of Conduct.













            Merk Zockerborg is a new contributor. Be nice, and check out our Code of Conduct.












            Merk Zockerborg is a new contributor. Be nice, and check out our Code of Conduct.
















            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%2f483801%2fmapping-arrows-in-commutative-diagrams%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

            Bundesstraße 106

            Verónica Boquete

            Ida-Boy-Ed-Garten