pgfplots: “axis on top” will cross out ybar value nodes?Use BPchem Numbering As Labels in a...

What typically incentivizes a professor to change jobs to a lower ranking university?

strToHex ( string to its hex representation as string)

Problem of parity - Can we draw a closed path made up of 20 line segments...

In Japanese, what’s the difference between “Tonari ni” (となりに) and “Tsugi” (つぎ)? When would you use one over the other?

What would happen to a modern skyscraper if it rains micro blackholes?

Languages that we cannot (dis)prove to be Context-Free

Fencing style for blades that can attack from a distance

Can I ask the recruiters in my resume to put the reason why I am rejected?

A newer friend of my brother's gave him a load of baseball cards that are supposedly extremely valuable. Is this a scam?

What defenses are there against being summoned by the Gate spell?

What's the output of a record cartridge playing an out-of-speed record

How do I create uniquely male characters?

Can I make popcorn with any corn?

Why are electrically insulating heatsinks so rare? Is it just cost?

Modeling an IPv4 Address

Email Account under attack (really) - anything I can do?

Can a Warlock become Neutral Good?

How is it possible to have an ability score that is less than 3?

How is the claim "I am in New York only if I am in America" the same as "If I am in New York, then I am in America?

Did Shadowfax go to Valinor?

Is it possible to do 50 km distance without any previous training?

Writing rule which states that two causes for the same superpower is bad writing

The magic money tree problem

How do we improve the relationship with a client software team that performs poorly and is becoming less collaborative?



pgfplots: “axis on top” will cross out ybar value nodes?


Use BPchem Numbering As Labels in a PGFPlotGrouped bar chartpgfplots ybar glued to the y axisHow to hide empty (value 0) ybars with pgfplots?Show mark labels near marks and not centered in ybar interaval graphpgfplots: percentage in matrix plotCenter the axes in the coordinate originpgfplots: Gap Between Axis and Axis Label With Extra Tick on Top: Remove How?axis on top not respected on addplot3Is there a way to place the x axis at a specific y value in PGFPlots?













1















Assumed we have a simple ybar diagram including ymajorgrids.





Minimum Working Example (MWE):



documentclass{standalone}
usepackage{pgfplots}

begin{document}
begin{tikzpicture}
begin{axis}[
ybar = 1.5mm,
ymin = 0,
ymax = 300,
set layers = true,
axis on top = true,
symbolic x coords = {Blub, Blab, Blop},
ymajorgrids = true,
nodes near coords,
nodes near coords align = {vertical},
nodes near coords style = {text=black},
every node near coord/.append style={rotate=90, anchor=west,font=footnotesize},
]
addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
end{axis}
end{tikzpicture}
end{document}




Screenshot of the result:



Screenshot of the result





Screenshot of the issue:



Screenshot of the issue





Description of the issue:



As you can see, the command axis on top will cause a cross out of the ybar value nodes by the dominating ymajorgrid. How can I avoid the nodes to be crossed out (e.g. by putting the nodes on the very top layer)?










share|improve this question



























    1















    Assumed we have a simple ybar diagram including ymajorgrids.





    Minimum Working Example (MWE):



    documentclass{standalone}
    usepackage{pgfplots}

    begin{document}
    begin{tikzpicture}
    begin{axis}[
    ybar = 1.5mm,
    ymin = 0,
    ymax = 300,
    set layers = true,
    axis on top = true,
    symbolic x coords = {Blub, Blab, Blop},
    ymajorgrids = true,
    nodes near coords,
    nodes near coords align = {vertical},
    nodes near coords style = {text=black},
    every node near coord/.append style={rotate=90, anchor=west,font=footnotesize},
    ]
    addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
    end{axis}
    end{tikzpicture}
    end{document}




    Screenshot of the result:



    Screenshot of the result





    Screenshot of the issue:



    Screenshot of the issue





    Description of the issue:



    As you can see, the command axis on top will cause a cross out of the ybar value nodes by the dominating ymajorgrid. How can I avoid the nodes to be crossed out (e.g. by putting the nodes on the very top layer)?










    share|improve this question

























      1












      1








      1








      Assumed we have a simple ybar diagram including ymajorgrids.





      Minimum Working Example (MWE):



      documentclass{standalone}
      usepackage{pgfplots}

      begin{document}
      begin{tikzpicture}
      begin{axis}[
      ybar = 1.5mm,
      ymin = 0,
      ymax = 300,
      set layers = true,
      axis on top = true,
      symbolic x coords = {Blub, Blab, Blop},
      ymajorgrids = true,
      nodes near coords,
      nodes near coords align = {vertical},
      nodes near coords style = {text=black},
      every node near coord/.append style={rotate=90, anchor=west,font=footnotesize},
      ]
      addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
      end{axis}
      end{tikzpicture}
      end{document}




      Screenshot of the result:



      Screenshot of the result





      Screenshot of the issue:



      Screenshot of the issue





      Description of the issue:



      As you can see, the command axis on top will cause a cross out of the ybar value nodes by the dominating ymajorgrid. How can I avoid the nodes to be crossed out (e.g. by putting the nodes on the very top layer)?










      share|improve this question














      Assumed we have a simple ybar diagram including ymajorgrids.





      Minimum Working Example (MWE):



      documentclass{standalone}
      usepackage{pgfplots}

      begin{document}
      begin{tikzpicture}
      begin{axis}[
      ybar = 1.5mm,
      ymin = 0,
      ymax = 300,
      set layers = true,
      axis on top = true,
      symbolic x coords = {Blub, Blab, Blop},
      ymajorgrids = true,
      nodes near coords,
      nodes near coords align = {vertical},
      nodes near coords style = {text=black},
      every node near coord/.append style={rotate=90, anchor=west,font=footnotesize},
      ]
      addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
      end{axis}
      end{tikzpicture}
      end{document}




      Screenshot of the result:



      Screenshot of the result





      Screenshot of the issue:



      Screenshot of the issue





      Description of the issue:



      As you can see, the command axis on top will cause a cross out of the ybar value nodes by the dominating ymajorgrid. How can I avoid the nodes to be crossed out (e.g. by putting the nodes on the very top layer)?







      tikz-pgf pgfplots nodes axis layers






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 10 hours ago









      DaveDave

      1,200619




      1,200619






















          1 Answer
          1






          active

          oldest

          votes


















          0














          This problem is actually slightly more involved than I thought (or I am missing something basic). axis on top is a shorthand for some specific layer configuration, the details can be found in section 4.27.2 Using Predefined Layers of the pgfplots manual. For many purposes, one only needs to change the ordering of the layers, but as far as I can see this does not help with this very problem. What can one do? I looked up what nodes near coords does (yes, sometimes a simple less /usr/local/texlive/2018/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex helps avoid the need to read the manual ;-): it sends specific instructions to scatter/@pre marker code. So all one needs to do is to append scatter/@pre marker code by pgfplotsonlayer{axis foreground}, and of course close the layer at the end by appending endpgfplotsonlayer to catter/@post marker code.



          documentclass{standalone}
          usepackage{pgfplots}
          pgfplotsset{compat=1.16}
          begin{document}
          begin{tikzpicture}
          begin{axis}[clip mode=individual,
          ybar = 1.5mm,
          ymin = 0,
          ymax = 300,
          set layers = true,
          axis on top = true,
          symbolic x coords = {Blub, Blab, Blop},
          ymajorgrids = true,
          nodes near coords,
          nodes near coords align = {vertical},
          nodes near coords style = {text=black},
          every node near coord/.append style={rotate=90, anchor=west,
          font=footnotesize},
          scatter/@pre marker code/.append code={pgfplotsonlayer{axis foreground}},
          scatter/@post marker code/.append code={endpgfplotsonlayer}
          ]
          addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
          end{axis}
          end{tikzpicture}
          end{document}


          enter image description here



          As you can see, the grid lines run in front of the bars but behind the nodes near coords.






          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%2f483585%2fpgfplots-axis-on-top-will-cross-out-ybar-value-nodes%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









            0














            This problem is actually slightly more involved than I thought (or I am missing something basic). axis on top is a shorthand for some specific layer configuration, the details can be found in section 4.27.2 Using Predefined Layers of the pgfplots manual. For many purposes, one only needs to change the ordering of the layers, but as far as I can see this does not help with this very problem. What can one do? I looked up what nodes near coords does (yes, sometimes a simple less /usr/local/texlive/2018/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex helps avoid the need to read the manual ;-): it sends specific instructions to scatter/@pre marker code. So all one needs to do is to append scatter/@pre marker code by pgfplotsonlayer{axis foreground}, and of course close the layer at the end by appending endpgfplotsonlayer to catter/@post marker code.



            documentclass{standalone}
            usepackage{pgfplots}
            pgfplotsset{compat=1.16}
            begin{document}
            begin{tikzpicture}
            begin{axis}[clip mode=individual,
            ybar = 1.5mm,
            ymin = 0,
            ymax = 300,
            set layers = true,
            axis on top = true,
            symbolic x coords = {Blub, Blab, Blop},
            ymajorgrids = true,
            nodes near coords,
            nodes near coords align = {vertical},
            nodes near coords style = {text=black},
            every node near coord/.append style={rotate=90, anchor=west,
            font=footnotesize},
            scatter/@pre marker code/.append code={pgfplotsonlayer{axis foreground}},
            scatter/@post marker code/.append code={endpgfplotsonlayer}
            ]
            addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
            end{axis}
            end{tikzpicture}
            end{document}


            enter image description here



            As you can see, the grid lines run in front of the bars but behind the nodes near coords.






            share|improve this answer




























              0














              This problem is actually slightly more involved than I thought (or I am missing something basic). axis on top is a shorthand for some specific layer configuration, the details can be found in section 4.27.2 Using Predefined Layers of the pgfplots manual. For many purposes, one only needs to change the ordering of the layers, but as far as I can see this does not help with this very problem. What can one do? I looked up what nodes near coords does (yes, sometimes a simple less /usr/local/texlive/2018/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex helps avoid the need to read the manual ;-): it sends specific instructions to scatter/@pre marker code. So all one needs to do is to append scatter/@pre marker code by pgfplotsonlayer{axis foreground}, and of course close the layer at the end by appending endpgfplotsonlayer to catter/@post marker code.



              documentclass{standalone}
              usepackage{pgfplots}
              pgfplotsset{compat=1.16}
              begin{document}
              begin{tikzpicture}
              begin{axis}[clip mode=individual,
              ybar = 1.5mm,
              ymin = 0,
              ymax = 300,
              set layers = true,
              axis on top = true,
              symbolic x coords = {Blub, Blab, Blop},
              ymajorgrids = true,
              nodes near coords,
              nodes near coords align = {vertical},
              nodes near coords style = {text=black},
              every node near coord/.append style={rotate=90, anchor=west,
              font=footnotesize},
              scatter/@pre marker code/.append code={pgfplotsonlayer{axis foreground}},
              scatter/@post marker code/.append code={endpgfplotsonlayer}
              ]
              addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
              end{axis}
              end{tikzpicture}
              end{document}


              enter image description here



              As you can see, the grid lines run in front of the bars but behind the nodes near coords.






              share|improve this answer


























                0












                0








                0







                This problem is actually slightly more involved than I thought (or I am missing something basic). axis on top is a shorthand for some specific layer configuration, the details can be found in section 4.27.2 Using Predefined Layers of the pgfplots manual. For many purposes, one only needs to change the ordering of the layers, but as far as I can see this does not help with this very problem. What can one do? I looked up what nodes near coords does (yes, sometimes a simple less /usr/local/texlive/2018/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex helps avoid the need to read the manual ;-): it sends specific instructions to scatter/@pre marker code. So all one needs to do is to append scatter/@pre marker code by pgfplotsonlayer{axis foreground}, and of course close the layer at the end by appending endpgfplotsonlayer to catter/@post marker code.



                documentclass{standalone}
                usepackage{pgfplots}
                pgfplotsset{compat=1.16}
                begin{document}
                begin{tikzpicture}
                begin{axis}[clip mode=individual,
                ybar = 1.5mm,
                ymin = 0,
                ymax = 300,
                set layers = true,
                axis on top = true,
                symbolic x coords = {Blub, Blab, Blop},
                ymajorgrids = true,
                nodes near coords,
                nodes near coords align = {vertical},
                nodes near coords style = {text=black},
                every node near coord/.append style={rotate=90, anchor=west,
                font=footnotesize},
                scatter/@pre marker code/.append code={pgfplotsonlayer{axis foreground}},
                scatter/@post marker code/.append code={endpgfplotsonlayer}
                ]
                addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
                end{axis}
                end{tikzpicture}
                end{document}


                enter image description here



                As you can see, the grid lines run in front of the bars but behind the nodes near coords.






                share|improve this answer













                This problem is actually slightly more involved than I thought (or I am missing something basic). axis on top is a shorthand for some specific layer configuration, the details can be found in section 4.27.2 Using Predefined Layers of the pgfplots manual. For many purposes, one only needs to change the ordering of the layers, but as far as I can see this does not help with this very problem. What can one do? I looked up what nodes near coords does (yes, sometimes a simple less /usr/local/texlive/2018/texmf-dist/tex/generic/pgfplots/pgfplots.code.tex helps avoid the need to read the manual ;-): it sends specific instructions to scatter/@pre marker code. So all one needs to do is to append scatter/@pre marker code by pgfplotsonlayer{axis foreground}, and of course close the layer at the end by appending endpgfplotsonlayer to catter/@post marker code.



                documentclass{standalone}
                usepackage{pgfplots}
                pgfplotsset{compat=1.16}
                begin{document}
                begin{tikzpicture}
                begin{axis}[clip mode=individual,
                ybar = 1.5mm,
                ymin = 0,
                ymax = 300,
                set layers = true,
                axis on top = true,
                symbolic x coords = {Blub, Blab, Blop},
                ymajorgrids = true,
                nodes near coords,
                nodes near coords align = {vertical},
                nodes near coords style = {text=black},
                every node near coord/.append style={rotate=90, anchor=west,
                font=footnotesize},
                scatter/@pre marker code/.append code={pgfplotsonlayer{axis foreground}},
                scatter/@post marker code/.append code={endpgfplotsonlayer}
                ]
                addplot coordinates {(Blab,180) (Blop,180) (Blub,180)};%
                end{axis}
                end{tikzpicture}
                end{document}


                enter image description here



                As you can see, the grid lines run in front of the bars but behind the nodes near coords.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered 5 hours ago









                marmotmarmot

                115k5146277




                115k5146277






























                    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%2f483585%2fpgfplots-axis-on-top-will-cross-out-ybar-value-nodes%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

                    Can't compile dgruyter and caption packagesLaTeX templates/packages for writing a patent specificationLatex...

                    Schneeberg (Smreczany) Bibliografia | Menu...

                    Hans Bellmer Spis treści Życiorys | Upamiętnienie | Przypisy | Bibliografia | Linki zewnętrzne |...